From 27e7ae9c158f7ff2d4576cd85af03feb47c72275 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期日, 28 九月 2025 10:50:43 +0800
Subject: [PATCH] 13

---
 src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java |   34 ++++++++++++++++++++++++++++++++--
 1 files changed, 32 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
index 46e6205..ce1c6c3 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -119,7 +119,7 @@
 //        List<String> matnrs = param.getList().stream().map(FullStoreParam.MatCodeStore::getMatnr).distinct().collect(Collectors.toList());
 //        List<String> batchs = param.getList().stream().map(FullStoreParam.MatCodeStore::getBatch).distinct().collect(Collectors.toList());
         FindLocNoAttributeVo findLocNoAttributeVo = new FindLocNoAttributeVo(param.getList().get(0));
-        StartupDto dto = commonService.getLocNo(1, param.getDevpNo(), findLocNoAttributeVo, locTypeDto);
+        StartupDto dto = commonService.getLocNo(1, param.getDevpNo(), findLocNoAttributeVo, locTypeDto, param.getBarcode());
         if (Cools.isEmpty(dto)) {
             throw new CoolException("鏌ヨ搴撲綅澶辫触锛侊紒==銆媠tartupFullPutStore ==銆� commonService.getLocNo");
         }
@@ -589,7 +589,7 @@
         LocTypeDto locTypeDto = new LocTypeDto(sourceStaNo);
         FindLocNoAttributeVo findLocNoAttributeVo = new FindLocNoAttributeVo();
 
-        StartupDto dto = commonService.getLocNo(10, devpNo, findLocNoAttributeVo, locTypeDto);
+        StartupDto dto = commonService.getLocNo(10, devpNo, findLocNoAttributeVo, locTypeDto, null);
         int workNo = dto.getWorkNo();
         Date now = new Date();
         // 鐢熸垚宸ヤ綔妗�
@@ -832,10 +832,36 @@
         if (Cools.isEmpty(sourceLoc)) {
             throw new CoolException("鏈壘鍒板簱浣�");
         }
+
+        if (Utils.isDeepLoc(slaveProperties, sourceLocNo)) {
+            String shallowLoc = Utils.getShallowLoc(slaveProperties, sourceLocNo);
+            LocMast locMast = locMastService.selectById(shallowLoc);
+            if (locMast == null) {
+                throw new CoolException(shallowLoc + "娴呭簱浣嶄笉瀛樺湪");
+            }
+
+            if(!locMast.getLocSts().equals("O")) {
+                throw new CoolException(shallowLoc + "娴呭簱浣嶇姸鎬佷笉涓虹┖");
+            }
+        }
+
         LocMast loc = locMastService.selectById(locNo);
         if (Cools.isEmpty(loc)) {
             throw new CoolException("鏈壘鍒板簱浣�");
         }
+
+        if (Utils.isDeepLoc(slaveProperties, locNo)) {
+            String shallowLoc = Utils.getShallowLoc(slaveProperties, locNo);
+            LocMast locMast = locMastService.selectById(shallowLoc);
+            if (locMast == null) {
+                throw new CoolException(shallowLoc + "娴呭簱浣嶄笉瀛樺湪");
+            }
+
+            if(!locMast.getLocSts().equals("O")) {
+                throw new CoolException(shallowLoc + "娴呭簱浣嶆湁璐э紝鏃犳硶绉昏浆");
+            }
+        }
+
         // 鍒ゆ柇搴撲綅鏄惁鍐荤粨
         String sourceLocFrozen = locMastMapper.findFirstFrozenLocNo(Arrays.asList(sourceLoc.getLocNo(), loc.getLocNo()));
         if (sourceLocFrozen != null) {
@@ -878,6 +904,7 @@
         wrkMast.setAppeTime(now);
         wrkMast.setModiUser(userId);
         wrkMast.setModiTime(now);
+        wrkMast.setMemo("浜哄伐鎵嬪姩绉诲簱");
         boolean res = wrkMastService.insert(wrkMast);
         if (!res) {
             throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
@@ -1182,6 +1209,9 @@
         if (Cools.isEmpty(wrkMast)) {
             throw new CoolException(workNo + "宸ヤ綔妗d笉瀛樺湪");
         }
+        if (wrkMast.getWrkSts() ==14|| wrkMast.getWrkSts() == 15) {
+            throw new CoolException(workNo + "宸ヤ綔妗e凡瀹屾垚涓嶅厑璁稿彇娑�");
+        }
         String locNo = ""; // 寰呬慨鏀圭洰鏍囧簱浣�
         String locSts = ""; // 寰呬慨鏀圭洰鏍囧簱浣嶇姸鎬�
         // 鍏ュ簱鍙栨秷锛堜慨鏀圭洰鏍囧簱浣嶏級

--
Gitblit v1.9.1