From 7ab864d4bd0c839c95101ce9c5c5157744810478 Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期一, 23 十二月 2024 13:10:56 +0800
Subject: [PATCH] *

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |   56 +++++++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 45 insertions(+), 11 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 1ac30f6..3b47be2 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -105,6 +105,9 @@
     @Value("${wms.url}")
     private String wmsUrl;
 
+    @Value("${wms.rgvOpen}")
+    private boolean rgvOpen;
+
     /**
      * 缁勬墭
      * 鍏ュ簱绔欙紝鏍规嵁鏉$爜鎵弿鐢熸垚鍏ュ簱宸ヤ綔妗o紝宸ヤ綔鐘舵�� 2
@@ -2319,6 +2322,7 @@
                         param.setIoType(10);
                         param.setSourceStaNo(122);
                         param.setLocType1((short)1);
+                        param.setRgvNo(rgvProtocol.getRgvNo());
                         String response = new HttpHandler.Builder()
                                 .setUri(wmsUrl)
                                 .setPath("/rpc/pakin/empty/loc/v1")
@@ -2364,7 +2368,8 @@
             DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, led.getDevpPlcId());
             // 鍛戒护闆嗗悎
             List<LedCommand> commands = new ArrayList<>();
-            // 宸ヤ綔妗i泦鍚�
+            String orderNo = null;
+                    // 宸ヤ綔妗i泦鍚�
             List<WrkMast> wrkMasts = new ArrayList<>();
             for (Integer staNo : led.getStaArr()) {
                 // 鑾峰彇鍙夎溅绔欑偣
@@ -2424,7 +2429,13 @@
 //                ledCommand.setSourceStaNo(wrkMast.getSourceStaNo());
                 if (wrkMast.getIoType() != 110 && wrkMast.getIoType() != 10) {
                     List<WrkDetl> wrkDetls = wrkDetlService.findByWorkNo(wrkMast.getWrkNo());
-                    wrkDetls.forEach(wrkDetl -> ledCommand.getMatDtos().add(new MatDto(wrkDetl)));
+                    if (Cools.isEmpty(wrkDetls)){
+                        continue;
+                    }
+                    Integer count1 = wrkDetlService.count1();
+                    Integer count2 = wrkDetlService.count2(wrkDetls.get(0).getOrderNo());
+                    Integer count3 = wrkDetlService.count3();
+                    wrkDetls.forEach(wrkDetl -> ledCommand.getMatDtos().add(new MatDto(wrkDetl,count1,count2,count3)));
                 }
                 commands.add(ledCommand);
             }
@@ -3379,6 +3390,26 @@
                 if (!staProtocol.isLoading()){
                     continue;
                 }
+                StaProtocol staProtocol120 = devpThread.getStation().get(120);
+                if (staProtocol120 == null) {
+                    continue;
+                } else {
+                    staProtocol120 = staProtocol120.clone();
+                }
+
+                if (staProtocol120.isLoading()){
+                    continue;
+                }
+                StaProtocol staProtocol121 = devpThread.getStation().get(121);
+                if (staProtocol121 == null) {
+                    continue;
+                } else {
+                    staProtocol121 = staProtocol121.clone();
+                }
+
+                if (staProtocol121.isLoading()){
+                    continue;
+                }
 //                if (!staProtocol.getWorkNo().equals(wrkMast131.getWrkNo())){
 //                    log.info("绔欑偣宸ヤ綔鍙�={} 涓庤创鏍囧伐浣滃彿={} 涓嶄竴鑷达紝寮傚父锛�",staProtocol.getWorkNo(),wrkMast131.getWrkNo().shortValue());
 //                }
@@ -3737,7 +3768,7 @@
                             }
                         }
                         BasDevp basDevpS = basDevpService.selectById(wrkMastSta.getStaStart());
-                        if (!basDevpS.getAutoing().equals("Y") || basDevpS.getLoading().equals("Y") || basDevpS.getWrkNo()!=wrkMastSta.getWrkNo().intValue()){
+                        if (!basDevpS.getAutoing().equals("Y") || !basDevpS.getLoading().equals("Y") || basDevpS.getWrkNo()!=wrkMastSta.getWrkNo().intValue()){
                             continue;
                         }
                         StaProtocol staProtocols = devpThread.getStation().get(basDevpS.getDevNo());
@@ -3745,7 +3776,7 @@
                             log.info(date+"鍙栨斁浠诲姟涓嬪彂锛氭湭鏌ヨ鍒扮珯鐐逛俊鎭細"+wrkMastSta);
                             continue;
                         }
-                        if (!staProtocols.isAutoing() || staProtocols.isLoading() || staProtocols.getWorkNo() != wrkMastSta.getWrkNo().intValue()){
+                        if (!staProtocols.isAutoing() || !staProtocols.isLoading() || staProtocols.getWorkNo() != wrkMastSta.getWrkNo().intValue()){
                             continue;
                         }
 
@@ -4221,13 +4252,13 @@
                 ) {
 
                     BasRgvMap basRgvMap = basRgvMapMapper.selectById(rgvProtocol.getRgvNo());
-                    Integer fallMerge = RouteUtils.RouteIndexFarMas(basRgvMap.getRgvNo(), basRgvMap.getEndRoute()); //鑾峰彇鍚堝苟骞叉秹椤�
-                    List<Integer> route = RouteUtils.getRoute(basRgvMap.getStartRoute(),fallMerge);
-                    List<WrkMastSta> wrkMastStaList = wrkMastStaMapper.selectNoInterfereList(route ,route);
-                    if (!wrkMastStaList.isEmpty()){
-                        log.info("灏忚溅瀛樺湪鍙墽琛屼换鍔★紝璺宠繃閬胯锛侊紒4214");
-                        return;
-                    }
+//                    Integer fallMerge = RouteUtils.RouteIndexFarMas(basRgvMap.getRgvNo(), basRgvMap.getEndRoute()); //鑾峰彇鍚堝苟骞叉秹椤�
+//                    List<Integer> route = RouteUtils.getRoute(basRgvMap.getStartRoute(),fallMerge);
+//                    List<WrkMastSta> wrkMastStaList = wrkMastStaMapper.selectNoInterfereList(route ,route);
+//                    if (!wrkMastStaList.isEmpty()){
+//                        log.info("灏忚溅瀛樺湪鍙墽琛屼换鍔★紝璺宠繃閬胯锛侊紒4214");
+//                        return;
+//                    }
                     if (rgvProtocol.getRgvPosI().equals(basRgvMap.getStartRoute())){
 //                    if (!RouteUtils.RgvRunStaSign(rgvProtocol.getRgvPosI(),RouteUtils.RouteIndexFarMas(rgvProtocol.getRgvNo(),rgvRunSta[rgvProtocol.getRgvNo()-1]),rgvProtocol.getRgvNo())){
 //                    if (!RouteUtils.RgvRunStaSign(rgvProtocol.getRgvPosI(),rgvRunSta[rgvProtocol.getRgvNo()-1],rgvProtocol.getRgvNo())){
@@ -4572,6 +4603,9 @@
      * 灏忚溅鍦板浘鏇存柊  鏇存柊閿�
      * */
     public synchronized boolean rgvMapUpdate(BasRgvMap basRgvMapCurrent,Integer staStart,Integer staEnd){
+        if (rgvOpen){
+            return true;
+        }
 
 //        List<Integer> integers = RouteUtils.RouteMapCurrentFar(basRgvMapCurrent.getNowRoute(),staStart,staEnd, basRgvMapCurrent.getLockStartRoute());
         //鏇存柊褰撳墠灏忚溅閿�

--
Gitblit v1.9.1