From 6001ee9b100372420feebb4e1f0ff88ae89bdd58 Mon Sep 17 00:00:00 2001
From: liriming <1343021927@qq.com>
Date: 星期三, 28 五月 2025 14:07:30 +0800
Subject: [PATCH] 备煤运行负荷折线图修改开始时间

---
 ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunCokingTraceModelBMTask.java |   68 ++++++++++++++++++++++++++++++++--
 1 files changed, 64 insertions(+), 4 deletions(-)

diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunCokingTraceModelBMTask.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunCokingTraceModelBMTask.java
index 2a9afbe..1162efe 100644
--- a/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunCokingTraceModelBMTask.java
+++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunCokingTraceModelBMTask.java
@@ -3,6 +3,8 @@
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import com.iailab.framework.common.util.date.DateUtils;
+import com.iailab.module.ansteel.coking.entity.CokingTraceChartEntity;
+import com.iailab.module.ansteel.coking.entity.CokingTraceConfEntity;
 import com.iailab.module.ansteel.coking.service.*;
 import com.iailab.module.ansteel.common.constant.CommonConstant;
 import com.iailab.module.ansteel.common.enums.TraceProcessTypeEnum;
@@ -12,10 +14,10 @@
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
+import org.springframework.util.CollectionUtils;
 
-import java.util.Calendar;
-import java.util.Date;
-import java.util.Objects;
+import java.util.*;
+import java.util.stream.Collectors;
 
 /**
  * 备煤工序异常溯源
@@ -45,6 +47,10 @@
 
     @Autowired
     private CokingTraceChartService cokingTraceChartService;
+
+    @Autowired
+    private CokingTraceConfService cokingTraceConfService;
+
 
     @Autowired
     private McsApi mcsApi;
@@ -136,7 +142,7 @@
             cokingTraceIndService.saveTraceInd(relId, indType, clock, collectStartDate, endDate);
 
             // 保存溯源折线图
-            cokingTraceChartService.save(relId, clock, indType, startDate, endDate);
+            save(relId, clock, indType, startDate, endDate);
 
         } catch (Exception ex) {
             logger.error("RunCokingTraceModelBMTask运行异常");
@@ -144,4 +150,58 @@
         }
         logger.info("RunCokingTraceModelBMTask运行完成");
     }
+
+    public void save(String relId, String clock, String indType, Date startDate, Date endDate) {
+        logger.info("查询需要保存chart的配置");
+
+        Calendar calendar = Calendar.getInstance();
+        calendar.set(Calendar.MILLISECOND, 0);
+        calendar.set(Calendar.SECOND, 0);
+        calendar.set(Calendar.MINUTE, 0);
+        calendar.set(Calendar.HOUR_OF_DAY, 0);
+        calendar.set(Calendar.DAY_OF_MONTH, 1);
+        Date monthStartDate = calendar.getTime();
+
+        Map<String, Object> map = new HashMap<>();
+        map.put("indType", indType);
+        map.put("ext1", "chart");
+        map.put("ext2", "chart2");
+        List<CokingTraceConfEntity> list = cokingTraceConfService.list(map);
+        if (CollectionUtils.isEmpty(list)) {
+            return;
+        }
+        logger.info("list.size={}", list.size());
+
+        List<CokingTraceChartEntity> entityList = new ArrayList<>();
+
+        List<CokingTraceConfEntity> listMin = list.stream().filter(e -> e.getExt1().equals("chart")).collect(Collectors.toList());
+        listMin.forEach(value -> {
+            CokingTraceChartEntity cokingTraceChartEntity = new CokingTraceChartEntity();
+            cokingTraceChartEntity.setRelId(relId);
+            cokingTraceChartEntity.setName(value.getIndName());
+            cokingTraceChartEntity.setClock(clock);
+            cokingTraceChartEntity.setDataType(value.getDataType());
+            cokingTraceChartEntity.setDataNo(value.getPointNo());
+            cokingTraceChartEntity.setStartTime(startDate);
+            cokingTraceChartEntity.setEndTime(endDate);
+            cokingTraceChartEntity.setCreateDate(new Date());
+            entityList.add(cokingTraceChartEntity);
+        });
+
+        List<CokingTraceConfEntity> listMonth = list.stream().filter(e -> e.getExt2().equals("chart2")).collect(Collectors.toList());
+
+        listMonth.forEach(value -> {
+            CokingTraceChartEntity cokingTraceChartEntity = new CokingTraceChartEntity();
+            cokingTraceChartEntity.setRelId(relId);
+            cokingTraceChartEntity.setName(value.getIndName());
+            cokingTraceChartEntity.setClock(clock);
+            cokingTraceChartEntity.setDataType(value.getDataType());
+            cokingTraceChartEntity.setDataNo(value.getPointNo());
+            cokingTraceChartEntity.setStartTime(monthStartDate);
+            cokingTraceChartEntity.setEndTime(endDate);
+            cokingTraceChartEntity.setCreateDate(new Date());
+            entityList.add(cokingTraceChartEntity);
+        });
+        cokingTraceChartService.insert(entityList);
+    }
 }
\ No newline at end of file

--
Gitblit v1.9.3