历史测试说明。2026-09-24 已删除告警表的设备名称、设备类型及处理时间/人/备注列; 当前迁移、验证与回滚见
docs/alarm-column-removal-2026-09-24.md。设备展示信息从台账关联获取。
首先在数据库中执行 alarm_data_table.sql 文件,创建报警数据表:
-- 报警数据表
CREATE TABLE IF NOT EXISTS `alarm_data` (
`id` varchar(64) NOT NULL COMMENT '主键',
`device_code` varchar(255) DEFAULT NULL COMMENT '设备编码',
`warning_type` varchar(100) DEFAULT NULL COMMENT '预警类型',
`warning_code` varchar(100) DEFAULT NULL COMMENT '预警编码',
`warning_value` decimal(10,2) DEFAULT NULL COMMENT '预警阈值',
`actual_value` decimal(10,2) DEFAULT NULL COMMENT '实际值',
`alarm_status` int(1) DEFAULT 0 COMMENT '报警状态 0-未处理 1-已处理',
`alarm_time` datetime DEFAULT NULL COMMENT '报警时间',
`remark` text COMMENT '备注',
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`),
KEY `idx_device_code` (`device_code`),
KEY `idx_alarm_status` (`alarm_status`),
KEY `idx_alarm_time` (`alarm_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='报警数据表';
启动 zk-api-service 服务。
GET /alarmTest/simulateManhole
模拟井盖设备采集数据,会随机生成温度和倾斜角度,超过阈值时自动创建报警记录。
GET /alarmTest/simulateGas
模拟可燃气体设备采集数据,会随机生成温度、湿度和气体浓度,超过阈值时自动创建报警记录。
GET /alarmTest/simulateEnvironment
模拟环境设备采集数据,会随机生成温度和湿度,超过阈值时自动创建报警记录。
POST /alarmTest/customAlarm
Content-Type: application/json
{
"deviceCode": "CUSTOM-001",
"warningType": "自定义预警",
"warningCode": "WARN-CUSTOM",
"warningValue": 100,
"actualValue": 150,
"remark": "自定义测试报警"
}
GET /alarmData/findByPage?pageNum=1&pageSize=10
分页查询报警数据。
POST /alarmData/handle
Content-Type: application/json
{
"id": "报警记录ID"
}
对于其他服务(audio-service, firefighting-pressure-service, radar-service, telemetry-service, water-level-service),可以按照以下步骤集成:
AlarmUtil.java 工具类(参考已有的实现)AlarmUtil