From 9c2c69722516be3b593f141486c8a71d80147e8c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E6=99=93=E4=B8=9C?= <17363321594@163.com> Date: Fri, 24 Oct 2025 09:41:31 +0800 Subject: [PATCH] =?UTF-8?q?=E7=83=98=E6=96=99=E6=88=BF=E6=B5=8B=E8=AF=95?= =?UTF-8?q?=E7=89=885?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../collect/AutoCollectService.java | 82 ++++++++++--------- 1 file changed, 42 insertions(+), 40 deletions(-) diff --git a/shgx-dryingroom/src/main/java/com/shgx/dryingroom/collect/AutoCollectService.java b/shgx-dryingroom/src/main/java/com/shgx/dryingroom/collect/AutoCollectService.java index 155f640..6fd7903 100644 --- a/shgx-dryingroom/src/main/java/com/shgx/dryingroom/collect/AutoCollectService.java +++ b/shgx-dryingroom/src/main/java/com/shgx/dryingroom/collect/AutoCollectService.java @@ -102,7 +102,7 @@ public class AutoCollectService { // 生成露点数据 DryMonitoringData data1 = generateMonitoringData(equipCode, alarmEquipCodes.contains(equipCode), collectTime, "DEW"); monitoringDataMapper.insert(data1); - judgeAlarm(data1); + judgeAlarm(data1, "DEW"); log.debug("设备[{}]数据插入成功:{}(状态:{})", equipCode, data1.getDataValue(), data1.getDataStatus().equals("1") ? "报警" : "正常"); @@ -111,7 +111,7 @@ public class AutoCollectService { DryMonitoringData data2 = generateMonitoringData(equipCode, alarmEquipCodes.contains(equipCode), collectTime, "TEMP"); monitoringDataMapper.insert(data2); // 判断是否需要报警 - judgeAlarm(data2); + judgeAlarm(data2, "TEMP"); insertSuccess++; log.debug("设备[{}]数据插入成功:{}(状态:{})", equipCode, data2.getDataValue(), @@ -259,7 +259,7 @@ public class AutoCollectService { /** * 判断是否报警 */ - private void judgeAlarm(DryMonitoringData data) { + private void judgeAlarm(DryMonitoringData data, String paramCode) { LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); // 查询该设备规则列表 @@ -271,43 +271,45 @@ public class AutoCollectService { DryAlarmLog log = new DryAlarmLog(); // 循环规则列表 for (DryParamThreshold threshold : list) { - if (parseThresholdValue(threshold.getMaxValue()) < parseThresholdValue(data.getDataValue())) { - // 插入报警日志 - log.setAlarmType("1"); - log.setEquipmentCode(data.getEquipmentCode()); - log.setParamCode(threshold.getParamCode()); - log.setAlarmValue(data.getDataValue()); - log.setAlarmTime(LocalDateTime.now()); - log.setAlarmStatus("0"); - log.setCreateBy("shgx"); - log.setCreateTime(DateUtils.getNowDate()); - logMapper.insert(log); - // 修改设备状态 - updateWrapper.eq(DryEquipmentInfo::getEquipmentCode, data.getEquipmentCode()) - .set(DryEquipmentInfo::getStatus, '2'); - equipmentInfoMapper.update(updateWrapper); - // MQTT向报警灯发送报警 - alarmLightService.turnOnAll(); - } - if (parseThresholdValue(threshold.getMinValue()) > parseThresholdValue(data.getDataValue())) { - // 插入报警日志 - log.setAlarmType("2"); - log.setEquipmentCode(data.getEquipmentCode()); - log.setParamCode(threshold.getParamCode()); - log.setAlarmValue(data.getDataValue()); - log.setAlarmTime(LocalDateTime.now()); - log.setAlarmStatus("0"); - log.setCreateBy("shgx"); - log.setCreateTime(DateUtils.getNowDate()); - updateWrapper.eq(DryEquipmentInfo::getEquipmentCode, data.getEquipmentCode()) - .set(DryEquipmentInfo::getStatus, '2'); - // 修改设备状态 - equipmentInfoMapper.update(updateWrapper); - logMapper.insert(log); - // MQTT向报警灯发送报警 - alarmLightService.turnOnAll(); - } else { - return; + if (threshold.getParamCode().equals(paramCode)) { + if (parseThresholdValue(threshold.getMaxValue()) < parseThresholdValue(data.getDataValue())) { + // 插入报警日志 + log.setAlarmType("1"); + log.setEquipmentCode(data.getEquipmentCode()); + log.setParamCode(threshold.getParamCode()); + log.setAlarmValue(data.getDataValue()); + log.setAlarmTime(LocalDateTime.now()); + log.setAlarmStatus("0"); + log.setCreateBy("shgx"); + log.setCreateTime(DateUtils.getNowDate()); + logMapper.insert(log); + // 修改设备状态 + updateWrapper.eq(DryEquipmentInfo::getEquipmentCode, data.getEquipmentCode()) + .set(DryEquipmentInfo::getStatus, '2'); + equipmentInfoMapper.update(updateWrapper); + // MQTT向报警灯发送报警 + alarmLightService.turnOnAll(); + } + if (parseThresholdValue(threshold.getMinValue()) > parseThresholdValue(data.getDataValue())) { + // 插入报警日志 + log.setAlarmType("2"); + log.setEquipmentCode(data.getEquipmentCode()); + log.setParamCode(threshold.getParamCode()); + log.setAlarmValue(data.getDataValue()); + log.setAlarmTime(LocalDateTime.now()); + log.setAlarmStatus("0"); + log.setCreateBy("shgx"); + log.setCreateTime(DateUtils.getNowDate()); + updateWrapper.eq(DryEquipmentInfo::getEquipmentCode, data.getEquipmentCode()) + .set(DryEquipmentInfo::getStatus, '2'); + // 修改设备状态 + equipmentInfoMapper.update(updateWrapper); + logMapper.insert(log); + // MQTT向报警灯发送报警 + alarmLightService.turnOnAll(); + } else { + return; + } } } }