From 93052fb8b5680f2b40e1fc649b987f2428a33f2c Mon Sep 17 00:00:00 2001
From: 潘志宝 <979469083@qq.com>
Date: 星期四, 24 四月 2025 16:31:17 +0800
Subject: [PATCH] 备煤工序异常溯源定时修改

---
 ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunCokingTraceModelHCTask.java |   53 ++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 34 insertions(+), 19 deletions(-)

diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunCokingTraceModelHCTask.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunCokingTraceModelHCTask.java
index f887940..8eddebf 100644
--- a/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunCokingTraceModelHCTask.java
+++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunCokingTraceModelHCTask.java
@@ -18,7 +18,6 @@
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
-import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.CollectionUtils;
 
 import java.util.*;
@@ -72,10 +71,10 @@
     }};
 
     private static final HashMap<String, Object> historyPointMap = new HashMap<String, Object>() {{
-        put("HCSY001", "蒸汽消耗");
-        put("HCSY020", "初冷器出口煤气温度");
-        put("HCSY021", "洗苯塔后煤气含苯");
-        put("HCSY022", "脱硫后H2S含量");
+        put("F0000101006", "蒸汽消耗");
+        put("F0000101006", "初冷器出口煤气温度");
+        put("F0000101006", "洗苯塔后煤气含苯");
+        put("F0000101006", "脱硫后H2S含量");
     }};
 
     private static final String jsonStr="{\n" +
@@ -100,30 +99,40 @@
             Calendar calendar = Calendar.getInstance();
             calendar.set(Calendar.MILLISECOND, 0);
             calendar.set(Calendar.SECOND, 0);
-            calendar.set(Calendar.MINUTE,0);
-            calendar.add(Calendar.DAY_OF_YEAR, -1);
-            String yesterday = DateUtils.format(calendar.getTime(), DateUtils.FORMAT_YEAR_MONTH_DAY);
+            calendar.set(Calendar.MINUTE, 0);
             int hour = calendar.get(Calendar.HOUR_OF_DAY);
             Date startDate = calendar.getTime();
-            calendar.add(Calendar.HOUR, 8);
             Date endDate = calendar.getTime();
             String clock = "";
             String analyClass = "";
-            if (hour == 0) {
-                clock = yesterday.concat("-").concat("A");
+            if (hour >= 8 && hour < 16) {
+                calendar.set(Calendar.HOUR_OF_DAY, 0);
+                startDate = calendar.getTime();
+                calendar.add(Calendar.HOUR_OF_DAY, 8);
+                endDate = calendar.getTime();
+                clock = DateUtils.format(startDate).concat("-").concat("A");
                 analyClass = "甲班";
-            } else if (hour == 8) {
-                clock = yesterday.concat("-").concat("B");
+            } else if (hour >= 16 && hour < 24) {
+                calendar.set(Calendar.HOUR_OF_DAY, 8);
+                startDate = calendar.getTime();
+                calendar.add(Calendar.HOUR_OF_DAY, 8);
+                endDate = calendar.getTime();
+                clock = DateUtils.format(startDate).concat("-").concat("B");
                 analyClass = "乙班";
-            } else if (hour == 16) {
-                clock = yesterday.concat("-").concat("C");
+            } else if (hour >= 0 && hour < 8) {
+                calendar.add(Calendar.DAY_OF_YEAR, -1);
+                calendar.set(Calendar.HOUR_OF_DAY, 16);
+                startDate = calendar.getTime();
+                calendar.add(Calendar.HOUR_OF_DAY, 8);
+                endDate = calendar.getTime();
+                clock = DateUtils.format(startDate).concat("-").concat("B");
                 analyClass = "丙班";
             }
             Map<String, Object> tMap = new HashMap<>();
             tMap.put("relId", UUID.randomUUID().toString());
             tMap.put("process", "化产工序");
             tMap.put("reportName", "化产工序");
-            tMap.put("analyDate", yesterday);
+            tMap.put("analyDate", DateUtils.format(startDate));
             tMap.put("analyClass", analyClass);
             tMap.put("clock", clock);
             tMap.put("analyContent", "化产蒸汽消耗量异常");
@@ -181,6 +190,7 @@
             String chemProdFirstColoum = result.get("chemProdFirstColoum"+i).toString();
             if(StringUtils.isNotBlank(chemProdFirstColoum)){
                 JSONArray responseArr = JSON.parseArray(chemProdFirstColoum);
+                List<CokingTraceDeviationEntity> cokingTraceDeviationEntities = new ArrayList<>();
                 for (int j = 0; j < responseArr.size(); j++) {
                     JSONArray element = JSON.parseArray(responseArr.get(j).toString());
                     CokingTraceDeviationEntity deviationEntity = new CokingTraceDeviationEntity();
@@ -192,14 +202,16 @@
                     deviationEntity.setIndName(steamIndexMaps.get(element.get(0).toString()));
                     deviationEntity.setIndValue(element.get(1).toString());
                     deviationEntity.setCreateDate(new Date());
-                    cokingTraceDeviationService.save(deviationEntity);
+                    cokingTraceDeviationEntities.add(deviationEntity);
                 }
+                cokingTraceDeviationService.save(cokingTraceDeviationEntities);
             }
         }
     }
 
     public void saveAnalyInd(Map<String, Object> tMap,JSONObject result) {
         String[] analyContent = tMap.get("analyContent").toString().split(";");
+        List<CokingAnalyIndEntity> list = new ArrayList<>();
         for(int i=0;i<analyContent.length;i++){
             CokingAnalyIndEntity analyIndEntity = new CokingAnalyIndEntity();
             analyIndEntity.setRelId(tMap.get("relId").toString());
@@ -208,8 +220,9 @@
             analyIndEntity.setAnalyClass(tMap.get("analyClass").toString());
             analyIndEntity.setAnalyContent(analyContent[i]);
             analyIndEntity.setSort(i+1);
-            cokingAnalyIndService.save(analyIndEntity);
+            list.add(analyIndEntity);
         }
+        cokingAnalyIndService.save(list);
     }
 
     public void saveTraceInd(Map<String, Object> tMap,JSONObject result) {
@@ -220,6 +233,7 @@
             logger.info("ConfLis is Empty");
             return;
         }
+        List<CokingTraceIndEntity> cokingTraceIndEntities = new ArrayList<>();
         for (CokingTraceConfEntity conf : list) {
             if (StringUtils.isBlank(conf.getDataType())) {
                 logger.info("DataType is Empty");
@@ -254,8 +268,9 @@
             cokingTraceIndEntity.setIndName(conf.getIndName());
             cokingTraceIndEntity.setIndValue(value);
             cokingTraceIndEntity.setIndUnit(conf.getIndUnit());
-            cokingTraceIndService.save(cokingTraceIndEntity);
+            cokingTraceIndEntities.add(cokingTraceIndEntity);
         }
+        cokingTraceIndService.save(cokingTraceIndEntities);
     }
 
     public void saveTraceChart(Map<String, Object> tMap, JSONObject result,Date startDate,Date endDate) {

--
Gitblit v1.9.3