feat(bid): 新增投标报表统计分析模块
本次提交新增了完整的投标报表统计分析功能,包括: 添加用于数据检查与菜单初始化的 SQL 脚本 实现采购概览仪表板、采购成本分析及供应商绩效报告的后端服务、Mapper、Controller 及 VO 类 添加前端 API、路由配置以及使用 ECharts 可视化图表的页面组件 为仪表板添加通用的 KPI 卡片组件
This commit is contained in:
15
sql/check_data.sql
Normal file
15
sql/check_data.sql
Normal file
@@ -0,0 +1,15 @@
|
||||
SELECT '=== 供应商评价 ===' AS info;
|
||||
SELECT e.*, s.supplier_name
|
||||
FROM biz_supplier_evaluation e
|
||||
LEFT JOIN biz_supplier s ON e.supplier_id = s.supplier_id;
|
||||
|
||||
SELECT '=== 报价状态分布 ===' AS info;
|
||||
SELECT status, COUNT(*) FROM biz_quotation GROUP BY status;
|
||||
|
||||
SELECT '=== 供应商报价参与统计 ===' AS info;
|
||||
SELECT q.supplier_id, s.supplier_name, COUNT(*) AS cnt,
|
||||
SUM(CASE WHEN q.status='accepted' THEN 1 ELSE 0 END) AS accepted_cnt
|
||||
FROM biz_quotation q
|
||||
LEFT JOIN biz_supplier s ON q.supplier_id = s.supplier_id
|
||||
GROUP BY q.supplier_id, s.supplier_name
|
||||
ORDER BY q.supplier_id;
|
||||
19
sql/report_menu.sql
Normal file
19
sql/report_menu.sql
Normal file
@@ -0,0 +1,19 @@
|
||||
-- ═══════════════════════════════════════════════════════════════════
|
||||
-- 统计分析模块 — 菜单 SQL(正确ID版本)
|
||||
-- ═══════════════════════════════════════════════════════════════════
|
||||
|
||||
-- 父菜单:统计分析 (2019)
|
||||
INSERT IGNORE INTO sys_menu(menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time)
|
||||
VALUES(2019, '统计分析', 2000, 11, 'report', NULL, 1, 0, 'M', '0', '0', 'bid:report:list', 'chart', 'admin', NOW());
|
||||
|
||||
-- 子菜单:采购总览看板 (2020)
|
||||
INSERT IGNORE INTO sys_menu(menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time)
|
||||
VALUES(2020, '采购总览看板', 2019, 1, 'dashboard', 'bid/report/dashboard', 1, 0, 'C', '0', '0', 'bid:report:dashboard', 'dashboard', 'admin', NOW());
|
||||
|
||||
-- 子菜单:采购成本分析 (2021)
|
||||
INSERT IGNORE INTO sys_menu(menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time)
|
||||
VALUES(2021, '采购成本分析', 2019, 2, 'cost', 'bid/report/cost', 1, 0, 'C', '0', '0', 'bid:report:cost', 'money', 'admin', NOW());
|
||||
|
||||
-- 子菜单:供应商绩效 (2022)
|
||||
INSERT IGNORE INTO sys_menu(menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time)
|
||||
VALUES(2022, '供应商绩效', 2019, 3, 'supplier', 'bid/report/supplier', 1, 0, 'C', '0', '0', 'bid:report:supplier', 'star', 'admin', NOW());
|
||||
Reference in New Issue
Block a user