From cdea0d3b6412b5d81eea26add488f0a8caa83f6a Mon Sep 17 00:00:00 2001
From: liriming <1343021927@qq.com>
Date: 星期三, 23 四月 2025 13:31:17 +0800
Subject: [PATCH] RunMachineStateTask

---
 shasteel-biz/src/main/java/com/iailab/module/shasteel/job/task/RunMachineStateTask.java |   89 +++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 82 insertions(+), 7 deletions(-)

diff --git a/shasteel-biz/src/main/java/com/iailab/module/shasteel/job/task/RunMachineStateTask.java b/shasteel-biz/src/main/java/com/iailab/module/shasteel/job/task/RunMachineStateTask.java
index 2306258..c2d69ad 100644
--- a/shasteel-biz/src/main/java/com/iailab/module/shasteel/job/task/RunMachineStateTask.java
+++ b/shasteel-biz/src/main/java/com/iailab/module/shasteel/job/task/RunMachineStateTask.java
@@ -33,15 +33,15 @@
         put("F0000101190", Arrays.asList("C0000101199", "C0000101200", "C0000101201", "C0000101202"));
         put("F0000101191", Arrays.asList("M0000100854", "M0000100855", "M0000100856", "M0000100857"));
         put("F0000101192", Arrays.asList("C0000101242", "C0000101243", "C0000101244", "C0000101245"));
-        put("F0000101193", Arrays.asList("C0000101223", "C0000101224", "C0000101225", "C0000101226"));
-        put("F0000101194", Arrays.asList("C0000101210", "C0000101211", "C0000101212", "C0000101213"));
-        put("F0000101195", Arrays.asList("C0000101214", "C0000101215", "C0000101216", "C0000101217"));
+        put("F0000101193", Arrays.asList("C0000101223", "C0000101224", "C0000101225", "C0000101226"));//
+        put("F0000101194", Arrays.asList("C0000101210", "C0000101211", "C0000101212", "C0000101213"));//
+        put("F0000101195", Arrays.asList("C0000101214", "C0000101215", "C0000101216", "C0000101217"));//
 
         put("F0000101196", Arrays.asList("F0000100105", "F0000100106", "F0000100107", "F0000100108"));
         put("F0000101197", Arrays.asList("F0000100116", "F0000100117", "F0000100118", "F0000100119"));
         put("F0000101198", Arrays.asList("M0000100032", "M0000100035", "M0000100038", "M0000100041"));
         put("F0000101201", Arrays.asList("C0000101203", "C0000101204", "C0000101205", "C0000101206"));
-        put("F0000101204", Arrays.asList("C0000101227", "C0000101228", "C0000101229", "C0000101230"));
+        put("F0000101204", Arrays.asList("C0000101227", "C0000101228", "C0000101229", "C0000101230"));//
 
         put("F0000101207", Arrays.asList("F0000100102", "F0000100103"));
         put("F0000101208", Arrays.asList("F0000100113", "F0000100114"));
@@ -51,9 +51,13 @@
         put("F0000101212", Arrays.asList("C0000101207", "C0000101208"));
         put("F0000101213", Arrays.asList("C0000101116", "C0000101117"));
         put("F0000101214", Arrays.asList("C0000101240", "C0000101241"));
-        put("F0000101215", Arrays.asList("C0000101231", "C0000101232"));
-        put("F0000101216", Arrays.asList("C0000101221", "C0000101222"));
-        put("F0000101217", Arrays.asList("C0000101218", "C0000101219"));
+        put("F0000101215", Arrays.asList("C0000101231", "C0000101232"));//
+        put("F0000101216", Arrays.asList("C0000101221", "C0000101222"));//
+        put("F0000101217", Arrays.asList("C0000101218", "C0000101219"));//
+
+        put("F0000100104", Arrays.asList("F0000100104"));//
+        put("C0000101233", Arrays.asList("C0000101233"));//
+        put("C0000101220", Arrays.asList("C0000101220"));//
     }};
 
     private static final HashMap<String, List<String>> sumPoints = new HashMap<String, List<String>>() {{
@@ -69,6 +73,12 @@
         put("F0000101227", Arrays.asList("F0000101194", "F0000101205", "F0000101216"));
         put("F0000101228", Arrays.asList("F0000101195", "F0000101206", "F0000101217", "C0000101220"));
     }};
+
+    private boolean qhFlag1 = false;
+    private boolean qhFlag2 = false;
+    private boolean qhFlag135 = false;
+    private boolean qhFlag180 = false;
+    private boolean qhFlagTotal = false;
 
     @Override
     public void run(String params) {
@@ -93,10 +103,23 @@
                     writeDTO.setPointNo(entry.getKey());
                     BigDecimal value = count == 0 ? BigDecimal.ZERO : new BigDecimal(dataValue).divide(new BigDecimal(count), 2, BigDecimal.ROUND_HALF_UP);
                     writeDTO.setValue(value);
+                    if ("F0000101185".equals(entry.getKey()) && value.compareTo(BigDecimal.ZERO) == 0) {
+                        qhFlag1 = true;
+                    }
+                    if ("F0000101196".equals(entry.getKey()) && value.compareTo(BigDecimal.ZERO) == 0) {
+                        qhFlag2 = true;
+                    }
+                    if ("F0000101207".equals(entry.getKey()) && value.compareTo(BigDecimal.ZERO) == 0) {
+                        qhFlag135 = true;
+                    }
+                    if ("F0000100104".equals(entry.getKey()) && value.compareTo(BigDecimal.ZERO) == 0) {
+                        qhFlag180 = true;
+                    }
                 }else {
                     writeDTO.setPointNo(entry.getKey());
                     writeDTO.setValue(dataValue);
                 }
+
                 logger.info("写入常量点="+writeDTO.getPointNo()+",值="+writeDTO.getValue());
                 dataPointApi.writePointRealValue(writeDTO);
             }
@@ -118,6 +141,9 @@
                     writeDTO.setPointNo(entry.getKey());
                     BigDecimal value = count == 0 ? BigDecimal.ZERO : new BigDecimal(dataValue).divide(new BigDecimal(count), 2, BigDecimal.ROUND_HALF_UP);
                     writeDTO.setValue(value);
+                    if ("F0000101218".equals(entry.getKey()) && value.compareTo(BigDecimal.ZERO) == 0) {
+                        qhFlagTotal = true;
+                    }
                 }else {
                     writeDTO.setPointNo(entry.getKey());
                     writeDTO.setValue(dataValue);
@@ -125,6 +151,55 @@
                 logger.info("写入常量点="+writeDTO.getPointNo()+",值="+writeDTO.getValue());
                 dataPointApi.writePointRealValue(writeDTO);
             }
+            ApiPointValueWriteDTO writeDTO = new ApiPointValueWriteDTO();
+            if(qhFlag1){
+                logger.info("一期机组气耗率为0");
+                writeDTO.setValue(0);
+                writeDTO.setPointNo("F0000101193");
+                dataPointApi.writePointRealValue(writeDTO);
+                writeDTO.setPointNo("F0000101194");
+                dataPointApi.writePointRealValue(writeDTO);
+                writeDTO.setPointNo("F0000101195");
+                dataPointApi.writePointRealValue(writeDTO);
+            }
+            if(qhFlag2){
+                logger.info("二期机组气耗率为0");
+                writeDTO.setValue(0);
+                writeDTO.setPointNo("F0000101204");
+                dataPointApi.writePointRealValue(writeDTO);
+                writeDTO.setPointNo("F0000101205");
+                dataPointApi.writePointRealValue(writeDTO);
+                writeDTO.setPointNo("F0000101206");
+                dataPointApi.writePointRealValue(writeDTO);
+            }
+            if(qhFlag135){
+                logger.info("135机组气耗率为0");
+                writeDTO.setValue(0);
+                writeDTO.setPointNo("F0000101215");
+                dataPointApi.writePointRealValue(writeDTO);
+                writeDTO.setPointNo("F0000101216");
+                dataPointApi.writePointRealValue(writeDTO);
+                writeDTO.setPointNo("F0000101217");
+                dataPointApi.writePointRealValue(writeDTO);
+            }
+            if(qhFlag180){
+                logger.info("180机组气耗率为0");
+                writeDTO.setValue(0);
+                writeDTO.setPointNo("C0000101233");
+                dataPointApi.writePointRealValue(writeDTO);
+                writeDTO.setPointNo("C0000101220");
+                dataPointApi.writePointRealValue(writeDTO);
+            }
+            if(qhFlagTotal){
+                logger.info("合计气耗率为0");
+                writeDTO.setValue(0);
+                writeDTO.setPointNo("F0000101226");
+                dataPointApi.writePointRealValue(writeDTO);
+                writeDTO.setPointNo("F0000101227");
+                dataPointApi.writePointRealValue(writeDTO);
+                writeDTO.setPointNo("F0000101228");
+                dataPointApi.writePointRealValue(writeDTO);
+            }
 
         } catch (Exception ex) {
             logger.error("RunMachineStateTask运行异常", ex);

--
Gitblit v1.9.3