docs: 精简档口入库码原型状态筛选 (#225)
This commit is contained in:
@@ -194,48 +194,6 @@
|
||||
|
||||
.toolbar-actions { margin-left: auto; }
|
||||
|
||||
.summary {
|
||||
flex: 0 0 auto;
|
||||
display: flex;
|
||||
align-items: stretch;
|
||||
gap: 8px;
|
||||
min-height: 52px;
|
||||
}
|
||||
|
||||
.summary-card {
|
||||
min-width: 112px;
|
||||
display: grid;
|
||||
grid-template-columns: auto 1fr;
|
||||
align-content: center;
|
||||
gap: 2px 8px;
|
||||
padding: 7px 10px;
|
||||
border: 1px solid var(--border);
|
||||
border-radius: 4px;
|
||||
background: #fff;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.summary-card:hover { border-color: #aeb7c2; }
|
||||
.summary-card.active { border-color: var(--primary); box-shadow: inset 0 -2px 0 var(--primary); }
|
||||
.summary-card strong { grid-row: 1 / span 2; align-self: center; font-size: 20px; }
|
||||
.summary-card span { color: #444; }
|
||||
.summary-card small { color: var(--muted); }
|
||||
.summary-card.warning strong { color: var(--warning); }
|
||||
.summary-card.danger strong { color: var(--danger); }
|
||||
.summary-card.success strong { color: var(--success); }
|
||||
|
||||
.summary-note {
|
||||
flex: 1 1 auto;
|
||||
min-width: 200px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: flex-end;
|
||||
padding: 0 4px;
|
||||
color: var(--muted);
|
||||
text-align: right;
|
||||
font-size: 13px;
|
||||
}
|
||||
|
||||
.table-wrap {
|
||||
flex: 1 1 auto;
|
||||
min-height: 180px;
|
||||
@@ -382,8 +340,6 @@
|
||||
|
||||
@media (max-width: 1100px) {
|
||||
.nav { overflow-x: auto; }
|
||||
.summary { overflow-x: auto; }
|
||||
.summary-note { display: none; }
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
@@ -445,28 +401,6 @@
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section class="summary" aria-label="当前记录状态汇总">
|
||||
<button type="button" class="summary-card active" data-summary-filter="all">
|
||||
<strong id="count-all">0</strong><span>全部</span><small>本次导入</small>
|
||||
</button>
|
||||
<button type="button" class="summary-card" data-summary-filter="pending">
|
||||
<strong id="count-pending">0</strong><span>待匹配</span><small>等待确定性匹配</small>
|
||||
</button>
|
||||
<button type="button" class="summary-card" data-summary-filter="ready">
|
||||
<strong id="count-ready">0</strong><span>可回写</span><small>允许勾选</small>
|
||||
</button>
|
||||
<button type="button" class="summary-card success" data-summary-filter="updated">
|
||||
<strong id="count-updated">0</strong><span>已回写</span><small>远端复核成功</small>
|
||||
</button>
|
||||
<button type="button" class="summary-card warning" data-summary-filter="needs_check">
|
||||
<strong id="count-needs_check">0</strong><span>需核对</span><small>结果未知,不重试</small>
|
||||
</button>
|
||||
<button type="button" class="summary-card danger" data-summary-filter="problem">
|
||||
<strong id="count-problem">0</strong><span>其他未完成</span><small>已跳过 / 失败</small>
|
||||
</button>
|
||||
<div class="summary-note">业务键:日期 + 订单号 + 档口及货号 + 标准化颜色尺码</div>
|
||||
</section>
|
||||
|
||||
<section class="table-wrap" role="region" aria-label="档口入库码记录列表" tabindex="0">
|
||||
<table>
|
||||
<thead>
|
||||
@@ -492,6 +426,7 @@
|
||||
|
||||
<footer class="statusbar">
|
||||
<span id="status-message" class="status-message" role="status" aria-live="polite">已加载演示数据,可以先点击“匹配顺运宝商品”。</span>
|
||||
<span id="summary-counts">共 0 条,可回写 0 条,需核对 0 条</span>
|
||||
<span id="visible-count">当前显示 0 条</span>
|
||||
<span>第 1 / 1 页</span>
|
||||
<nav class="pagination" aria-label="分页"><span>首页</span><span>上一页</span><span>下一页</span><span>末页</span></nav>
|
||||
@@ -674,12 +609,8 @@
|
||||
}
|
||||
|
||||
function updateCounts() {
|
||||
document.querySelector("#count-all").textContent = records.length;
|
||||
document.querySelector("#count-pending").textContent = count("pending");
|
||||
document.querySelector("#count-ready").textContent = count("ready");
|
||||
document.querySelector("#count-updated").textContent = count("updated");
|
||||
document.querySelector("#count-needs_check").textContent = count("needs_check");
|
||||
document.querySelector("#count-problem").textContent = count("skipped") + count("failed");
|
||||
document.querySelector("#summary-counts").textContent =
|
||||
`共 ${records.length} 条,可回写 ${count("ready")} 条,需核对 ${count("needs_check")} 条`;
|
||||
}
|
||||
|
||||
function updateSelection() {
|
||||
@@ -709,9 +640,6 @@
|
||||
|
||||
function setFilter(state) {
|
||||
statusFilter.value = state;
|
||||
document.querySelectorAll("[data-summary-filter]").forEach(card => {
|
||||
card.classList.toggle("active", card.dataset.summaryFilter === state);
|
||||
});
|
||||
render();
|
||||
}
|
||||
|
||||
@@ -861,10 +789,6 @@
|
||||
keyword.focus();
|
||||
});
|
||||
|
||||
document.querySelectorAll("[data-summary-filter]").forEach(card => {
|
||||
card.addEventListener("click", () => setFilter(card.dataset.summaryFilter));
|
||||
});
|
||||
|
||||
document.querySelectorAll(".nav a").forEach(link => {
|
||||
if (!link.classList.contains("active")) {
|
||||
link.addEventListener("click", event => {
|
||||
|
||||
Reference in New Issue
Block a user