feat: 飞牛NAS成本审核更新 - 新增SKU、更新价格表、清理归档及订单记录,同步auto-check改动

This commit is contained in:
12600k-rog-d4
2026-08-27 00:44:44 +08:00
parent bde60dbea0
commit a172a9bb5e
82 changed files with 1804 additions and 1180 deletions

View File

@@ -36,6 +36,18 @@ header .meta b{color:#fff;font-weight:600}
.metric{display:flex;flex-direction:column;gap:2px;padding:8px 12px;background:#f1f5f9;border-radius:8px;min-width:88px}
.metric .m-label{font-size:11px;color:#64748b}
.metric .m-value{font-size:15px;font-weight:700;color:#0f172a}
.bench{margin-top:14px;padding:12px 14px;background:#f8fafc;border-radius:10px;border:1px dashed #e2e8f0}
.bench-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;gap:10px;flex-wrap:wrap}
.bench-title{font-size:12px;font-weight:600;color:#475569;letter-spacing:.3px}
.bench-overall{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700;color:#fff}
.bench-list{display:flex;flex-direction:column;gap:6px}
.bench-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:6px 0;border-bottom:1px dashed #eef2f7}
.bench-row:last-child{border-bottom:none}
.bench-name{font-size:13px;font-weight:600;color:#0f172a;min-width:84px}
.bench-val{font-size:13px;color:#334155;font-variant-numeric:tabular-nums;min-width:96px}
.bench-tag{display:inline-block;padding:2px 8px;border-radius:6px;font-size:11px;font-weight:700;color:#fff;line-height:1.4}
.bench-ref{font-size:11px;color:#64748b;flex:1;min-width:0}
.bench-note{font-size:11px;color:#94a3b8;margin-top:4px;line-height:1.5}
.chart-box{position:relative;height:260px;margin-top:6px}
details.output{margin-top:14px;border-top:1px dashed #e2e8f0;padding-top:10px}
details.output summary{cursor:pointer;font-size:12px;color:#64748b;user-select:none}
@@ -84,6 +96,33 @@ function buildCard(card,idx){
card.metrics.forEach(function(x){h+='<div class="metric"><span class="m-label">'+esc(x.label)+'</span><span class="m-value">'+esc(x.value)+'</span></div>';});
h+='</div>';
}
if(card.benchmarks&&card.benchmarks.length){
var overall=card.overall_level?card.overall_level:'';
var overallText=card.overall_text||'';
var overallColor=card.overall_color||'#64748b';
h+='<div class="bench">';
h+='<div class="bench-head"><span class="bench-title">基准评估(参考消费/主流企业级硬件)</span>';
if(overall){h+='<span class="bench-overall" style="background:'+overallColor+'" title="综合评级(各项最差)">综合: '+esc(overallText)+'</span>';}
h+='</div>';
h+='<div class="bench-list">';
card.benchmarks.forEach(function(b){
h+='<div class="bench-row">';
h+='<span class="bench-name">'+esc(b.label)+'</span>';
h+='<span class="bench-val">'+esc(b.value)+'</span>';
h+='<span class="bench-tag" style="background:'+esc(b.level_color)+'">'+esc(b.level_text)+'</span>';
h+='<span class="bench-ref">'+esc(b.reference)+'</span>';
h+='</div>';
});
h+='</div>';
// 备注合并:去重后展示
var notes={};
card.benchmarks.forEach(function(b){if(b.note)notes[b.note]=1;});
var noteArr=Object.keys(notes);
if(noteArr.length){
h+='<div class="bench-note">说明: '+esc(noteArr.join(' · '))+'</div>';
}
h+='</div>';
}
if(card.chart){h+='<div class="chart-box"><canvas id="c'+idx+'"></canvas></div>';}
if(card.output&&card.status!=='pass'){
h+='<details class="output"><summary>详细输出</summary><pre>'+esc(card.output)+'</pre></details>';