From 9240810b9d52625f861b2dbd481759fa53b5ab7a Mon Sep 17 00:00:00 2001
From: 野心家 <1051256694@qq.com>
Date: 星期一, 24 四月 2023 15:34:43 +0800
Subject: [PATCH] 品上订单修复

---
 src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java |   50 +++++++++++++++++++++++++++++++++++---------------
 1 files changed, 35 insertions(+), 15 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 a82745c..139e22e 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -894,19 +894,41 @@
                 }
             }
 
+        }else {
+            // 璁㈠崟鍏宠仈
+            List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
+            for (WrkDetl wrkDetl : wrkDetls) {
+                if (!Cools.isEmpty(wrkDetl.getOrderNo())) {
+                    if (!orderDetlService.decrease(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getAnfme())) {
+                        throw new CoolException("璁㈠崟鏁版嵁鍥炴粴澶辫触");
+                    }
+                    // 鐢熸垚鏂扮殑鍑哄簱浣滀笟
+//                        stockOutRe(wrkMast, wrkDetls);
+                }
+                //淇敼璁㈠崟涓昏〃鐘舵��,娌℃湁浣滀笟鏁伴噺鏃舵墠鍙互淇敼
+                boolean flag = true;
+                List<OrderDetl> orderDetls = orderDetlService.selectList(new EntityWrapper<OrderDetl>().eq("order_no",wrkDetl.getOrderNo()));
+                for(OrderDetl orderDetl : orderDetls){
+                    if(orderDetl.getWorkQty() > 0){
+                        flag = false;
+                    }
+                }
+                if(flag){
+                    Order order = orderService.selectOne(new EntityWrapper<Order>().eq("order_no",wrkDetl.getOrderNo()));
+                    if(!Cools.isEmpty(order) && order.getSettle()==2){
+                        order.setSettle(1L);
+                        order.setUpdateBy(userId);
+                        order.setUpdateTime(now);
+                    }
+                    if(!orderService.update(order,new EntityWrapper<Order>().eq("order_no",wrkDetl.getOrderNo()))){
+                        throw new CoolException("淇敼璁㈠崟鐘舵�佸け璐�");
+                    }
+                }
+            }
+
         }
 
-        // 璁㈠崟鍏宠仈
-        List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
-        for (WrkDetl wrkDetl : wrkDetls) {
-            if (!Cools.isEmpty(wrkDetl.getOrderNo())) {
-                if (!orderDetlService.decrease(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getAnfme())) {
-                    throw new CoolException("璁㈠崟鏁版嵁鍥炴粴澶辫触");
-                }
-                // 鐢熸垚鏂扮殑鍑哄簱浣滀笟
-//                        stockOutRe(wrkMast, wrkDetls);
-            }
-        }
+
 
         // 鍙栨秷鎿嶄綔浜哄憳璁板綍
         wrkMast.setManuType("鎵嬪姩鍙栨秷");
@@ -970,10 +992,8 @@
         }
         // 鑾峰彇鐩爣绔�
         Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>()
-                .eq("type_no", wrkMast.getIoType() - 50)
-                //閫熻吘鐗规湁鎹℃枡锛� 11绔欐槸鍑哄簱绔欙紝 鐒跺悗鎵嬪姩璧板埌15绔欒繘琛屽啀鍏ュ簱
-
-                .eq("stn_no", 15) // 浣滀笟绔欑偣 = 鎷f枡鍑哄簱鐨勭洰鏍囩珯
+                .eq("type_no", wrkMast.getIoType())
+                .eq("stn_no", wrkMast.getStaNo()) // 浣滀笟绔欑偣 = 鎷f枡鍑哄簱鐨勭洰鏍囩珯
                 .eq("crn_no", wrkMast.getCrnNo()); // 鍫嗗灈鏈哄彿
         StaDesc staDesc = staDescService.selectOne(wrapper);
         if (Cools.isEmpty(staDesc)) {

--
Gitblit v1.9.1