docs(design): 澄清回滚——去图标仅限状态筛选钮,其余恢复图标形态
状态筛选钮保持纯文字无箭头;详细搜索钮/卡片图标徽章/详情 sheet 图标+文字徽章/ 卡片 › 箭头恢复上一版;+ 移除与搜索行位于 KPI 下不变 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01JJ1g8XV1YhhmHRzhwWEW7o
This commit is contained in:
@@ -29,7 +29,7 @@
|
||||
<div style="display:flex;gap:8px;align-items:stretch;margin:10px 0">
|
||||
<div class="m-search" style="flex:1;min-width:0"><svg viewBox="0 0 24 24"><use href="#i-search"/></svg><input id="q" placeholder="搜索单号 / 供应商 / 酒名" oninput="state.q=this.value;render()"></div>
|
||||
<div class="btn ghost" id="stSel" style="height:auto;flex:none" onclick="openStatusSheet()"><span id="stVal">全部</span></div>
|
||||
<div class="btn ghost" id="advBtn" style="height:auto;flex:none" onclick="openAdv()"><span id="advTxt">详细搜索</span></div>
|
||||
<div class="btn ghost" id="advBtn" style="height:auto;flex:none;padding:0 12px" onclick="openAdv()" title="详细搜索"><svg viewBox="0 0 24 24"><use href="#i-ic21"/></svg></div>
|
||||
</div>
|
||||
<div class="m-section" id="cnt">入库单</div>
|
||||
<div id="list"></div>
|
||||
@@ -56,9 +56,10 @@ const OPS=['全部','王经理','李采购'];
|
||||
const REVIEWERS=['全部','张主管','王经理'];
|
||||
const DATES=['全部时间','近 7 天','近 30 天','本月'];
|
||||
const state={q:'',status:'全部'};
|
||||
/* ---- 徽章:纯文字(2026-07-04 用户拍板移动端不用图标;.bi 抑制圆点,enhancer 跳过) ---- */
|
||||
function icoB(v){ return `<span class="badge bi b-${v}">${v}</span>`; }
|
||||
function biB(v){ return `<span class="badge bi b-${v}">${v}</span>`; }
|
||||
/* ---- 状态代表图标(移动纯图标 .ico / 图标+文字 .bi;状态筛选钮为纯文字——用户拍板) ---- */
|
||||
const STICON={'草稿':'i-ic06','待审核':'i-ic04','已审核':'i-check','已拒绝':'i-close','部分退单':'i-undo','已退单':'i-undo','待定价':'i-yen'};
|
||||
function icoB(v){ return `<span class="badge ico b-${v}" title="${v}"><svg class="ic"><use href="#${STICON[v]}"/></svg></span>`; }
|
||||
function biB(v){ return `<span class="badge bi b-${v}"><svg class="ic"><use href="#${STICON[v]}"/></svg>${v}</span>`; }
|
||||
/* ---- 详细搜索条件(与 Flutter _AdvSearchDialog 同一字段集,移动为竖排简化版) ---- */
|
||||
const ADV_DEF={no:'',product:'',batch:'',party:'全部',series:'全部',spec:'全部',op:'全部',reviewer:'全部',status:'全部',date:'全部时间'};
|
||||
let adv={...ADV_DEF};
|
||||
@@ -80,7 +81,6 @@ function render(){
|
||||
document.getElementById('stVal').textContent=state.status;
|
||||
const ss=document.getElementById('stSel');
|
||||
ss.classList.toggle('primary',state.status!=='全部'); ss.classList.toggle('ghost',state.status==='全部');
|
||||
document.getElementById('advTxt').textContent='详细搜索'+(n?' · '+n:'');
|
||||
const ab=document.getElementById('advBtn');
|
||||
ab.classList.toggle('primary',n>0); ab.classList.toggle('ghost',n===0);
|
||||
const rows=filtered();
|
||||
@@ -90,7 +90,8 @@ function render(){
|
||||
L.innerHTML=rows.map(o=>`<a class="m-card" onclick="openOrder('${o.no}')">
|
||||
<div class="m-row">
|
||||
<div class="mc-main"><div class="mc-nm">${o.no}</div><div class="mc-sub">${o.party} · ${o.items} 项</div></div>
|
||||
<div class="mc-right"><div style="display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end">${icoB(o.status)}${o.ret?icoB(o.ret):''}${o.pending?icoB('待定价'):''}</div><span class="mc-amt">${o.amount}</span></div>
|
||||
<div class="mc-right"><div style="display:flex;gap:5px">${icoB(o.status)}${o.ret?icoB(o.ret):''}${o.pending?icoB('待定价'):''}</div><span class="mc-amt">${o.amount}</span></div>
|
||||
<div class="mc-chev"><svg viewBox="0 0 24 24"><use href="#i-chevron-right"/></svg></div>
|
||||
</div>
|
||||
<div class="mc-foot"><svg width="13" height="13" viewBox="0 0 24 24" stroke-width="1.9" style="color:var(--muted)"><use href="#i-info"/></svg>${o.date} · 经手人 ${o.by}${o.auditor?' · 审核 '+o.auditor:''}</div>
|
||||
</a>`).join('');
|
||||
@@ -98,7 +99,7 @@ function render(){
|
||||
function setSt(s){ state.status=s; render(); }
|
||||
/* ---- 状态下拉(底部选项 sheet) ---- */
|
||||
function openStatusSheet(){
|
||||
openSheet('状态筛选', ST.map(s=>`<div class="m-opt ${s===state.status?'sel':''}" onclick="setSt('${s}');closeSheet()">${s}<svg class="ck" viewBox="0 0 24 24"><use href="#i-check"/></svg></div>`).join(''));
|
||||
openSheet('状态筛选', ST.map(s=>`<div class="m-opt ${s===state.status?'sel':''}" onclick="setSt('${s}');closeSheet()">${s!=='全部'?`<span class="badge ico b-${s}"><svg class="ic"><use href="#${STICON[s]}"/></svg></span>`:''}${s}<svg class="ck" viewBox="0 0 24 24"><use href="#i-check"/></svg></div>`).join(''));
|
||||
}
|
||||
|
||||
/* ==================== 详细搜索(底部 sheet,竖排单列) ==================== */
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
<div style="display:flex;gap:8px;align-items:stretch;margin:10px 0">
|
||||
<div class="m-search" style="flex:1;min-width:0"><svg viewBox="0 0 24 24"><use href="#i-search"/></svg><input id="q" placeholder="搜索单号 / 客户 / 酒名" oninput="state.q=this.value;render()"></div>
|
||||
<div class="btn ghost" id="stSel" style="height:auto;flex:none" onclick="openStatusSheet()"><span id="stVal">全部</span></div>
|
||||
<div class="btn ghost" id="advBtn" style="height:auto;flex:none" onclick="openAdv()"><span id="advTxt">详细搜索</span></div>
|
||||
<div class="btn ghost" id="advBtn" style="height:auto;flex:none;padding:0 12px" onclick="openAdv()" title="详细搜索"><svg viewBox="0 0 24 24"><use href="#i-ic21"/></svg></div>
|
||||
</div>
|
||||
<div class="m-section" id="cnt">出库单</div>
|
||||
<div id="list"></div>
|
||||
@@ -55,9 +55,10 @@ const OPS=['全部','王经理','李销售'];
|
||||
const REVIEWERS=['全部','张主管','王经理'];
|
||||
const DATES=['全部时间','近 7 天','近 30 天','本月'];
|
||||
const state={q:'',status:'全部'};
|
||||
/* ---- 徽章:纯文字(2026-07-04 用户拍板移动端不用图标;.bi 抑制圆点,enhancer 跳过) ---- */
|
||||
function icoB(v){ return `<span class="badge bi b-${v}">${v}</span>`; }
|
||||
function biB(v){ return `<span class="badge bi b-${v}">${v}</span>`; }
|
||||
/* ---- 状态代表图标(移动纯图标 .ico / 图标+文字 .bi;状态筛选钮为纯文字——用户拍板) ---- */
|
||||
const STICON={'草稿':'i-ic06','待审核':'i-ic04','已审核':'i-check','已拒绝':'i-close','部分退单':'i-undo','已退单':'i-undo','待定价':'i-yen'};
|
||||
function icoB(v){ return `<span class="badge ico b-${v}" title="${v}"><svg class="ic"><use href="#${STICON[v]}"/></svg></span>`; }
|
||||
function biB(v){ return `<span class="badge bi b-${v}"><svg class="ic"><use href="#${STICON[v]}"/></svg>${v}</span>`; }
|
||||
/* ---- 详细搜索条件(与 Flutter _AdvancedSearchDialog 同一字段集,移动为竖排简化版) ---- */
|
||||
const ADV_DEF={no:'',product:'',batch:'',party:'全部',series:'全部',spec:'全部',op:'全部',reviewer:'全部',status:'全部',date:'全部时间'};
|
||||
let adv={...ADV_DEF};
|
||||
@@ -79,7 +80,6 @@ function render(){
|
||||
document.getElementById('stVal').textContent=state.status;
|
||||
const ss=document.getElementById('stSel');
|
||||
ss.classList.toggle('primary',state.status!=='全部'); ss.classList.toggle('ghost',state.status==='全部');
|
||||
document.getElementById('advTxt').textContent='详细搜索'+(n?' · '+n:'');
|
||||
const ab=document.getElementById('advBtn');
|
||||
ab.classList.toggle('primary',n>0); ab.classList.toggle('ghost',n===0);
|
||||
const rows=filtered();
|
||||
@@ -89,7 +89,8 @@ function render(){
|
||||
L.innerHTML=rows.map(o=>`<a class="m-card" onclick="openOrder('${o.no}')">
|
||||
<div class="m-row">
|
||||
<div class="mc-main"><div class="mc-nm">${o.no}</div><div class="mc-sub">${o.party} · ${o.items} 项</div></div>
|
||||
<div class="mc-right"><div style="display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end">${icoB(o.status)}${o.ret?icoB(o.ret):''}${o.pending?icoB('待定价'):''}</div><span class="mc-amt">${o.amount}</span></div>
|
||||
<div class="mc-right"><div style="display:flex;gap:5px">${icoB(o.status)}${o.ret?icoB(o.ret):''}${o.pending?icoB('待定价'):''}</div><span class="mc-amt">${o.amount}</span></div>
|
||||
<div class="mc-chev"><svg viewBox="0 0 24 24"><use href="#i-chevron-right"/></svg></div>
|
||||
</div>
|
||||
<div class="mc-foot"><svg width="13" height="13" viewBox="0 0 24 24" stroke-width="1.9" style="color:var(--muted)"><use href="#i-info"/></svg>${o.date} · 经手人 ${o.by}${o.auditor?' · 审核 '+o.auditor:''}</div>
|
||||
</a>`).join('');
|
||||
@@ -97,7 +98,7 @@ function render(){
|
||||
function setSt(s){ state.status=s; render(); }
|
||||
/* ---- 状态下拉(底部选项 sheet) ---- */
|
||||
function openStatusSheet(){
|
||||
openSheet('状态筛选', ST.map(s=>`<div class="m-opt ${s===state.status?'sel':''}" onclick="setSt('${s}');closeSheet()">${s}<svg class="ck" viewBox="0 0 24 24"><use href="#i-check"/></svg></div>`).join(''));
|
||||
openSheet('状态筛选', ST.map(s=>`<div class="m-opt ${s===state.status?'sel':''}" onclick="setSt('${s}');closeSheet()">${s!=='全部'?`<span class="badge ico b-${s}"><svg class="ic"><use href="#${STICON[s]}"/></svg></span>`:''}${s}<svg class="ck" viewBox="0 0 24 24"><use href="#i-check"/></svg></div>`).join(''));
|
||||
}
|
||||
|
||||
/* ==================== 详细搜索(底部 sheet,竖排单列) ==================== */
|
||||
|
||||
Reference in New Issue
Block a user