HEL-157: 删除首页图表、校正主从模块并统一待审核口径

移除柱状图/折线图死代码;主从改为 480px+明细宽栏;待审核首页卡、侧栏角标与后端口径同源。

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: multica-agent <github@multica.ai>
This commit is contained in:
施工员
2026-08-26 10:09:01 +00:00
co-authored by Cursor multica-agent
parent 815b68c1fc
commit 7fb97119ba
6 changed files with 268 additions and 187 deletions
+15 -2
View File
@@ -42,8 +42,11 @@ def audit_counts(connection: sqlite3.Connection) -> dict[str, int]:
Priority mapping (aligned with current admin audit UI semantics):
- high: unresolved / needs_review match exceptions
- medium: pending bank-account registrations
- medium: pending bank-account registrations + pending manual records
- low: reserved for future low-risk queues (currently always 0)
Homepage card, sidebar badge and audit-center heading must all read this
same payload (via ``/api/admin/dashboard`` → ``audit``).
"""
high = connection.execute(
"""
@@ -55,9 +58,19 @@ def audit_counts(connection: sqlite3.Connection) -> dict[str, int]:
AND d.classification IN ('unresolved', 'needs_review')
"""
).fetchone()["n"]
medium = connection.execute(
medium_accounts = connection.execute(
"SELECT COUNT(*) AS n FROM bank_accounts WHERE status = 'pending'"
).fetchone()["n"]
medium_manuals = connection.execute(
"""
SELECT COUNT(*) AS n
FROM manual_records m
JOIN current_manual_record_decisions c ON c.record_id = m.id
JOIN manual_record_decisions d ON d.id = c.decision_id
WHERE d.state = 'pending'
"""
).fetchone()["n"]
medium = int(medium_accounts) + int(medium_manuals)
low = 0
return {
"total": int(high) + int(medium) + int(low),