上报最低价流程对齐原型/原生 + 接桥
toast改感谢您的反馈/D校验文案/提交失败解析后端detail/模拟键盘补小数点后2位上限/取消改closePage真返回/上报记录入口接SGBridge.navigate(reportRecords)/头部未读红点默认隐藏 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
+19
-9
@@ -526,7 +526,7 @@ body.transitioning-tab { /* no animation */ }
|
||||
<button class="hist-header-back" type="button" onclick="goBackToProfile()" aria-label="返回我的页面">
|
||||
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M15 6L9 12L15 18" stroke="#1A1A1A" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/></svg>
|
||||
</button>
|
||||
<button class="hist-header-reports" type="button" onclick="go('reports')" aria-label="查看上报记录">上报记录<span class="hist-header-reports-dot"></span></button>
|
||||
<button class="hist-header-reports" type="button" onclick="goReports()" aria-label="查看上报记录">上报记录<span class="hist-header-reports-dot" style="display:none"></span></button>
|
||||
<div class="hist-header-title">比价记录</div>
|
||||
<div class="hist-header-search" onclick="enterSearchMode()" role="button" aria-label="搜索">
|
||||
<svg width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="#1A1A1A" stroke-width="2.2" stroke-linecap="round">
|
||||
@@ -626,7 +626,7 @@ body.transitioning-tab { /* no animation */ }
|
||||
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="#1A1A1A" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round"><path d="M15 18l-6-6 6-6"/></svg>
|
||||
</div>
|
||||
<div class="fb-page-title">上报更低价</div>
|
||||
<button class="fb-page-reports" type="button" onclick="go('reports')" aria-label="查看上报记录">上报记录<span class="fb-page-reports-dot"></span></button>
|
||||
<button class="fb-page-reports" type="button" onclick="goReports()" aria-label="查看上报记录">上报记录<span class="fb-page-reports-dot" style="display:none"></span></button>
|
||||
</div>
|
||||
|
||||
<div class="fb-page-body">
|
||||
@@ -1073,6 +1073,13 @@ function navigateStub(id) {
|
||||
window.go = navigateStub;
|
||||
window.goBack = function() { console.log('[nav stub] goBack'); };
|
||||
|
||||
// 「上报记录」入口:App 内经原生桥跳上报记录页(REPORT_RECORDS);浏览器预览(无原生 navigate)走 mock。
|
||||
function goReports() {
|
||||
if (window.SGBridge && SGBridge.navigate) { SGBridge.navigate('reportRecords'); }
|
||||
else { go('reports'); }
|
||||
}
|
||||
window.goReports = goReports;
|
||||
|
||||
// ========== 筛选 tab ==========
|
||||
function onFilterClick(tab) {
|
||||
if (document.querySelector('.device').classList.contains('logged-out')) { onEmptyLogin(); return; }
|
||||
@@ -1429,7 +1436,7 @@ function enterSelectMode() {
|
||||
|
||||
// 取消上报:深链(从「我的」进入)则返回「我的」,否则仅退出选择态停留在记录页
|
||||
function cancelSelect() {
|
||||
if (cameFromProfile) { go('profile'); return; }
|
||||
if (cameFromProfile) { goBackToProfile(); return; }
|
||||
exitSelectMode();
|
||||
}
|
||||
|
||||
@@ -1548,8 +1555,9 @@ document.querySelectorAll('.fb-key').forEach(function(key) {
|
||||
if (v.indexOf('.') === -1) input.value = v + '.';
|
||||
} else {
|
||||
// 数字键
|
||||
if (v === '0' && k !== '.') input.value = k; // 替代前导 0
|
||||
else input.value = v + k;
|
||||
var next = (v === '0') ? k : v + k; // 替代前导 0
|
||||
var dot = next.indexOf('.');
|
||||
if (!(dot >= 0 && next.length - dot - 1 > 2)) input.value = next; // 小数点后最多 2 位
|
||||
}
|
||||
refreshSubmitBtn();
|
||||
});
|
||||
@@ -1669,7 +1677,7 @@ async function submitFeedback() {
|
||||
// 校验:上报价(元)必须 < 原最低价(bestPriceCents/100),否则拦下
|
||||
var bestYuan = (selectedRecord.bestPriceCents != null) ? selectedRecord.bestPriceCents / 100 : null;
|
||||
if (bestYuan != null && !(priceYuan < bestYuan)) {
|
||||
showToast('要比原价更低才能上报');
|
||||
showToast('上报价需低于原最低价 ¥' + bestYuan.toFixed(2));
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -1691,7 +1699,7 @@ async function submitFeedback() {
|
||||
closeFeedbackSheet();
|
||||
exitSelectMode();
|
||||
resetSelectedFiles();
|
||||
setTimeout(function () { showToast('反馈已提交,等待审核'); }, 220);
|
||||
setTimeout(function () { showToast('感谢您的反馈'); }, 220);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -1731,9 +1739,11 @@ async function submitFeedback() {
|
||||
closeFeedbackSheet();
|
||||
exitSelectMode();
|
||||
resetSelectedFiles();
|
||||
setTimeout(function () { showToast('反馈已提交,等待审核'); }, 220);
|
||||
setTimeout(function () { showToast('感谢您的反馈'); }, 220);
|
||||
} else {
|
||||
showToast('提交失败(' + res.status + '),请稍后再试');
|
||||
var detail = '';
|
||||
try { var j = await res.json(); detail = (j && j.detail) ? j.detail : ''; } catch (e) {}
|
||||
showToast(detail || ('提交失败(' + res.status + '),请稍后再试'));
|
||||
}
|
||||
} catch (e) {
|
||||
showToast('网络异常,提交失败');
|
||||
|
||||
Reference in New Issue
Block a user