From d8c7de6a74121fcb35de8d807b377043e0c89c99 Mon Sep 17 00:00:00 2001
From: Junjie <540245094@qq.com>
Date: 星期二, 09 九月 2025 08:17:56 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |   20 +++++++++++++++-----
 1 files changed, 15 insertions(+), 5 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 d5dbdff..944e371 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -1044,7 +1044,7 @@
                     News.warn("" + mark + " - 1" + " - 12" + " - // F銆丏  搴撲綅={},搴撲綅鐘舵��={}", shallowLoc.getLocNo(), shallowLoc.getLocSts());
                     // 姝ゆ爣璁伴伩鍏嶅娆℃墽琛岀Щ搴撲换鍔�
                     if (Cools.isEmpty(wrkMast.getUpdMk()) || "N".equals(wrkMast.getUpdMk())) {
-                        if (moveLocForDeepLoc(slave, shallowLoc, mark)) {
+                        if (moveLocForDeepLoc(slave, crnProtocol, shallowLoc, mark)) {
                             wrkMast.setUpdMk("Y");
                             wrkMast.setIoPri(14D);
                             wrkMastMapper.updateById(wrkMast);
@@ -1301,7 +1301,7 @@
 //                            if (Cools.isEmpty(wrkMast.getUpdMk()) || "N".equals(wrkMast.getUpdMk())
 //                                || Cools.isEmpty(waitWrkMast)) {
                             if (Cools.isEmpty(waitWrkMast)) {
-                                if (moveLocForDeepLoc(slave, shallowLoc, mark)) {
+                                if (moveLocForDeepLoc(slave, crnProtocol, shallowLoc, mark)) {
                                     wrkMast.setUpdMk("Y");
 //                                    wrkMast.setIoPri(14D);
                                     wrkMastMapper.updateById(wrkMast);
@@ -2429,8 +2429,7 @@
      * 鍥犲弻娣卞簱浣嶉樆濉烇紝瀵规祬搴撲綅杩涜绉昏浆锛堢珛鍗虫墽琛岀増)
      * tip锛氬悓姝�
      */
-    private synchronized boolean moveLocForDeepLoc(CrnSlave crn, LocMast shallowLoc, Integer mark) {
-
+    private synchronized boolean moveLocForDeepLoc(CrnSlave crn, CrnProtocol crnProtocol, LocMast shallowLoc, Integer mark) {
         try {
             News.warnNoLog("" + mark + "moveLocForDeepLoc" + " - 0" + " - 寮�濮嬫墽琛�:鍥犲弻娣卞簱浣嶉樆濉烇紝瀵规祬搴撲綅杩涜绉昏浆锛堢珛鍗虫墽琛岀増)");
             List<Integer> rows = locMastService.queryDistinctRow(crn.getId());
@@ -2438,8 +2437,13 @@
             for (Integer row : rows) {
                 if (Utils.isDeepLoc(slaveProperties, row)) {
                     loc = locMastService.queryFreeLocMast(row, shallowLoc.getLocType1());
-
                     if (loc != null) {
+                        if (crn.getId() == 1) {
+                            if (Utils.getLaneByLocNo(loc.getLocNo()) != crnProtocol.getCrnLane()) {
+                                continue;
+                            }
+                        }
+
                         if (Utils.isDeepLoc(slaveProperties, loc.getLocNo())) {
                             String shallowLocNo = Utils.getShallowLoc(slaveProperties, loc.getLocNo());
                             LocMast shallowLoc1 = locMastService.selectById(shallowLocNo);
@@ -2459,6 +2463,12 @@
                         loc = locMastService.queryFreeLocMast(row, shallowLoc.getLocType1());
 
                         if (null != loc) {//瀵瑰簲娣卞簱浣嶉潪鍦ㄥ簱鐘舵��,涓嶈兘绉诲簱
+                            if (crn.getId() == 1) {
+                                if (Utils.getLaneByLocNo(loc.getLocNo()) != crnProtocol.getCrnLane()) {
+                                    continue;
+                                }
+                            }
+
                             String deepLoc = Utils.getDeepLoc(slaveProperties, loc.getLocNo());
                             LocMast deepLoc1 = locMastService.selectById(deepLoc);
                             if (!deepLoc1.getLocSts().equals("F") && !deepLoc1.getLocSts().equals("D")) {

--
Gitblit v1.9.1