From ebf0db91e09be33fcbfe97ed5b91965dc2e61dfd Mon Sep 17 00:00:00 2001
From: zyx <zyx123456>
Date: 星期四, 01 八月 2024 10:54:26 +0800
Subject: [PATCH] 1. 托盘管理 2. 入库通知档导入功能 3. 工作档明细 新增来源单据类型及单据编号 4. 库存明细统计表 增加一栏ERP数量(需跟ERP确认接口实现方式)。 5. 存货档案、单据管理、库存管理可以支持模糊搜索(各个单据界面)。

---
 zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/CommonService.java |   38 ++++++++++++++++++++++++++++----------
 1 files changed, 28 insertions(+), 10 deletions(-)

diff --git a/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/CommonService.java b/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/CommonService.java
index 37c6eb6..6ceab94 100644
--- a/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/CommonService.java
+++ b/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/CommonService.java
@@ -46,6 +46,8 @@
     @Autowired
     private LocDirectionService locDirectionService;
 
+    private Long WHS_TYPE = 0L;//榛樿绔嬪簱
+
     /**
      * 鐢熸垚宸ヤ綔鍙�
      *
@@ -91,6 +93,11 @@
      */
     @Transactional
     public StartupDto getLocNo(Integer staDescId, Integer sourceStaNo, List<String> matnrs, String batch, Long hostId, LocTypeDto locTypeDto, int times) {
+        if (sourceStaNo==999){//骞冲簱鍐呯疆鍒ゆ柇绔欑偣锛堜复鏃惰В鍐虫柟妗堬級
+            WHS_TYPE = 1L;//骞冲簱
+        } else {
+            WHS_TYPE = 0L;//绔嬪簱
+        }
         // 鐩爣搴撲綅
         LocMast locMast = null;
 
@@ -150,7 +157,7 @@
                 continue;
             }
 
-            List<LocMast> locMasts = locMastService.queryFreeLocMast2(locTypeDto.getLocType1(), locRule.getRowBeg(), locRule.getRowEnd(), locRule.getBayBeg(), locRule.getBayEnd(), locRule.getLevBeg(), locRule.getLevEnd(), hostId);
+            List<LocMast> locMasts = locMastService.queryFreeLocMast2(locTypeDto.getLocType1(), locRule.getRowBeg(), locRule.getRowEnd(), locRule.getBayBeg(), locRule.getBayEnd(), locRule.getLevBeg(), locRule.getLevEnd(), hostId,WHS_TYPE);
             for (LocMast locMast0 : locMasts) {
                 //棰勭暀绌哄簱浣�
                 if (locMastService.checkEmptyCount(locMast0, 10, hostId)) {
@@ -237,12 +244,14 @@
                     .eq(LocMast::getLocSts, "D")
                     .eq(LocMast::getLocType1, locTypeDto.getLocType1())
                     .eq(LocMast::getCrnNo, staDesc.getDeviceNo())
+                    .eq(LocMast::getWhsType, WHS_TYPE)
                     .eq(LocMast::getHostId, hostId);
 
             LambdaQueryWrapper<LocMast> wrapper1 = new LambdaQueryWrapper<LocMast>()
                     .eq(LocMast::getLocSts, "O")
                     .eq(LocMast::getLocType1, locTypeDto.getLocType1())
                     .eq(LocMast::getCrnNo, staDesc.getDeviceNo())
+                    .eq(LocMast::getWhsType, WHS_TYPE)
                     .eq(LocMast::getHostId, hostId);
 
             //搴撲綅鎼滅储鑼冨洿
@@ -312,8 +321,14 @@
         LambdaQueryWrapper<LocMast> wrapper1 = new LambdaQueryWrapper<LocMast>()
                 .eq(LocMast::getLocSts, "O")
                 .eq(LocMast::getHostId, hostId)
-                .in(LocMast::getRow1, curRow)
-                .orderByAsc(LocMast::getLev1);
+                .eq(LocMast::getLocType1, locTypeDto.getLocType1())
+                .le(LocMast::getRow1, eRow)
+                .ge(LocMast::getRow1, sRow)
+//                .in(LocMast::getRow1, curRow)
+                .orderByAsc(LocMast::getLev1)
+                .orderByAsc(LocMast::getBay1);
+
+
         //搴撲綅鎼滅储鑼冨洿
         LocRangeDto locRangeDto = locTypeDto.getLocRangeDto();
         if (locRangeDto != null) {
@@ -328,18 +343,21 @@
         for (LocMast mast : locMasts) {
             LocMast innerLoc = null;
             for (String loc : Utils.getGroupLoc(mast.getLocNo(), hostId)) {
+                //1 2
                 LocMast one = locMastService.getOne(new LambdaQueryWrapper<LocMast>().eq(LocMast::getLocNo, loc).eq(LocMast::getHostId, hostId));
                 if (!one.getLocSts().equals("O")) {
-                    innerLoc = null;
+//                    innerLoc = null;
                     continue;
                 }
 
-                if (innerLoc == null) {
-                    List<Integer> innerDeepRow = locDirectionService.getInnerDeepRow(hostId);
-                    if (innerDeepRow.contains(one.getRow1())) {
-                        innerLoc = one;
-                    }
-                }
+                innerLoc = one;
+
+//                if (innerLoc == null) {
+//                    List<Integer> innerDeepRow = locDirectionService.getInnerDeepRow(hostId);
+////                    if (innerDeepRow.contains(one.getRow1())) {
+//                    innerLoc = one;
+////                    }
+//                }
             }
 
             if(innerLoc == null) {

--
Gitblit v1.9.1