From d22260317e0e4e7854205ac66b900c035c342c0f Mon Sep 17 00:00:00 2001
From: Junjie <xjj@123>
Date: 星期六, 07 六月 2025 15:38:49 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java |   32 ++++++++++++++++++++++++--------
 1 files changed, 24 insertions(+), 8 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
index f6962d0..ee6392b 100644
--- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -76,6 +76,12 @@
     private ManLocDetlMapper manLocDetlMapper;
 
     @Autowired
+    private InventoryCheckOrderService inventoryCheckOrderService;
+
+    @Autowired
+    private InventoryCheckOrderDetlService inventoryCheckOrderDetlService;
+
+    @Autowired
     private AdjDetlService adjDetlService;
 
     @Resource
@@ -573,7 +579,7 @@
         Date now = new Date();
 
         // 鏃犲崟缁勬墭
-        if (Cools.isEmpty(param.getOrderNo())) {
+        if (Cools.isEmpty(param.getCombMats().get(0).getOrderNo())) {
 
             // 鐢熸垚鍏ュ簱閫氱煡妗�
             List<DetlDto> detlDtos = new ArrayList<>();
@@ -597,6 +603,7 @@
                 }
                 WaitPakin waitPakin = new WaitPakin();
                 waitPakin.sync(mat);
+                waitPakin.setWeight(detlDto.getWeight());
                 waitPakin.setBatch(detlDto.getBatch());
                 waitPakin.setZpallet(param.getBarcode());   // 鎵樼洏鐮�
                 waitPakin.setIoStatus("N");     // 鍏ュ嚭鐘舵��
@@ -619,17 +626,20 @@
             // 鍏宠仈缁勬墭
         } else {
 //            Order order = orderService.selectByNo(param.getOrderNo());
-            Order order = OrderInAndOutUtil.selectByNo(Boolean.TRUE, param.getOrderNo());
-            if (Cools.isEmpty(order) || order.getSettle() > 2) {
-                throw new CoolException("鍗曟嵁缂栧彿宸茶繃鏈�");
-            }
+
             // 鐢熸垚鍏ュ簱閫氱煡妗�
             List<DetlDto> detlDtos = new ArrayList<>();
 
             param.getCombMats().forEach(elem -> {
+                Order order = OrderInAndOutUtil.selectByNo(Boolean.TRUE, elem.getOrderNo());
+                if (Cools.isEmpty(order)) {
+                    throw new CoolException("鍗曟嵁缂栧彿涓嶅瓨鍦�");
+                }
+                if (order.getSettle() > 2) {
+                    throw new CoolException("鍗曟嵁缂栧彿宸蹭綔涓氬畬鎴�");
+                }
 
                 // 璁㈠崟鏄庣粏鏁伴噺鏍¢獙
-//                OrderDetl orderDetl = orderDetlService.selectItem(order.getId(), elem.getMatnr(), elem.getBatch());
                 OrderDetl orderDetl = OrderInAndOutUtil.selectItem(Boolean.TRUE, order.getId(), elem.getMatnr(), elem.getBatch(), elem.getBrand(), elem.getStandby1(), elem.getStandby2(), elem.getStandby3(),
                         elem.getBoxType1(), elem.getBoxType2(), elem.getBoxType3());
                 if (elem.getAnfme() > orderDetl.getEnableQty()) {
@@ -643,6 +653,7 @@
                         elem.getBoxType1(), elem.getBoxType2(), elem.getBoxType3(), elem.getAnfme());
                 DetlDto detlDto = new DetlDto(elem.getMatnr(), elem.getBatch(), elem.getBrand(), elem.getStandby1(), elem.getStandby2(), elem.getStandby3(),
                         elem.getBoxType1(), elem.getBoxType2(), elem.getBoxType3(), elem.getAnfme());
+                detlDto.setOrderNo(elem.getOrderNo());
                 if (DetlDto.has(detlDtos, detlDto)) {
                     DetlDto one = DetlDto.findDto(detlDtos, detlDto);
                     assert one != null;
@@ -650,6 +661,8 @@
                 } else {
                     detlDtos.add(detlDto);
                 }
+
+                OrderInAndOutUtil.updateOrder(Boolean.TRUE, order.getId(), 2L, userId);
             });
             for (DetlDto detlDto : detlDtos) {
                 Mat mat = matService.selectByMatnr(detlDto.getMatnr());
@@ -658,7 +671,7 @@
                 }
                 WaitPakin waitPakin = new WaitPakin();
                 waitPakin.sync(mat);
-                waitPakin.setOrderNo(order.getOrderNo());   // 鍗曟嵁缂栧彿
+                waitPakin.setOrderNo(detlDto.getOrderNo());   // 鍗曟嵁缂栧彿
                 waitPakin.setBatch(detlDto.getBatch());     // 搴忓垪鐮�
                 waitPakin.setZpallet(param.getBarcode());   // 鎵樼洏鐮�
                 waitPakin.setIoStatus("N");     // 鍏ュ嚭鐘舵��
@@ -679,7 +692,7 @@
                 }
             }
 //            orderService.updateSettle(order.getId(), 2L, userId);
-            OrderInAndOutUtil.updateOrder(Boolean.TRUE, order.getId(), 2L, userId);
+
         }
 
     }
@@ -780,6 +793,9 @@
                             throw new CoolException(wrkMast.getWrkNo() + "鐩樼偣浠诲姟锛�" + wrkDetl.getMatnr() + "鍟嗗搧锛�" + wrkDetl.getBatch() + "鎵瑰彿淇敼鏁伴噺澶辫触");
                         }
                     }
+                    //濡傛灉宸茬粡鎷f枡鍥炲簱锛屽氨闇�瑕佸彇locNo瀛楁
+//                    String locNo =Cools.isEmpty(wrkMast.getLocNo())?  wrkMast.getSourceLocNo():wrkMast.getLocNo();
+//                    inventoryCheckOrderDetlService.selectList(new EntityWrapper<InventoryCheckOrderDetl>().eq("loc_no",locNo))
                     iterator.remove();
                     iterator1.remove();
                 }

--
Gitblit v1.9.1