From 36527d033f9f860c01d524b68712bc41a3450e37 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=94=B2=E8=BE=B0=E7=94=9F=E4=BA=A7?= Date: Sat, 11 Apr 2026 20:47:15 +0800 Subject: [PATCH] =?UTF-8?q?=E5=85=A8=E5=B1=80=E7=BB=9F=E8=AE=A1=E3=80=81?= =?UTF-8?q?=E6=8C=89=E4=BB=B7=E6=A0=BC=E6=8E=92=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/pages/News.jsx | 30 +++++++++++++++++++++--------- 1 file changed, 21 insertions(+), 9 deletions(-) diff --git a/frontend/src/pages/News.jsx b/frontend/src/pages/News.jsx index b32057d..667ae43 100644 --- a/frontend/src/pages/News.jsx +++ b/frontend/src/pages/News.jsx @@ -496,10 +496,6 @@ export default function News() { else if (serial.startsWith('J1')) version = '马钞' else if (serial.startsWith('J3')) version = '蛇钞' if (version !== dealVersion) return false - if (dealDate) { - const itemDate = item.deal_date || '' - if (!itemDate.startsWith(dealDate)) return false - } return true }) @@ -552,10 +548,25 @@ export default function News() { - {categories.map(cat => { - const rowData = packagings.map(pkg => calcAvg(pkg, cat)) - const hasData = rowData.some(d => d !== null) - if (!hasData) return null + {(() => { + // 计算每个分类的平均价格 + const catAvg = categories.map(cat => { + const prices = [] + packagings.forEach(pkg => { + const d = calcAvg(pkg, cat) + if (d) prices.push(d.avg) + }) + const avg = prices.length > 0 ? Math.round(prices.reduce((a,b) => a+b, 0) / prices.length) : 0 + return { cat, avg } + }).filter(c => c.avg > 0) + // 按平均价格从低到高排序 + catAvg.sort((a, b) => a.avg - b.avg) + const sortedCats = catAvg.map(c => c.cat) + + return sortedCats.map(cat => { + const rowData = packagings.map(pkg => calcAvg(pkg, cat)) + const hasData = rowData.some(d => d !== null) + if (!hasData) return null return ( {cat} @@ -572,7 +583,8 @@ export default function News() { ))} ) - })} + }) + })()}