From deb12de25c41d2b8b20b0b08c9b1338e8a4d8b12 Mon Sep 17 00:00:00 2001
From: cpT <1@123>
Date: 星期四, 19 六月 2025 10:32:17 +0800
Subject: [PATCH] #改造

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |  100 ++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 80 insertions(+), 20 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 86eec76..d1cdeba 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -1768,6 +1768,27 @@
                                     sign=true;
                                 }
                             }
+                            if (sign){
+                                for (RgvSlave.RgvStn rgvStn : rgvSlave.getRgvInSta()) {
+                                    if (rgvStn.getStaNo().equals(staList.get(0))) {
+                                        TaskWrk taskWrk = deviceDetection(rgvStn);
+                                        if (taskWrk != null) {
+                                            Integer outStaNo = BarcodeUtils.getOutStaNo(taskWrk.getOriginTargetPoint());
+                                            for (RgvSlave.RgvStn rgvSuper : rgvSlave.getRgvSuperSta()){
+                                                if (rgvSuper.getStaNo().equals(outStaNo)){
+                                                    System.out.println("杩愯灏辫繎璺宠繃鍚庡洜鏈�杩滃啀娆℃墽琛�==="+rgvSlave.getId()+"===");
+
+                                                    sign=false;
+                                                    break;
+                                                }
+                                            }
+                                        } else {
+                                            return;
+                                        }
+                                        break;
+                                    }
+                                }
+                            }
                         }
 
 
@@ -1847,26 +1868,65 @@
                                 }
                             }
                         }
-//                        if (!sign) {
-//                            //  鍗婅竟鍖哄煙鍐呮斁璐т换鍔�
-//                            for (Integer staNoNow : rangeListOther) {
-//                                for (RgvSlave.RgvStn rgvStn : rgvSlave.getRgvInSta()) {
-//                                    if (rgvStn.getStaNo().equals(staNoNow)) {
-//                                        TaskWrk taskWrk = deviceDetection(rgvStn);
-//                                        if (taskWrk != null) {
-//                                            BasDevpPosition basDevpPosition = basDevpPositionService.selectOne(new EntityWrapper<BasDevpPosition>().eq("DEV_NO", BarcodeUtils.getOutStaNo(taskWrk.getOriginTargetPoint())));
-//                                            if (RouteUtils.CheckIfItIsWithinTheRange(rangeList, basDevpPosition.getPlcPosition(), basDevpPositions, itSmall)) {
-//                                                sign = taskGenerate(rgvSlave, rgvStn, 0);
-//                                            }
-//                                        }
-//                                        break;
-//                                    }
-//                                }
-//                                if (sign) {
-//                                    break;
-//                                }
-//                            }
-//                        }
+                        if (!sign && staList.size()>1) {
+                            for (Integer staNoNow : rangeListOther) {
+                                for (RgvSlave.RgvStn rgvStn : rgvSlave.getRgvInSta()) {
+                                    if (rgvStn.getStaNo().equals(staNoNow)) {
+                                        TaskWrk taskWrk = deviceDetection(rgvStn);
+                                        if (taskWrk != null) {
+                                            Integer outStaNo = BarcodeUtils.getOutStaNo(taskWrk.getOriginTargetPoint());
+                                            for (RgvSlave.RgvStn rgvSuper : rgvSlave.getRgvSuperSta()){
+                                                if (rgvSuper.getStaNo().equals(outStaNo)){
+                                                    System.out.println("鍥犳渶杩滄墽琛屽崐杈瑰尯鍩熷唴鏀捐揣浠诲姟==="+rgvSlave.getId()+"===");
+                                                    BasDevpPosition basDevpPosition = basDevpPositionService.selectOne(new EntityWrapper<BasDevpPosition>().eq("DEV_NO", BarcodeUtils.getOutStaNo(taskWrk.getOriginTargetPoint())));
+                                                    if (RouteUtils.CheckIfItIsWithinTheRange(rangeList, basDevpPosition.getPlcPosition(), basDevpPositions, itSmall)) {
+                                                        sign = taskGenerate(rgvSlave, rgvStn, 0);
+                                                    }
+                                                    break;
+                                                }
+                                            }
+                                        }
+                                        break;
+                                    }
+                                    if (sign) {
+                                        break;
+                                    }
+                                }
+                                if (sign) {
+                                    break;
+                                }
+                            }
+
+                        }else if (!sign && staList.size()==1){
+                            for (Integer staNoNow : rangeList) {
+                                for (RgvSlave.RgvStn rgvStn : rgvSlave.getRgvInSta()) {
+                                    if (rgvStn.getStaNo().equals(staNoNow)) {
+                                        TaskWrk taskWrk = deviceDetection(rgvStn);
+                                        if (taskWrk != null) {
+                                            Integer outStaNo = BarcodeUtils.getOutStaNo(taskWrk.getOriginTargetPoint());
+                                            for (RgvSlave.RgvStn rgvSuper : rgvSlave.getRgvSuperSta()){
+                                                if (rgvSuper.getStaNo().equals(outStaNo)){
+                                                    System.out.println("鍥犳渶杩滄墽琛屽崐杈瑰尯鍩熷唴鏀捐揣浠诲姟==="+rgvSlave.getId()+"===");
+                                                    BasDevpPosition basDevpPosition = basDevpPositionService.selectOne(new EntityWrapper<BasDevpPosition>().eq("DEV_NO", BarcodeUtils.getOutStaNo(taskWrk.getOriginTargetPoint())));
+                                                    if (RouteUtils.CheckIfItIsWithinTheRange(rangeList, basDevpPosition.getPlcPosition(), basDevpPositions, itSmall)) {
+                                                        sign = taskGenerate(rgvSlave, rgvStn, 0);
+                                                    }
+                                                    break;
+                                                }
+                                            }
+                                        }
+                                        break;
+                                    }
+                                    if (sign) {
+                                        break;
+                                    }
+                                }
+                                if (sign) {
+                                    break;
+                                }
+                            }
+
+                        }
                     } else {
                         //鍙敤鍖哄煙灏辫繎鍙栬揣
                         //灏辫繎鎺掑簭

--
Gitblit v1.9.1