From 9fd41a27093dcbf70c2a99adaf06bd15cddf6184 Mon Sep 17 00:00:00 2001
From: dongyukun <1208714201@qq.com>
Date: 星期一, 23 六月 2025 18:08:40 +0800
Subject: [PATCH] 系统运行预警

---
 shasteel-biz/src/main/java/com/iailab/module/shasteel/job/task/RunScheduleGasTask.java             |    2 +-
 shasteel-biz/src/main/java/com/iailab/module/shasteel/job/service/MessageInfoService.java          |    2 ++
 shasteel-biz/src/main/java/com/iailab/module/shasteel/job/task/RunScheduleModuleTask.java          |    4 ++--
 shasteel-biz/src/main/java/com/iailab/module/shasteel/job/service/impl/MessageInfoServiceImpl.java |   18 ++++++++++++++++++
 4 files changed, 23 insertions(+), 3 deletions(-)

diff --git a/shasteel-biz/src/main/java/com/iailab/module/shasteel/job/service/MessageInfoService.java b/shasteel-biz/src/main/java/com/iailab/module/shasteel/job/service/MessageInfoService.java
index 2cfa174..e8cf493 100644
--- a/shasteel-biz/src/main/java/com/iailab/module/shasteel/job/service/MessageInfoService.java
+++ b/shasteel-biz/src/main/java/com/iailab/module/shasteel/job/service/MessageInfoService.java
@@ -19,4 +19,6 @@
     PageResult<MessageInfoEntity> getMessagePage(Integer pageNo, Integer pageSize);
 
     void readMessage(List<String> ids);
+
+    boolean getIsSuggestKeep(String title);
 }
diff --git a/shasteel-biz/src/main/java/com/iailab/module/shasteel/job/service/impl/MessageInfoServiceImpl.java b/shasteel-biz/src/main/java/com/iailab/module/shasteel/job/service/impl/MessageInfoServiceImpl.java
index 2ae9551..bcd171e 100644
--- a/shasteel-biz/src/main/java/com/iailab/module/shasteel/job/service/impl/MessageInfoServiceImpl.java
+++ b/shasteel-biz/src/main/java/com/iailab/module/shasteel/job/service/impl/MessageInfoServiceImpl.java
@@ -8,8 +8,12 @@
 import com.iailab.module.shasteel.job.dao.MessageInfoDao;
 import com.iailab.module.shasteel.job.entity.MessageInfoEntity;
 import com.iailab.module.shasteel.job.service.MessageInfoService;
+import com.mysql.cj.util.TimeUtil;
 import org.springframework.stereotype.Service;
 
+import java.text.SimpleDateFormat;
+import java.util.Calendar;
+import java.util.Date;
 import java.util.List;
 
 @Service
@@ -37,6 +41,20 @@
     }
 
     @Override
+    public boolean getIsSuggestKeep(String title) {
+        Date currentDate = new Date();
+        Calendar calendar = Calendar.getInstance();
+        calendar.setTime(currentDate);
+        calendar.add(Calendar.MINUTE, -15);
+        Date keepDate = calendar.getTime();
+        SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        return baseDao.selectCount(new QueryWrapper<MessageInfoEntity>()
+                .ge("send_time",formatter.format(keepDate))
+                .eq("title",title)
+        ) > 0;
+    }
+
+    @Override
     public List<MessageInfoEntity> getMessageList() {
         return baseDao.selectList(new QueryWrapper<MessageInfoEntity>());
     }
diff --git a/shasteel-biz/src/main/java/com/iailab/module/shasteel/job/task/RunScheduleGasTask.java b/shasteel-biz/src/main/java/com/iailab/module/shasteel/job/task/RunScheduleGasTask.java
index 4a76ec3..e24502a 100644
--- a/shasteel-biz/src/main/java/com/iailab/module/shasteel/job/task/RunScheduleGasTask.java
+++ b/shasteel-biz/src/main/java/com/iailab/module/shasteel/job/task/RunScheduleGasTask.java
@@ -121,7 +121,7 @@
             saveScheduleSuggest("BFG应急预案", result.get("BFG_Emergency_plan"), "BFG_EMERGENCY_PLAN", predictTime, 1, scheme.getAdjustRate(), scheme.getModelId(), scheme.getId());
 
             // BFG应急预案
-            if(!Objects.equals(result.get("BFG_Emergency_plan").toString(), "")){
+            if(!Objects.equals(result.get("BFG_Emergency_plan").toString(), "")&&!messageInfoService.getIsSuggestKeep("BFG应急预案")){
                 MessageInfoEntity messageInfoEntity = new MessageInfoEntity();
                 messageInfoEntity.setTitle("BFG应急预案");
                 messageInfoEntity.setContent(mdkScheduleRespDTO.getResult().get("BFG_Emergency_plan").toString());
diff --git a/shasteel-biz/src/main/java/com/iailab/module/shasteel/job/task/RunScheduleModuleTask.java b/shasteel-biz/src/main/java/com/iailab/module/shasteel/job/task/RunScheduleModuleTask.java
index f499f46..59dfd77 100644
--- a/shasteel-biz/src/main/java/com/iailab/module/shasteel/job/task/RunScheduleModuleTask.java
+++ b/shasteel-biz/src/main/java/com/iailab/module/shasteel/job/task/RunScheduleModuleTask.java
@@ -40,7 +40,7 @@
             MdkScheduleRespDTO mdkScheduleRespDTO = mdkApi.doSchedule(dto);
             logger.info(params + "调度方案执行完成," + mdkScheduleRespDTO);
             logger.info("调度方案结果开始下发");
-            if(params.equals("shaNitrogenSos")&&Integer.parseInt(mdkScheduleRespDTO.getResult().get("adviceValues").toString())>0){
+            if(params.equals("shaNitrogenSos")&&Integer.parseInt(mdkScheduleRespDTO.getResult().get("adviceValues").toString())>0&&!messageInfoService.getIsSuggestKeep("氮气应急预案")){
                 MessageInfoEntity messageInfoEntity = new MessageInfoEntity();
                 messageInfoEntity.setTitle("氮气应急预案");
                 messageInfoEntity.setContent(mdkScheduleRespDTO.getResult().get("advice").toString());
@@ -51,7 +51,7 @@
                 messageInfoEntity.setCreateDate(new Date());
                 messageInfoService.create(messageInfoEntity);
             }
-            if(params.equals("oxygenSos")&&Integer.parseInt(mdkScheduleRespDTO.getResult().get("adviceValues").toString())>0){
+            if(params.equals("oxygenSos")&&Integer.parseInt(mdkScheduleRespDTO.getResult().get("adviceValues").toString())>0&&!messageInfoService.getIsSuggestKeep("氧气应急预案")){
                 MessageInfoEntity messageInfoEntity = new MessageInfoEntity();
                 messageInfoEntity.setTitle("氧气应急预案");
                 messageInfoEntity.setContent(mdkScheduleRespDTO.getResult().get("advice").toString());

--
Gitblit v1.9.3