From 83c548d3dba59aaed9b52b5d413c6912a87d2efc Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期日, 16 六月 2024 15:50:14 +0800
Subject: [PATCH] #

---
 zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/MobileServiceImpl.java |   59 +++++++++++++++++++++++++++++++++--------------------------
 1 files changed, 33 insertions(+), 26 deletions(-)

diff --git a/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/MobileServiceImpl.java b/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/MobileServiceImpl.java
index fe051e7..d512408 100644
--- a/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/MobileServiceImpl.java
+++ b/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/MobileServiceImpl.java
@@ -124,6 +124,9 @@
                 }
 
                 DetlDto detlDto = new DetlDto(elem.getMatnr(), elem.getBatch(), elem.getAnfme());
+                detlDto.setWarehouse(orderDetl.getThreeCode());//鏉ユ簮浠撳簱
+                detlDto.setOrigin(orderDetl.getSupp());//鏉ユ簮鍗曞彿
+                detlDto.setOriginNo(orderDetl.getSuppCode());//鏉ユ簮搴忓彿
                 if (DetlDto.has(detlDtos, detlDto)) {
                     DetlDto one = DetlDto.find(detlDtos, detlDto.getMatnr(), detlDto.getBatch());
                     assert one != null;
@@ -144,6 +147,9 @@
                 waitPakin.setZpallet(param.getBarcode());   // 鎵樼洏鐮�
                 waitPakin.setIoStatus("N");     // 鍏ュ嚭鐘舵��
                 waitPakin.setAnfme(detlDto.getAnfme());  // 鏁伴噺
+                waitPakin.setThreeCode(detlDto.getWarehouse());  // 浠撳簱
+                waitPakin.setSupp(detlDto.getOrigin());  // 鏉ユ簮鍗曞彿
+                waitPakin.setSuppCode(detlDto.getOriginNo());  // 鏉ユ簮搴忓彿
                 waitPakin.setStatus("Y");    // 鐘舵��
                 waitPakin.setAppeUser(userId);
                 waitPakin.setAppeTime(now);
@@ -305,6 +311,7 @@
     }
 
     @Override
+    @Transactional
     public R WarehouseOut(CombParam combParam, Long hostId) {
         //鍒ゆ柇搴撲綅鐘舵��
         LocMast locMast = locMastService.getOne(new LambdaQueryWrapper<LocMast>().eq(LocMast::getLocNo, combParam.getLocno()).eq(LocMast::getHostId,hostId));
@@ -329,6 +336,32 @@
             if (combMat.getAnfme() > locDetl.getAnfme()){
                 return R.error("涓嬫灦鏁伴噺閿欒锛岃秴鍑哄簱瀛樻暟閲�");
             }
+            if (!Cools.isEmpty(combParam.getOrderNo())){
+                Order order = orderService.selectByNo(combParam.getOrderNo(), hostId);
+                if (Cools.isEmpty(order)){
+                    continue;
+                }
+                if (order.getSettle() == 1){
+                    orderService.updateSettle(order.getId(), 2L, 9527L, hostId);
+                }
+                OrderDetl orderDetl = orderDetlService.selectItem(order.getId(), combMat.getMatnr(), combMat.getBatch(),hostId);
+                if (Cools.isEmpty(orderDetl)){
+                    continue;
+                }
+                if (orderDetl.getAnfme() < orderDetl.getWorkQty()+combMat.getAnfme()){
+                    throw new CoolException("涓嬫灦鏁伴噺鍑洪敊");
+                }
+                // 淇敼璁㈠崟鏄庣粏浣滀笟鏁伴噺
+                if (!orderDetlService.increaseWorkQtyByOrderNo(combParam.getOrderNo(), combMat.getMatnr(), combMat.getBatch(), combMat.getAnfme(), hostId)) {
+                    throw new CoolException("淇敼鍗曟嵁鏄庣粏宸ヤ綔鏁伴噺澶辫触");
+                }
+                // 淇敼璁㈠崟鏄庣粏瀹屾垚鏁伴噺
+                if (!orderDetlService.increase(order.getId(), hostId, combMat.getMatnr(), combMat.getBatch(), combMat.getAnfme())) {
+                    throw new CoolException("淇敼鍗曟嵁鏄庣粏瀹屾垚鏁伴噺澶辫触");
+                }
+                // 淇敼璁㈠崟鐘舵�� 浣滀笟涓� ===>> 宸插畬鎴�
+                orderService.checkComplete(combParam.getOrderNo(), hostId);
+            }
             try {
                 //澶勭悊搴撳瓨淇℃伅
                 if (combMat.getAnfme().equals(locDetl.getAnfme())){
@@ -348,32 +381,6 @@
             }catch (Exception e){
                 throw new CoolException("鏇存柊搴撳瓨鏁版嵁鍑洪敊"+e.getMessage());
             }
-
-            if (!Cools.isEmpty(combParam.getOrderNo())){
-                Order order = orderService.selectByNo(combParam.getOrderNo(), hostId);
-                if (Cools.isEmpty(order)){
-                    continue;
-                }
-                OrderDetl orderDetl = orderDetlService.selectItem(order.getId(), combMat.getMatnr(), combMat.getBatch(),hostId);
-                if (Cools.isEmpty(orderDetl)){
-                    continue;
-                }
-                if (orderDetl.getWorkQty() < orderDetl.getWorkQty()+combMat.getAnfme()){
-                    throw new CoolException("涓嬫灦鏁伴噺鍑洪敊");
-                }
-                // 淇敼璁㈠崟鏄庣粏浣滀笟鏁伴噺
-                if (!orderDetlService.increaseWorkQtyByOrderNo(combParam.getOrderNo(), combMat.getMatnr(), combMat.getBatch(), combMat.getAnfme(), hostId)) {
-                    throw new CoolException("淇敼鍗曟嵁鏄庣粏宸ヤ綔鏁伴噺澶辫触");
-                }
-                // 淇敼璁㈠崟鏄庣粏瀹屾垚鏁伴噺
-                if (!orderDetlService.increase(order.getId(), hostId, combMat.getMatnr(), combMat.getBatch(), combMat.getAnfme())) {
-                    throw new CoolException("淇敼鍗曟嵁鏄庣粏瀹屾垚鏁伴噺澶辫触");
-                }
-                // 淇敼璁㈠崟鐘舵�� 浣滀笟涓� ===>> 宸插畬鎴�
-                orderService.checkComplete(combParam.getOrderNo(), hostId);
-            }
-
-
         }
 
 

--
Gitblit v1.9.1