From ddc462832f99c124fbcc9653a0878e18768224cd Mon Sep 17 00:00:00 2001
From: lty <876263681@qq.com>
Date: 星期三, 11 六月 2025 16:19:13 +0800
Subject: [PATCH] #修复bug,检索该排全部空库位进行判断

---
 src/main/java/com/zy/common/service/CommonService.java |   48 +++++++++++++++++++++++++++++-------------------
 1 files changed, 29 insertions(+), 19 deletions(-)

diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java
index 9aa21cb..ad69ab8 100644
--- a/src/main/java/com/zy/common/service/CommonService.java
+++ b/src/main/java/com/zy/common/service/CommonService.java
@@ -108,9 +108,9 @@
 
         // 鐩爣鍫嗗灈鏈哄彿
         int crnNo = whsType;
-        if (!basCrnpService.checkSiteError(crnNo, true)){
-            throw new CoolException("娌℃湁鍙敤鐨勫爢鍨涙満");
-        }
+//        if (!basCrnpService.checkSiteError(crnNo, true)){
+//            throw new CoolException("娌℃湁鍙敤鐨勫爢鍨涙満");
+//        }
 
         StartupDto startupDto = new StartupDto();
 
@@ -209,23 +209,33 @@
                 }
             }
             if (Cools.isEmpty(locMast)) {
-                locMast = locMastService.queryFreeLocMast(curRow, locTypeDto.getLocType1());
-                // 鍥犲簱浣嶇Щ杞�侀渶棰勭暀绌哄簱浣�
-                if (!locMastService.checkEmptyCount(locMast)) {
-                    locMast = null;
-                }
-                // 鐩爣搴撲綅 ===>> 娴呭簱浣嶏紝 鍒欐牎楠屽叾娣卞簱浣嶆槸鍚︿负 F D X
-                if (null != locMast && Utils.isShallowLoc(slaveProperties, locMast.getLocNo())) {
-                    LocMast deepLoc = locMastService.selectById(Utils.getDeepLoc(slaveProperties, locMast.getLocNo()));
-                    if (!deepLoc.getLocSts().equals("F") && !deepLoc.getLocSts().equals("D") && !deepLoc.getLocSts().equals("X")) {
-                        locMast = null;
+                List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>()
+                        .eq("row1", curRow)
+                        .eq("loc_sts", "O")
+                        .eq("loc_type1", locTypeDto.getLocType1())
+                        .orderBy("lev1",true).orderBy("bay1",true));
+                for (LocMast locMast1 : locMasts) {
+                    // 鍥犲簱浣嶇Щ杞�侀渶棰勭暀绌哄簱浣�
+                    if (!locMastService.checkEmptyCount(locMast1)) {
+                        locMast1 = null;
                     }
-                }
-                // 鐩爣搴撲綅 ===>> 娣卞簱浣嶏紝 鍒欐牎楠屽叾娴呭簱浣嶆槸鍚︿负 O
-                if (null != locMast && Utils.isDeepLoc(slaveProperties, locMast.getLocNo())) {
-                    LocMast shallowLoc = locMastService.selectById(Utils.getShallowLoc(slaveProperties, locMast.getLocNo()));
-                    if (!shallowLoc.getLocSts().equals("O")) {
-                        locMast = null;
+                    // 鐩爣搴撲綅 ===>> 娴呭簱浣嶏紝 鍒欐牎楠屽叾娣卞簱浣嶆槸鍚︿负 F D X
+                    if (null != locMast1 && Utils.isShallowLoc(slaveProperties, locMast1.getLocNo())) {
+                        LocMast deepLoc = locMastService.selectById(Utils.getDeepLoc(slaveProperties, locMast1.getLocNo()));
+                        if (!deepLoc.getLocSts().equals("F") && !deepLoc.getLocSts().equals("D") && !deepLoc.getLocSts().equals("X")) {
+                            locMast1 = null;
+                        }
+                    }
+                    // 鐩爣搴撲綅 ===>> 娣卞簱浣嶏紝 鍒欐牎楠屽叾娴呭簱浣嶆槸鍚︿负 O
+                    if (null != locMast1 && Utils.isDeepLoc(slaveProperties, locMast1.getLocNo())) {
+                        LocMast shallowLoc = locMastService.selectById(Utils.getShallowLoc(slaveProperties, locMast1.getLocNo()));
+                        if (!shallowLoc.getLocSts().equals("O")) {
+                            locMast1 = null;
+                        }
+                    }
+                    if (!Cools.isEmpty(locMast1)) {
+                        locMast = locMast1;
+                        break;
                     }
                 }
             }

--
Gitblit v1.9.1