From 9739f6cc03f34716a61a5f31237fbe310d9556e1 Mon Sep 17 00:00:00 2001
From: dubin <bindu_bean@163.com>
Date: 星期一, 24 十一月 2025 12:40:29 +0800
Subject: [PATCH] #1

---
 src/main/java/com/zy/common/service/CommonService.java |   28 +++++++++++++++++++++++++---
 1 files changed, 25 insertions(+), 3 deletions(-)

diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java
index 5afb923..4f543ca 100644
--- a/src/main/java/com/zy/common/service/CommonService.java
+++ b/src/main/java/com/zy/common/service/CommonService.java
@@ -316,7 +316,14 @@
 
         // 1.鎸夎鍒欐煡鎵惧簱浣�
         if (Cools.isEmpty(locMast) && crnNo != 0) {
-            List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>().eq("row1", nearRow).eq("loc_sts", "O"));
+            List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>().eq("row1", nearRow).eq("loc_sts", "O").eq("loc_type1",locTypeDto.getLocType1()));
+            if (Cools.isEmpty(locMasts)){
+                // 褰撳墠宸烽亾鏃犵┖搴撲綅鏃讹紝閫掑綊璋冩暣鑷充笅涓�宸烽亾锛屾绱㈠叏閮ㄥ贩閬撴棤鏋滃悗锛岃烦鍑洪�掑綊
+                if (times < rowCount) {
+                    times = times + 1;
+                    return getLocNo(1, staDescId, sourceStaNo, matnr, batch, grade, moveCrnNo, locTypeDto, times);
+                }
+            }
             List<LocMast> locMastList = new ArrayList<>();
             locMasts.sort(new Comparator<LocMast>() {
                 @Override
@@ -338,11 +345,26 @@
                     continue;
                 }
                 String shallowLoc = Utils.getDeepLoc(slaveProperties, locMast1.getLocNo());
-                LocMast locMast2 = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", shallowLoc).eq("loc_sts", "O"));
-                if (!Cools.isEmpty(locMast2)) {
+                LocMast locMast2 = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", shallowLoc));
+                if (Cools.isEmpty(locMast2)){
+                    continue;
+                }
+                if (locMast2.getLocSts().equals("P")||locMast2.getLocSts().equals("Q")||locMast2.getLocSts().equals("R")||locMast2.getLocSts().equals("S")){
+                    continue;
+                }
+                if (!Cools.isEmpty(locMast2)&&locMast2.getLocSts().equals("O")){
                     locMast = locMast2;
                     break;
                 }
+                if (!Cools.isEmpty(locMast2)&&(locMast2.getLocSts().equals("F")||locMast2.getLocSts().equals("D"))){
+                    locMast = locMast1;
+                    break;
+                }
+//                LocMast locMast2 = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", shallowLoc).eq("loc_sts", "O"));
+//                if (Cools.isEmpty(locMast2)) {
+//                    locMast = locMast1;
+//                    break;
+//                }
             }
         }
 

--
Gitblit v1.9.1