- 在 AddLedgerLineMapper.xml 中添加 lineInterval 字段映射 - 在 AddLedgerLinePathVO 中添加 lineInterval 属性用于存储统计间隔 - 为稳态趋势查询服务添加详细的执行日志记录和性能监控 - 重构 InfluxDB 查询组件,添加诊断信息构建方法和异常处理 - 限制谐波次数最大展示数量从 6 个调整为 3 个 - 新增数据校验相关组件、控制器和服务实现 - 实现数据连续性检查和缺失数据统计功能 - 添加数据校验查询参数和返回结果的数据结构定义 - 完善相关单元测试确保功能正确性
add-ledger 模块说明
模块定位
add-ledger 是 tools 下的数据台账配置工具模块,当前基于 ledger.sql 中的工程、项目、设备、监测点和台账树表结构,提供后端配置接口。
本次范围不包含:
- 前端真实页面代码
- 自动执行 SQL 初始化
- 自动数据库迁移
- 设备通信、WebSocket 或 Netty 链路改造
目录中的 ledger.sql 仅作为原始表结构脚本保留,当前模块不加载、不解析该脚本。
当前结构
add-ledger/
├── ledger.sql
├── pom.xml
├── README.md
├── src/main/java/com/njcn/gather/tool/addledger/
│ ├── component/
│ ├── config/
│ ├── controller/
│ ├── mapper/
│ ├── pojo/
│ ├── service/
│ └── util/
└── src/main/resources/sql/add-ledger/
当前接口
完整调试说明见 API_DEBUG.md。
GET /addLedger/tree- 查询台账树,支持按节点名称关键字过滤。
GET /addLedger/detail- 根据
id和level查询工程、项目、设备或测点详情。
- 根据
POST /addLedger/engineering/save- 新增或保存工程,并同步
cs_ledger工程节点。
- 新增或保存工程,并同步
POST /addLedger/project/save- 新增或保存项目,并同步
cs_ledger项目节点。
- 新增或保存项目,并同步
POST /addLedger/equipment/save- 新增或保存设备,并同步
cs_ledger设备节点。
- 新增或保存设备,并同步
POST /addLedger/line/save- 新增或保存测点,并同步
cs_ledger测点节点。
- 新增或保存测点,并同步
GET /addLedger/line/availableLineNos- 查询设备下
1-20中可用的线路号。
- 查询设备下
DELETE /addLedger/node- 软删除指定节点,父节点会级联软删除下级业务数据和台账节点。
实现说明
- 台账层级固定为:工程 -> 项目 -> 设备 -> 监测点。
- 新增时绑定父级节点;编辑时只更新当前业务数据和台账节点名称,不搬迁节点。
- 保存业务表和
cs_ledger在同一事务内完成。 - 设备保存时同步
associated_engineering和associated_project。 - 测点新增时生成 32 位 UUID 作为
line_id。 - 测点
line_no后端限制为1-20,且同设备下正常测点不可重复。 - 删除采用软删除:工程、项目、测点更新
status=0,设备更新run_status=0,台账节点更新State=0。
后续扩展约束
后续如果新增更多台账能力,应沿当前 controller -> service -> mapper -> XML 职责边界扩展,不回退为单一大类承载全部接口。