From 7e68f81b38116bba40e70620c563168fcde66a37 Mon Sep 17 00:00:00 2001
From: L <L@132>
Date: 星期五, 05 十二月 2025 09:18:38 +0800
Subject: [PATCH] *

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |   77 +++++++++++++++++++++-----------------
 1 files changed, 42 insertions(+), 35 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
index 681e8b6..646cd0a 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -116,7 +116,6 @@
     @Autowired
     private BasPlcerrorLogServiceImpl basPlcerrorLogService;
     public Long currentTimeMilliConnectCrnAuto= 0L;
-    public boolean[] signIntOut= new boolean[]{false,false,false,false,false};
 
     public void generateStoreWrkFile() {
         try {
@@ -2820,16 +2819,17 @@
                         boolean crnStnToLocDemo = this.crnStnToLocDemo(crnSlave, crnProtocol);//  鍏ュ簱
                         if (crnStnToLocDemo){
                             crnProtocol.setLastIo("O");
-                        } else if (!signIntOut[crnSlave.getId()-1]){
+                        } else if (!crnProtocol.isSignIntOut()){
                             crnProtocol.setLastIo("O");
                         }
                     } else if (basCrnp.getOutEnable().equals("Y")) {
                         boolean locToCrnStnDemo = this.locToCrnStnDemo(crnSlave, crnProtocol);//  鍑哄簱
-                        if (locToCrnStnDemo && signIntOut[crnSlave.getId()-1]){
+                        if (locToCrnStnDemo && crnProtocol.isSignIntOut()){
                             crnProtocol.setLastIo("I");
-                        } else if (locToCrnStnDemo && !signIntOut[crnSlave.getId()-1]){
-                            signIntOut[crnSlave.getId()-1] = true;
-                        } else if (!signIntOut[crnSlave.getId()-1]){
+                        } else if (locToCrnStnDemo){
+                            crnProtocol.setLastIo("I");
+                            crnProtocol.setSignIntOut(true);
+                        } else if (!crnProtocol.isSignIntOut()){
                             crnProtocol.setLastIo("I");
                         }
                     }
@@ -2838,18 +2838,19 @@
                 else if (crnProtocol.getLastIo().equals("O")) {
                     if (basCrnp.getOutEnable().equals("Y")) {
                         boolean locToCrnStnDemo = this.locToCrnStnDemo(crnSlave, crnProtocol);//  鍑哄簱
-                        if (locToCrnStnDemo && signIntOut[crnSlave.getId()-1]){
+                        if (locToCrnStnDemo && crnProtocol.isSignIntOut()){
                             crnProtocol.setLastIo("I");
-                        } else if (locToCrnStnDemo && !signIntOut[crnSlave.getId()-1]){
-                            signIntOut[crnSlave.getId()-1] = true;
-                        } else if (!signIntOut[crnSlave.getId()-1]){
+                        } else if (locToCrnStnDemo){
+                            crnProtocol.setLastIo("I");
+                            crnProtocol.setSignIntOut(true);
+                        } else if (!crnProtocol.isSignIntOut()){
                             crnProtocol.setLastIo("I");
                         }
                     } else if (basCrnp.getInEnable().equals("Y")) {
                         boolean crnStnToLocDemo = this.crnStnToLocDemo(crnSlave, crnProtocol);//  鍏ュ簱
                         if (crnStnToLocDemo){
                             crnProtocol.setLastIo("O");
-                        } else if (!signIntOut[crnSlave.getId()-1]){
+                        } else if (!crnProtocol.isSignIntOut()){
                             crnProtocol.setLastIo("O");
                         }
                     }
@@ -3077,6 +3078,8 @@
                                 if (taskWrkMapper.updateById(taskWrk) == 0) {
                                     log.error("淇敼宸ヤ綔妗g姸鎬� 11.鐢熸垚鍑哄簱ID => 12.鍚婅溅鍑哄簱涓� 澶辫触锛侊紒锛屽伐浣滃彿={}", taskWrk.getWrkNo());
                                 }
+
+
                             } catch (Exception e) {
                                 log.error("淇敼宸ヤ綔妗g姸鎬� 11.鐢熸垚鍑哄簱ID => 12.鍚婅溅鍑哄簱涓� 澶辫触锛侊紒锛屽伐浣滃彿={}", taskWrk.getWrkNo());
                                 log.error("淇敼宸ヤ綔妗g姸鎬� 11.鐢熸垚鍑哄簱ID => 12.鍚婅溅鍑哄簱涓� 澶辫触锛侊紒锛屽紓甯革細" + e);
@@ -3304,30 +3307,34 @@
                     if (Cools.isEmpty(basCrnp.getHpMk()) || !basCrnp.getHpMk().equals("Y")){
                         continue;
                     }
-                    for (String locNo : crnProtocol.getLocMastDemoList()){
-                        LocMast locMast = locMastService.selectByLocNo(locNo);
-                        if (locMast.getLocSts().equals("F")){
-                            CarryParam carryParam = new CarryParam();
-                            carryParam.setTaskNo(locNo);
-                            carryParam.setBarcode(locNo);
-                            carryParam.setIoType(1);//浠诲姟绫诲瀷=銆�1锛氬嚭搴撱��2锛氱Щ搴撱��3锛氬叆搴�   ====杞崲涓�====>  1锛氬叆搴擄紝2锛氬嚭搴擄紝3锛氱Щ搴�
-                            carryParam.setTaskPriority(1);
-                            carryParam.setTargetPoint("1012");
-                            carryParam.setStartPoint(BarcodeUtils.formatCode(locNo));
-                            carryParam.setMeno("Demo");
-                            taskWrkController.addTaskPoint(carryParam);
-                            Thread.sleep(50);
-                        } else if (locMast.getLocSts().equals("O")){
-                            CarryParam carryParam = new CarryParam();
-                            carryParam.setTaskNo(locNo);
-                            carryParam.setBarcode(locNo);
-                            carryParam.setIoType(3);//浠诲姟绫诲瀷=銆�1锛氬嚭搴撱��2锛氱Щ搴撱��3锛氬叆搴�   ====杞崲涓�====>  1锛氬叆搴擄紝2锛氬嚭搴擄紝3锛氱Щ搴�
-                            carryParam.setTaskPriority(1);
-                            carryParam.setStartPoint("1012");
-                            carryParam.setTargetPoint(BarcodeUtils.formatCode(locNo));
-                            carryParam.setMeno("Demo");
-                            taskWrkController.addTaskPoint(carryParam);
-                            Thread.sleep(50);
+                    for (String[] locS : crnProtocol.getLocMastDemoListSign()){
+                        if (locS[3].equals("1")){
+                            String locNo = locS[0];
+                            LocMast locMast = locMastService.selectByLocNo(locNo);
+                            if (locMast.getLocSts().equals("F")){
+                                CarryParam carryParam = new CarryParam();
+                                carryParam.setTaskNo(locNo);
+                                carryParam.setBarcode(locNo);
+                                carryParam.setIoType(1);//浠诲姟绫诲瀷=銆�1锛氬嚭搴撱��2锛氱Щ搴撱��3锛氬叆搴�   ====杞崲涓�====>  1锛氬叆搴擄紝2锛氬嚭搴擄紝3锛氱Щ搴�
+                                carryParam.setTaskPriority(1);
+                                carryParam.setTargetPoint("1012");
+                                carryParam.setStartPoint(BarcodeUtils.formatCode(locNo));
+                                carryParam.setMeno("Demo");
+                                taskWrkController.addTaskPoint(carryParam);
+                                Thread.sleep(50);
+                            } else if (locMast.getLocSts().equals("O")){
+                                CarryParam carryParam = new CarryParam();
+                                carryParam.setTaskNo(locNo);
+                                carryParam.setBarcode(locNo);
+                                carryParam.setIoType(3);//浠诲姟绫诲瀷=銆�1锛氬嚭搴撱��2锛氱Щ搴撱��3锛氬叆搴�   ====杞崲涓�====>  1锛氬叆搴擄紝2锛氬嚭搴擄紝3锛氱Щ搴�
+                                carryParam.setTaskPriority(1);
+                                carryParam.setStartPoint("1012");
+                                carryParam.setTargetPoint(BarcodeUtils.formatCode(locNo));
+                                carryParam.setMeno("Demo");
+                                taskWrkController.addTaskPoint(carryParam);
+                                Thread.sleep(50);
+                                LocFCSUtils.updateLocSInPlace(crnProtocol.getLocMastDemoListSign());
+                            }
                         }
                     }
 

--
Gitblit v1.9.1