tuqin
9 天以前 c35bd84886fb0c4e4ee0ffeeb3819a8a8df532b5
分支
用户 tuqin <tuqin@tuqin.cn>
星期一, 十一月 2, 2026 13:13 +0800
提交者 tuqin <tuqin@tuqin.cn>
星期一, 十一月 2, 2026 13:13 +0800
提交c35bd84886fb0c4e4ee0ffeeb3819a8a8df532b5
目录 009d5642f5c856fb2394898b915d465f436516f8 目录 | zip | gz
上一版本 de754f277f7cef20206c5f30fee6e033c426a554 查看 | 对比
feat(safety): 安全生产六期 - 风险可视化看板

把风险、隐患、作业票、培训、证书五块数据集中呈现,管理层一眼看全局。
不新增业务表,只做统计聚合。

后端:
- 新增 GET /mes/safety/dashboard/overview 聚合接口(权限 mes:safety-dashboard:query)
- 一次返回:风险总数与等级分布、风险按车间分布、隐患状态统计(含闭环率与超期数)、
隐患按车间分布、作业票状态统计(含作业超期数)、培训统计(总数/完成/进行中/
参训人次/平均分)、证书统计(有效/即将到期/已过期)、最近 5 条隐患与作业票
- 当前数据规模较小,采用全量查询 + 内存聚合,避免为每张统计写一套 SQL;
闭环率、超期、到期天数等派生指标统一在服务端算好,前端只管展示

前端:
- views/safety/dashboard:4 个核心指标卡 + 4 张图表 + 2 个概览卡 + 2 个动态表
- 图表复用项目已有的 @vben/plugins/echarts(EchartsUI + useEcharts)
- 风险等级沿用四色(重大红/较大橙/一般蓝/低绿),与字典 color_type 一致
- 超期数、已过期数用红色醒目提示

SQL(mes_safety_dashboard_init.sql,可重复执行):
- 菜单「安全看板」置于安全生产目录首位,1 个查询权限

注:本期只提交代码,未部署。
已添加5个文件
599 ■■■■■ 文件已修改
sql/mysql/mes_safety_dashboard_init.sql 33 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/safety/MesSafetyDashboardController.java 38 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/safety/vo/dashboard/MesSafetyDashboardRespVO.java 192 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/safety/MesSafetyDashboardService.java 19 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/safety/MesSafetyDashboardServiceImpl.java 317 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史