1.7 KiB
1.7 KiB
Checklist
- 生产库 electricity_data 现状已核对(有无表/字段/分区/数据),迁移方案据此确定
- 迁移
20261024_icc_analog_data.sql已执行到生产库:字段集(id/line_id/line_code/imei/line_name/customer_id/analog_type/analog_name/analog_unit/analog_value/collect_time,无 equip_id)正确,唯一键 (line_code, analog_type, collect_time)、按月分区(2026_10~2027_03)、索引(customer/line/time)就绪 - db_init.sql 中 electricity_data 基线定义与迁移一致
- 后端实体
electricity_data.entity.ts字段与迁移一致,映射icc_analog_mapper.ts按实际返回字段正确映射(line_code/imei/analog_type/analog_name/analog_unit/analog_value) - 同步服务
icc_analog_sync.service.ts复用 OAuth2 鉴权,先读已同步线路 line_code,分批 deviceCodes(≤50)POST 模拟量接口 pageSize=500 短页停止,collect_time 用同步时间,按 (line_code, analog_type, collect_time) 幂等 upsert,写 icc_sync_log(sync_type=electricity_data),失败仅记日志不抛 POST /api/electricity-data/sync接口可调用并返回 {pulled, inserted, updated, skipped, synced},RBAC 路由/api/electricity-data→ device:list 生效- 定时任务
icc_analog_sync(每 5 分钟*/5 * * * *)已注册:job_registry BUILTIN_JOBS + JobRuntime.syncIccAnalogs + db_seed.sql sys_job 种子幂等 - 设计文档「表结构新增及变更.md」已补充 electricity_data 新表结构及同步服务/定时任务说明
- 验证通过:tsc 编译无错误;真实同步拉取到模拟量数据入库(74 行/快照,analog_name/analog_unit 填充正确);幂等重跑正常(二次快照 148 行);无前端改动