From cdea0d3b6412b5d81eea26add488f0a8caa83f6a Mon Sep 17 00:00:00 2001
From: liriming <1343021927@qq.com>
Date: 星期三, 23 四月 2025 13:31:17 +0800
Subject: [PATCH] RunMachineStateTask

---
 shasteel-biz/src/main/java/com/iailab/module/shasteel/mq/consumer/ModelAlarmConsumer.java |   10 ++++++++--
 1 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/shasteel-biz/src/main/java/com/iailab/module/shasteel/mq/consumer/ModelAlarmConsumer.java b/shasteel-biz/src/main/java/com/iailab/module/shasteel/mq/consumer/ModelAlarmConsumer.java
index 53bb9d4..abde570 100644
--- a/shasteel-biz/src/main/java/com/iailab/module/shasteel/mq/consumer/ModelAlarmConsumer.java
+++ b/shasteel-biz/src/main/java/com/iailab/module/shasteel/mq/consumer/ModelAlarmConsumer.java
@@ -94,6 +94,12 @@
         log.info("已全部预测完成,清空finishModuleMap");
         ModelPredictFinishConsumer.finishModuleMap.clear();
 
+        if (!ModelPredictFinishConsumer.finishAlarmMap.contains(predictTime.getTime())) {
+            log.info("已全部预测完成,预警消息为空");
+            return;
+        }
+        ModelPredictFinishConsumer.finishAlarmMap.clear();
+
         log.info("查找需要执行的调度方案");
         List<StScheduleSchemeDTO> scheduleSchemeList = mcsApi.listScheduleScheme(ScheduleTriggerMethodEnum.EVENT.getCode(), routingKey);
         if (CollectionUtils.isEmpty(scheduleSchemeList)) {
@@ -313,14 +319,14 @@
             log.info(title + "content为空");
             return;
         }
-        if (adjustObj == null || StringUtils.isBlank(adjustObj.toString()) || "0".equals(adjustObj.toString())) {
+        if (!title.contains("预警") && (adjustObj == null || StringUtils.isBlank(adjustObj.toString()) || "0".equals(adjustObj.toString()))) {
             log.info(title + "调整值为空,不产生建议");
             return;
         }
         BigDecimal adjustValue = new BigDecimal(adjustObj.toString());
         if (gasAdjustMode.containsKey(scheduleObj) && gasAdjustMode.get(scheduleObj).equals(adjustValue.compareTo(BigDecimal.ZERO)) &&
                 gasLastSugTime.containsKey(scheduleObj) && (scheduleTime.getTime() - gasLastSugTime.get(scheduleObj).getTime() <= Integer.valueOf(adjustRate).longValue() * 60 * 1000)) {
-            log.info("调整建议在有效期内");
+            log.info(title + "调整建议在有效期内");
             return;
         }
         gasAdjustMode.put(scheduleObj, adjustValue.compareTo(BigDecimal.ZERO));

--
Gitblit v1.9.3