From 6cdfae15cde1a3141203c35c5f9835f0d45dbfbb Mon Sep 17 00:00:00 2001
From: 1 <1>
Date: 星期二, 10 三月 2026 08:05:33 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |   69 +++++++++++++++++++++++++---------
 1 files changed, 50 insertions(+), 19 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 54da5d7..f016435 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -339,9 +339,9 @@
                             staProtocol.setStaNo(RouteUtils.SouStaEnd(dto.getStaNo(),dto.getSourceStaNo()));
                             devpThread.setPakMk(staProtocol.getSiteId(), false);
                             boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
-                            log.error("杈撻�佺嚎涓嬪彂2锛�"+dto.getWorkNo()+","+dto.getStaNo());
+                            log.info("杈撻�佺嚎涓嬪彂2锛�"+dto.getWorkNo()+","+dto.getStaNo());
                             ledThread.errorReset();
-                            log.error("缁勬墭璇锋眰鍚嶭ED閿欒娓呴櫎");
+                            log.info("缁勬墭璇锋眰鍚嶭ED閿欒娓呴櫎");
 
                             if (!result) {
                                 News.error(methodName + ":鏇存柊plc绔欑偣淇℃伅澶辫触");
@@ -643,7 +643,7 @@
                         wrkMast.setIoTime(now);
                         wrkMast.setIoType(wrkMast.getIoType() - 50); // 鍏ュ嚭搴撶被鍨�: 103->53,104->54,107->57
                         wrkMast.setWrkSts(2L); // 宸ヤ綔鐘舵��: 2.璁惧涓婅蛋
-                        wrkMast.setSourceStaNo(wrkMast.getStaNo()); // 婧愮珯
+                        wrkMast.setSourceStaNo(staDesc.getStnNo()); // 婧愮珯
                         wrkMast.setStaNo(staNo); // 鐩爣绔�
                         wrkMast.setLocNo(wrkMast.getSourceLocNo()); // 鐩爣搴撲綅 = 鍑哄簱鏃剁殑婧愬簱浣�
                         wrkMast.setSourceLocNo(""); // 婧愬簱浣嶆竻绌�
@@ -903,7 +903,7 @@
                             wrkMast9997.setCrnEndTime(new Date());
                             if (wrkMastMapper.updateById(wrkMast9997) != 0) {
                                 // 澶嶄綅鍫嗗灈鏈�
-                                log.error("鍑哄簱浠诲姟瀹屾垚涓嬪彂鍫嗗灈鏈哄浣�,{}", wrkMast9997.getWrkNo());
+                                log.info("鍑哄簱浠诲姟瀹屾垚涓嬪彂鍫嗗灈鏈哄浣�,{}", wrkMast9997.getWrkNo());
                                 crnThread.setResetFlag(true);
                             } else {
                                 News.error(""+mark+" - 1"+" - 鏇存柊宸ヤ綔妗g殑宸ヤ綔鐘舵�佷负14澶辫触锛侊紒锛� [宸ヤ綔鍙�:{}]", wrkMast9997.getWrkNo());
@@ -949,7 +949,7 @@
                             wrkMast9996.setCrnEndTime(new Date());
                             if (wrkMastMapper.updateById(wrkMast9996) != 0) {
                                 // 澶嶄綅鍫嗗灈鏈�
-                                log.error("鍑哄簱浠诲姟瀹屾垚涓嬪彂鍫嗗灈鏈哄浣�,{}", wrkMast9996.getWrkNo());
+                                log.info("鍑哄簱浠诲姟瀹屾垚涓嬪彂鍫嗗灈鏈哄浣�,{}", wrkMast9996.getWrkNo());
                                 crnThread.setResetFlag(true);
                             } else {
                                 News.error(""+mark+" - 1"+" - 鏇存柊宸ヤ綔妗g殑宸ヤ綔鐘舵�佷负14澶辫触锛侊紒锛� [宸ヤ綔鍙�:{}]", wrkMast9996.getWrkNo());
@@ -1003,7 +1003,7 @@
                         wrkMast.setCrnEndTime(new Date());
                         if (wrkMastMapper.updateById(wrkMast) != 0) {
                             // 澶嶄綅鍫嗗灈鏈�
-                            log.error("鍑哄簱浠诲姟瀹屾垚涓嬪彂鍫嗗灈鏈哄浣�,{}", wrkMast.getWrkNo());
+                            log.info("鍑哄簱浠诲姟瀹屾垚涓嬪彂鍫嗗灈鏈哄浣�,{}", wrkMast.getWrkNo());
                             crnThread.setResetFlag(true);
                         } else {
                             News.error(""+mark+" - 1"+" - 鏇存柊宸ヤ綔妗g殑宸ヤ綔鐘舵�佷负14澶辫触锛侊紒锛� [宸ヤ綔鍙�:{}]", wrkMast.getWrkNo());
@@ -3063,6 +3063,8 @@
             } else {
                 staProtocol = staProtocol.clone();
             }
+
+
             if (staProtocol.isAutoing()  //鑷姩
                     && !staProtocol.isLoading()  //鏃犵墿
 //                    && staProtocol.isOutEnable()  //鍙嚭淇″彿
@@ -3583,7 +3585,7 @@
                             }
                             wrkMastSta.setWrkSts(2);
                             wrkMastStaMapper.updateById(wrkMastSta);
-                            log.error("鏇存柊灏忚溅浠诲姟鎴愬姛");
+                            log.info("鏇存柊灏忚溅浠诲姟鎴愬姛");
                         }catch (Exception e){
                             log.error("鏇存柊灏忚溅浠诲姟澶辫触"+ e);
                         }
@@ -3652,7 +3654,7 @@
                             }
                             wrkMastSta.setWrkSts(2);
                             wrkMastStaMapper.updateById(wrkMastSta);
-                            log.error("鏇存柊灏忚溅浠诲姟鎴愬姛");
+                            log.info("鏇存柊灏忚溅浠诲姟鎴愬姛");
                         }catch (Exception e){
                             log.error("鏇存柊灏忚溅浠诲姟澶辫触");
                         }
@@ -3825,7 +3827,6 @@
             if(rgvProtocol.getStatusType1() == RgvStatusType.WORKING){
                 rgvThread.setPaking(true);
             }
-
             if(rgvProtocol.isLoaded1ing() && rgvProtocol.isLoaded2ing()){
                 basRgv.setPakAll("1");
                 basRgvService.updateById(basRgv);
@@ -3833,6 +3834,9 @@
             if(rgvProtocol.getStatusType1() == RgvStatusType.IDLE &&
                     rgvProtocol.getModeType() == RgvModeType.AUTO && rgvThread.isPakMk()
                     && rgvThread.isPaking() && basRgv.getPakAll().equals("1")){
+                if(rgvProtocol.isLoaded1ing() || rgvProtocol.isLoaded2ing()){
+                    continue;
+                }
                 if(basRgv.getPakOut().equals("1") && basRgv.getPakIn().equals("1")){
                     rgvPreSchedulingIn(rgv, rgvProtocol);//鑻ユ殏鏃犱笅鍙戜换鍔¢璋冨害鎻愬墠鍒板彇璐х偣
                     if (rgvProtocol.getLastIo().equals("I")) {
@@ -3982,10 +3986,11 @@
                 try{
                     wrkMastSta.setWrkSts(1);
                     wrkMastStaMapper.updateById(wrkMastSta);
-                    log.error("鏇存柊灏忚溅浠诲姟鎴愬姛{}",wrkMastSta);
+                    log.info("鏇存柊灏忚溅浠诲姟鎴愬姛{}",wrkMastSta);
                 }catch (Exception e){
                     log.error("鏇存柊灏忚溅浠诲姟澶辫触");
                 }
+                break;  // 鏂板锛氫笅鍙戞垚鍔熷悗閫�鍑哄惊鐜紝闃叉杩炵画涓嬪彂澶氫釜
             } else {
                 log.error("宸ヤ綔鍙穥}鎵�灞炰换鍔′笅鍙戝け璐�",wrkMastSta.getWrkNo());
             }
@@ -4131,10 +4136,11 @@
                 try{
                     wrkMastSta.setWrkSts(1);
                     wrkMastStaMapper.updateById(wrkMastSta);
-                    log.error("鏇存柊灏忚溅浠诲姟鎴愬姛{}",wrkMastSta);
+                    log.info("鏇存柊灏忚溅浠诲姟鎴愬姛{}",wrkMastSta);
                 }catch (Exception e){
                     log.error("鏇存柊灏忚溅浠诲姟澶辫触");
                 }
+                break;  // 鏂板锛氫笅鍙戞垚鍔熷悗閫�鍑哄惊鐜紝闃叉杩炵画涓嬪彂澶氫釜
             } else {
                 log.error("宸ヤ綔鍙穥}鎵�灞炰换鍔′笅鍙戝け璐�",wrkMastSta.getWrkNo());
             }
@@ -4280,10 +4286,11 @@
                 try{
                     wrkMastSta.setWrkSts(1);
                     wrkMastStaMapper.updateById(wrkMastSta);
-                    log.error("鏇存柊灏忚溅浠诲姟鎴愬姛{}",wrkMastSta);
+                    log.info("鏇存柊灏忚溅浠诲姟鎴愬姛{}",wrkMastSta);
                 }catch (Exception e){
                     log.error("鏇存柊灏忚溅浠诲姟澶辫触");
                 }
+                break;  // 鏂板锛氫笅鍙戞垚鍔熷悗閫�鍑哄惊鐜紝闃叉杩炵画涓嬪彂澶氫釜
             } else {
                 log.error("宸ヤ綔鍙穥}鎵�灞炰换鍔′笅鍙戝け璐�",wrkMastSta.getWrkNo());
             }
@@ -4415,7 +4422,7 @@
                 try{
                     wrkMastSta.setWrkSts(1);
                     wrkMastStaMapper.updateById(wrkMastSta);
-                    log.error("鏇存柊灏忚溅浠诲姟鎴愬姛");
+                    log.info("鏇存柊灏忚溅浠诲姟鎴愬姛");
                 }catch (Exception e){
                     log.error("鏇存柊灏忚溅浠诲姟澶辫触");
                 }
@@ -4571,7 +4578,7 @@
             //閬嶅巻rgv鍏ュ簱鍙栬揣绔欑偣
             DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, rgvStn.getDevpPlcId());
             StaProtocol staProtocol = devpThread.getStation().get(rgvStn.getStaNo2()==1043?1044:1103); //鍊掓暟绗簩涓�
-            StaProtocol staProtocol2 = null;  //杩炵画鍙栬揣浠诲姟绔欑偣
+            StaProtocol staProtocol1 = devpThread.getStation().get(rgvStn.getStaNo());  //绗竴涓珯鐐瑰垽鏂�
             RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, (int) rgvProtocol.getRgvNo());
 //            WrkMastSta wrkMastSta3 = null;//杩炲彇涓や釜
 //            Integer staNo = null;  //涓庤皟搴�
@@ -4607,6 +4614,15 @@
                 continue;
             } else {
                 staProtocol = staProtocol.clone();
+            }
+            if (staProtocol1 == null) {
+                News.infoNoLog( " - Rgv鍏ュ簱绔欎俊鎭�(staProtocol!=null缁х画鎵ц)锛歴taProtocol=" + staProtocol);
+                continue;
+            } else {
+                staProtocol1 = staProtocol1.clone();
+            }
+            if(staProtocol1.isLoading() || staProtocol1.getWorkNo()!=0){
+                continue;
             }
             // 鏌ヨ绔欑偣璇︾粏淇℃伅
             BasDevp staDetl = basDevpService.selectById(rgvStn.getStaNo());
@@ -4680,10 +4696,11 @@
                 try{
                     wrkMastSta.setWrkSts(1);
                     wrkMastStaMapper.updateById(wrkMastSta);
-                    log.error("鏇存柊灏忚溅浠诲姟鎴愬姛{}",wrkMastSta);
+                    log.info("鏇存柊灏忚溅浠诲姟鎴愬姛{}",wrkMastSta);
                 }catch (Exception e){
                     log.error("鏇存柊灏忚溅浠诲姟澶辫触");
                 }
+                break;  // 鏂板锛氫笅鍙戞垚鍔熷悗閫�鍑哄惊鐜紝闃叉杩炵画涓嬪彂澶氫釜
             } else {
                 log.error("宸ヤ綔鍙穥}鎵�灞炰换鍔′笅鍙戝け璐�",wrkMastSta.getWrkNo());
             }
@@ -4890,10 +4907,16 @@
                     }
                     if(!Cools.isEmpty(barcode)) {
                         if("NG".endsWith(barcode) || "NoRead".equals(barcode) || "0".equals(barcode) || barcode.length()<5) {
+                            if(!staProtocol.isLoading()){
+                                continue;
+                            }
                             armTaskAssignmentCallApiLogSave(staProtocol, "鎷嗗灈鏉$爜涓虹┖", staProtocol.getSiteId()+"鐮佸灈浣嶇疆锛�===銆嬫墭鐩樻潯鐮佷负绌�", false);
                             continue;
                         }
                     } else {
+                        if(!staProtocol.isLoading()){
+                            continue;
+                        }
                         armTaskAssignmentCallApiLogSave(staProtocol, "鎷嗗灈鏉$爜涓虹┖", staProtocol.getSiteId()+"鐮佸灈浣嶇疆锛�===銆嬫墭鐩樻潯鐮佷负绌�", false);
                         continue;
                     }
@@ -5091,7 +5114,7 @@
                     }
 
                     if(barcode.length()!=6){
-                        armTaskAssignmentCallApiLogSave(staProtocol, "鏉$爜闀垮害涓嶆槸6浣�", staProtocol.getSiteId()+"鐮佸灈浣嶇疆锛屾潯鐮侀暱搴︿笉鏄�6浣�===>>" + barcode, false);
+                        armTaskAssignmentCallApiLogSave(staProtocol, "鏉$爜闀垮害涓嶆槸6浣�", staProtocol.getSiteId()+"鐮佸灈浣嶇疆锛屾潯鐮侀暱搴︿笉鏄�6浣�===>>" + barcode, true);
                         continue;
                     }
 
@@ -5099,7 +5122,7 @@
                     int countWrk = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("zpallet",barcode));
                     int countwait = waitPakinMapper.selectCount(new EntityWrapper<WaitPakin>().eq("zpallet",barcode));
                     if (countLoc > 0 || countWrk > 0 || countwait > 0) {
-                        armTaskAssignmentCallApiLogSave(staProtocol, "鏉$爜鏁版嵁宸插瓨鍦�", staProtocol.getSiteId()+"鐮佸灈浣嶇疆锛岀粍鎵樻。/宸ヤ綔妗�/搴撳瓨鏉$爜鏁版嵁宸插瓨鍦�===>>" + barcode, false);
+                        armTaskAssignmentCallApiLogSave(staProtocol, "鏉$爜鏁版嵁宸插瓨鍦�", staProtocol.getSiteId()+"鐮佸灈浣嶇疆锛岀粍鎵樻。/宸ヤ綔妗�/搴撳瓨鏉$爜鏁版嵁宸插瓨鍦�===>>" + barcode, true);
                         continue;
                     }
 
@@ -5278,7 +5301,7 @@
                     }
 
                     if(barcode.length()!=6){
-                        armTaskAssignmentCallApiLogSave(locMastEnd, "鏉$爜闀垮害涓嶆槸6浣�", basArm.getStaNoSou()+"鐮佸灈浣嶇疆锛屾潯鐮侀暱搴︿笉鏄�6浣�===>>" + barcode, false);
+                        armTaskAssignmentCallApiLogSave(locMastEnd, "鏉$爜闀垮害涓嶆槸6浣�", basArm.getStaNoSou()+"鐮佸灈浣嶇疆锛屾潯鐮侀暱搴︿笉鏄�6浣�===>>" + barcode, true);
                         continue;
                     }
 
@@ -5286,7 +5309,7 @@
                     int countWrk = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("zpallet",barcode));
                     int countwait = waitPakinMapper.selectCount(new EntityWrapper<WaitPakin>().eq("zpallet",barcode));
                     if (countLoc > 0 || countWrk > 0 || countwait > 0) {
-                        armTaskAssignmentCallApiLogSave(locMastEnd, "鏉$爜鏁版嵁宸插瓨鍦�", basArm.getStaNoSou()+"鐮佸灈浣嶇疆锛岀粍鎵樻。/宸ヤ綔妗�/搴撳瓨鏉$爜鏁版嵁宸插瓨鍦�===>>" + barcode, false);
+                        armTaskAssignmentCallApiLogSave(locMastEnd, "鏉$爜鏁版嵁宸插瓨鍦�", basArm.getStaNoSou()+"鐮佸灈浣嶇疆锛岀粍鎵樻。/宸ヤ綔妗�/搴撳瓨鏉$爜鏁版嵁宸插瓨鍦�===>>" + barcode, true);
                         continue;
                     }
 
@@ -5651,6 +5674,10 @@
      * agv浠诲姟鐢熸垚  Empty
      * */
     public synchronized void agvTaskCreateEmpty() {
+        Config configAGVAUTOIN = configService.selectConfigByCode("AGVAUTOIN");
+        if(!Boolean.parseBoolean(configAGVAUTOIN.getValue())){
+            return;
+        }
         // 鏍规嵁杈撻�佺嚎plc閬嶅巻
         for (DevpSlave devp : slaveProperties.getDevp()) {
             // 閬嶅巻鍑哄簱鍙�
@@ -5916,6 +5943,10 @@
                     // 鑾峰彇绔欑偣淇℃伅
                     SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, basAgvMast.getFloorNo() !=1?2:1);
                     StaProtocol staProtocol = devpThread.getStation().get(basAgvMast.getStaNo());
+                    List<BasAgvMast> basAgvMastList1 = basAgvMastService.selectList(new EntityWrapper<BasAgvMast>().eq("status", 1).eq("sta_no", basAgvMast.getStaNo()));
+                    if(basAgvMastList1.size()>0){
+                        continue;
+                    }
                     if (staProtocol == null) {
                         continue;
                     } else {

--
Gitblit v1.9.1