From 936eec28271690fe40fd85cba87bcd8274bb11b3 Mon Sep 17 00:00:00 2001
From: Administrator <335182714>
Date: 星期五, 26 九月 2025 15:32:24 +0800
Subject: [PATCH] 订单出库显示明细是否完成修复

---
 src/main/java/com/zy/common/service/CommonService.java |   27 +++++++++++++++++++++++----
 1 files changed, 23 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java
index fd6c66a..c269c0f 100644
--- a/src/main/java/com/zy/common/service/CommonService.java
+++ b/src/main/java/com/zy/common/service/CommonService.java
@@ -175,21 +175,35 @@
                 .gt("bay1",columnNum));
 
         // 娣卞簱浣嶆病鏈夊垯鎼滅储娴呭簱浣�
-        if (locMasts.isEmpty()) {
-            locMasts = locMastService.selectList(new EntityWrapper<LocMast>()
+//        if (locMasts.isEmpty()) {
+            List<LocMast> locMasts2 = locMastService.selectList(new EntityWrapper<LocMast>()
                     .eq("loc_sts","O").in("crn_no",crnNoList).in("row1","2,3,6,7,10,11,14,15,18,19,22,23").orderBy("lev1,bay1,row1")
                     .gt("bay1",columnNum));
-        }
+            if(!locMasts2.isEmpty()) {
+                locMasts.addAll(locMasts2);
+            }
+//        }
         if (locMasts.isEmpty()) {
             throw new CoolException("娌℃湁鍙敤搴撲綅");
         }
-
+        // 娴呭簱浣�
+        String[] split = "02,03,06,07,10,11,14,15,18,19,22,23".split(",");
         // 璁板綍鍫嗗灈鏈烘槸鍚︽煡璇㈣繃锛岄伩鍏嶉噸澶嶆煡璇�
         Map<Integer,Boolean> crnMap = new HashMap<>();
         for (LocMast mast : locMasts) {
             if (crnMap.get(mast.getCrnNo()) == null) {
                 //棰勭暀绌哄簱浣�
                 if (locMastService.checkEmptyCount(mast, 10)) {
+                    Integer row1 = mast.getRow1();
+                    if(slaveProperties.getDoubleLocs().contains(row1)){
+                        // 鍙栨祬搴撲綅
+                        String s = split[slaveProperties.getDoubleLocs().indexOf(row1)];
+                        LocMast locMast1 = locMastService.selectById(s + mast.getLocNo().substring(2));
+                        if(locMast1 != null && !locMast1.getLocSts().equals("O")) {
+                            log.warn("鍏ュ簱鍒嗛厤搴撲綅锛歿}锛屽搴旀祬搴撲綅{}涓嶄负绌猴細{}",mast.getLocNo(),locMast1.getLocNo(),locMast1.getLocSts());
+                            continue;
+                        }
+                    }
                     locMast = mast;
                     break;
                 } else {
@@ -198,6 +212,11 @@
             }
         }
 
+        if (locMast == null) {
+            log.error("鍏ュ簱璇锋眰搴撲綅涓嶈冻锛屽墿浣欏簱浣嶄笉瓒�/涓嶆弧瓒冲叆搴撴潯浠�");
+            throw new CoolException("鍏ュ簱璇锋眰搴撲綅涓嶈冻锛屽墿浣欐暟閲忎笉瓒�/涓嶆弧瓒冲叆搴撴潯浠�");
+        }
+
         return locMast;
     }
 

--
Gitblit v1.9.1