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/RunCokingTraceModelGXJTask.java |   62 +++++++++++++++++++++---------
 1 files changed, 43 insertions(+), 19 deletions(-)

diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunCokingTraceModelGXJTask.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunCokingTraceModelGXJTask.java
index 74fadb1..70664be 100644
--- a/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunCokingTraceModelGXJTask.java
+++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunCokingTraceModelGXJTask.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.*;
@@ -106,25 +105,42 @@
         logger.info("RunCokingTraceModelGXJTask,参数为:{}", params);
         try {
             Calendar calendar = Calendar.getInstance();
+            calendar.set(Calendar.MILLISECOND, 0);
+            calendar.set(Calendar.SECOND, 0);
+            calendar.set(Calendar.MINUTE, 0);
             int hour = calendar.get(Calendar.HOUR_OF_DAY);
-            String yesterday = DateUtils.format(DateUtils.addDateDays(new Date(), -1), DateUtils.FORMAT_YEAR_MONTH_DAY);
+            Date startDate = calendar.getTime();
+            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", "干熄焦产蒸汽量异常");
@@ -160,19 +176,21 @@
     }
 
     public void saveTraceSuggest(Map<String, Object> tMap,JSONObject result) {
+        List<CokingTraceSuggestEntity> entityList = new ArrayList<>();
         for(int i=1;i<=2;i++){
             String steamTotal = result.get("steamTotal"+i).toString();
             if(StringUtils.isNotBlank(steamTotal)){
                 CokingTraceSuggestEntity suggestEntity = new CokingTraceSuggestEntity();
                 suggestEntity.setRelId(tMap.get("relId").toString());
                 suggestEntity.setProcess(tMap.get("process").toString());
-                suggestEntity.setSugObj("GXJ");
+                suggestEntity.setSugObj(i+"#");
                 suggestEntity.setClock(tMap.get("clock").toString());
                 suggestEntity.setContent(steamTotal);
                 suggestEntity.setCreateDate(new Date());
-                cokingTraceSuggestService.save(suggestEntity);
+                entityList.add(suggestEntity);
             }
         }
+        cokingTraceSuggestService.insert(entityList);
     }
 
     public void saveTraceDeviation(Map<String, Object> tMap,JSONObject result) {
@@ -182,39 +200,42 @@
             String steamFirstColoum = result.get("steamFirstColoum"+i).toString();
             if(StringUtils.isNotBlank(steamFirstColoum)){
                 JSONArray responseArr = JSON.parseArray(steamFirstColoum);
+                List<CokingTraceDeviationEntity> entityList = new ArrayList<>();
                 for (int j = 0; j < responseArr.size(); j++) {
                     JSONArray element = JSON.parseArray(responseArr.get(j).toString());
                     CokingTraceDeviationEntity deviationEntity = new CokingTraceDeviationEntity();
                     deviationEntity.setRelId(tMap.get("relId").toString());
                     deviationEntity.setProcess(tMap.get("process").toString());
                     deviationEntity.setClock(tMap.get("clock").toString());
-                    deviationEntity.setSugObj("GXJ");
+                    deviationEntity.setSugObj("1#");
                     deviationEntity.setGroupName(steamFirstColoumMap.get("steamFirstColoum"+i).toString());
                     deviationEntity.setIndName(steamIndexMaps.get(element.get(0).toString()));
                     deviationEntity.setIndValue(element.get(1).toString());
                     deviationEntity.setCreateDate(new Date());
-                    cokingTraceDeviationService.save(deviationEntity);
+                    entityList.add(deviationEntity);
                 }
+                cokingTraceDeviationService.save(entityList);
             }
         }
         for(int i=0;i<=5;i++){
             String steamSecondColoum = result.get("steamSecondColoum"+i).toString();
             if(StringUtils.isNotBlank(steamSecondColoum)){
                 JSONArray responseArr = JSON.parseArray(steamSecondColoum);
-
+                List<CokingTraceDeviationEntity> entityList = new ArrayList<>();
                 for (int j = 0; j < responseArr.size(); j++) {
                     JSONArray element = JSON.parseArray(responseArr.get(j).toString());
                     CokingTraceDeviationEntity deviationEntity = new CokingTraceDeviationEntity();
                     deviationEntity.setRelId(tMap.get("relId").toString());
                     deviationEntity.setProcess(tMap.get("process").toString());
                     deviationEntity.setClock(tMap.get("clock").toString());
-                    deviationEntity.setSugObj("GXJ");
+                    deviationEntity.setSugObj("2#");
                     deviationEntity.setGroupName(steamSecondColoumMap.get("steamSecondColoum" + i).toString());
                     deviationEntity.setIndName(steamIndexMaps.get(element.get(0).toString()));
                     deviationEntity.setIndValue(element.get(1).toString());
                     deviationEntity.setCreateDate(new Date());
-                    cokingTraceDeviationService.save(deviationEntity);
+                    entityList.add(deviationEntity);
                 }
+                cokingTraceDeviationService.save(entityList);
             }
         }
 
@@ -222,6 +243,7 @@
 
     public void saveAnalyInd(Map<String, Object> tMap,JSONObject result) {
         String[] analyContent = tMap.get("analyContent").toString().split(";");
+        List<CokingAnalyIndEntity> entityList = new ArrayList<>();
         for(int i=0;i<analyContent.length;i++){
             CokingAnalyIndEntity analyIndEntity = new CokingAnalyIndEntity();
             analyIndEntity.setRelId(tMap.get("relId").toString());
@@ -230,8 +252,9 @@
             analyIndEntity.setAnalyClass(tMap.get("analyClass").toString());
             analyIndEntity.setAnalyContent(analyContent[i]);
             analyIndEntity.setSort(i+1);
-            cokingAnalyIndService.save(analyIndEntity);
+            entityList.add(analyIndEntity);
         }
+        cokingAnalyIndService.save(entityList);
     }
 
     public void saveTraceInd(Map<String, Object> tMap,JSONObject result) {
@@ -242,6 +265,7 @@
             logger.info("ConfLis is Empty");
             return;
         }
+        List<CokingTraceIndEntity> entityList = new ArrayList<>();
         for (CokingTraceConfEntity conf : list) {
             if (StringUtils.isBlank(conf.getDataType())) {
                 logger.info("DataType is Empty");
@@ -277,8 +301,8 @@
             cokingTraceIndEntity.setIndName(conf.getIndName());
             cokingTraceIndEntity.setIndValue(value);
             cokingTraceIndEntity.setIndUnit(conf.getIndUnit());
-            cokingTraceIndService.save(cokingTraceIndEntity);
-
+            entityList.add(cokingTraceIndEntity);
         }
+        cokingTraceIndService.save(entityList);
     }
 }
\ No newline at end of file

--
Gitblit v1.9.3