- 数据库:新增迁移脚本20261011_icc_line_ledger.sql(electric_line/line_room/icc_sync_log三表、菜单61、role_menu(1,61)、定时任务icc_line_sync),同步db_seed.sql - 后端:新增ElectricLine/IccSyncLog实体、查询DTO、线路台账服务与ICC拉取同步服务、/api/electric-lines控制器,接入RBAC(device:list)与定时任务 - 前端:新增智电改造线路台账页面及路由,API封装electricLineApi - ICC同步采用本系统主动拉取模式,失败仅记日志不抛错,接口统一code/message/data格式兼容APP
1.1 KiB
1.1 KiB
Checklist
- electric_line / line_room / icc_sync_log 表存在(生产库 + db_seed.sql 一致,幂等)
- ElectricLine / IccSyncLog 实体与 DTO 实现,ElectricLine 仅 created_at(timestamps:false)
- 列表查询使用参数绑定(Op.like/Op.in),无字符串拼接 SQL
- GET /api/electric-lines:无 token 401、有 device:list 权限 200 返回 code/message/data 结构
- POST /api/electric-lines/sync:JWT+RBAC 鉴权;定时任务服务内直调
- IccLineSyncService 读 ICC_BASE_URL/ICC_TOKEN 占位配置,按 line_code upsert + 写 icc_sync_log;ICC 拉取失败记录 error 不抛业务错
- icc_line_sync 定时任务已注册(@midwayjs/cron)
- RBAC 映射含 /api/electric-lines → device:list
- 前端 /device/line 页面渲染(搜索/同步按钮/表格/分页/状态 tag),无 v-html
- 菜单 id=61 挂设备监控(4) 且 role_menu 绑定,db_seed.sql 与生产库一致
- 后端 tsc --noEmit、前端 vue-tsc -b 均通过
- 浏览器端登录后菜单可见、页面可用、同步按钮可用