From 668fc62ed7fa383b3b9fb35acb3baba89ff5c770 Mon Sep 17 00:00:00 2001
From: dongyukun <1208714201@qq.com>
Date: 星期三, 11 六月 2025 14:28:46 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StSuggestSnapshotRecordServiceImpl.java |   39 +++++++++++++++++++++++++++++++++------
 1 files changed, 33 insertions(+), 6 deletions(-)

diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StSuggestSnapshotRecordServiceImpl.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StSuggestSnapshotRecordServiceImpl.java
index 3b32892..c316e4d 100644
--- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StSuggestSnapshotRecordServiceImpl.java
+++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StSuggestSnapshotRecordServiceImpl.java
@@ -21,7 +21,9 @@
 import com.iailab.module.model.common.utils.DateUtils;
 import com.iailab.module.model.mcs.pre.service.MmItemResultService;
 import com.iailab.module.model.mcs.sche.dao.StSuggestSnapshotRecordDao;
+import com.iailab.module.model.mcs.sche.entity.StScheduleSuggestEntity;
 import com.iailab.module.model.mcs.sche.entity.StSuggestSnapshotRecordEntity;
+import com.iailab.module.model.mcs.sche.service.StScheduleSuggestService;
 import com.iailab.module.model.mcs.sche.service.StSuggestSnapshotConfDetService;
 import com.iailab.module.model.mcs.sche.service.StSuggestSnapshotConfMainService;
 import com.iailab.module.model.mcs.sche.service.StSuggestSnapshotRecordService;
@@ -35,10 +37,7 @@
 
 import java.time.LocalDateTime;
 import java.time.ZoneId;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-import java.util.UUID;
+import java.util.*;
 
 import static com.iailab.module.model.common.utils.DateUtils.DATE_TIME_PATTERN;
 
@@ -61,13 +60,14 @@
     @Autowired
     private MmItemResultService mmItemResultService;
 
-
-
     @Autowired
     private StSuggestSnapshotConfMainService stSuggestSnapshotConfMainService;
 
     @Autowired
     private StSuggestSnapshotConfDetService stSuggestSnapshotConfDetService;
+
+    @Autowired
+    private StScheduleSuggestService stScheduleSuggestService;
 
     @Override
     @DSTransactional(rollbackFor = Exception.class)
@@ -124,6 +124,9 @@
             snapshotRecordSaveReqVO.setDataName(confDet.getDataName());
             snapshotRecordSaveReqVO.setScheduleTime(scheduleTime);
             snapshotRecordSaveReqVO.setSort(confDet.getSort());
+            snapshotRecordSaveReqVO.setLimitH(confDet.getLimitH());
+            snapshotRecordSaveReqVO.setLimitL(confDet.getLimitL());
+            snapshotRecordSaveReqVO.setSort(confDet.getSort());
             //计算开始时间,开始时间为当前调度时间减去快照配置表配置的左侧时间长度
             LocalDateTime localStartDateTime =  scheduleTime.toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime().minusMinutes(confDet.getLeftLength() ==  null ? 60 : confDet.getLeftLength());
             Date startTime = Date.from(localStartDateTime.atZone(ZoneId.systemDefault()).toInstant());
@@ -138,6 +141,7 @@
 
     @Override
     public List<StSuggestSnapshotRecordRespVO> getChartData(List<StSuggestSnapshotRecordRespVO> reqList) {
+        Map<String,StScheduleSuggestEntity> suggestInfos = new HashMap<>(reqList.size());
         reqList.forEach(item -> {
             List<Object[]> dataList = new ArrayList<>();
             if(DataCategoryEnum.DATAPOINT.getCode().equals(item.getDataType())){
@@ -191,6 +195,29 @@
             }
             item.setDataList(dataList);
 
+//             越界时间
+//            if (!CollectionUtils.isEmpty(dataList)) {
+//                List<String> overLimitTimes = new ArrayList<>();
+//                dataList.forEach(data -> {
+//                    BigDecimal value = new BigDecimal(data[1].toString());
+//                    if ((item.getLimitH() != null &&value.compareTo(item.getLimitH()) >= 0) || (item.getLimitL() != null && value.compareTo(item.getLimitL()) <= 0)) {
+//                        overLimitTimes.add(data[0].toString());
+//                    }
+//                });
+//                item.setOverLimitTimes(overLimitTimes);
+//            }
+
+            // 建议处理时间
+            String suggestId = item.getSuggestId();
+            StScheduleSuggestEntity suggestInfo;
+            if (suggestInfos.containsKey(suggestId)) {
+                suggestInfo = suggestInfos.get(suggestId);
+            }else {
+                suggestInfo = stScheduleSuggestService.getInfo(suggestId);
+                suggestInfos.put(suggestId,suggestInfo);
+            }
+            item.setStatus(suggestInfo.getStatus());
+            item.setHandleTime(suggestInfo.getHandleTime());
         });
         return reqList;
     }

--
Gitblit v1.9.3