From e3a51d700785c45f63b610cbf75e8f74070e9c2b Mon Sep 17 00:00:00 2001
From: Junjie <540245094@qq.com>
Date: 星期一, 03 六月 2024 09:48:22 +0800
Subject: [PATCH] #

---
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/task/handler/WorkMastHandler.java |   63 ++++++++++++++++++++++++-------
 zy-asrs-wms/src/main/webapp/views/order/order.html                          |   16 ++++----
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/OrderController.java   |   10 ++++-
 zy-asrs-wms/src/main/webapp/static/js/order/order.js                        |    4 +-
 zy-asrs-common/src/main/java/com/zy/asrs/common/wms/entity/OrderDetl.java   |    7 ++-
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/OutController.java     |    2 
 6 files changed, 72 insertions(+), 30 deletions(-)

diff --git a/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/entity/OrderDetl.java b/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/entity/OrderDetl.java
index 7a900d3..78cb906 100644
--- a/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/entity/OrderDetl.java
+++ b/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/entity/OrderDetl.java
@@ -482,9 +482,12 @@
     }
 
     public Double getEnableQty() {
-        if (null != this.anfme && this.qty != null) {
-            return this.anfme - this.qty;
+        if (null != this.anfme && this.workQty != null) {
+            return this.anfme - this.workQty;
         }
+//        if (null != this.anfme && this.qty != null) {
+//            return this.anfme - this.qty;
+//        }
         return null;
     }
 
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/OrderController.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/OrderController.java
index d2dbdac..d8fbe6f 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/OrderController.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/OrderController.java
@@ -211,10 +211,12 @@
         double totalQty = 0;
         double wrkQty = 0;
         double lackQty = 0;
+        double endQty = 0;
         for (OrderDetl orderDetl : orderDetls) {
             totalQty = totalQty + orderDetl.getAnfme();
-            wrkQty = wrkQty + orderDetl.getQty();
-            double issued = Optional.of(orderDetl.getAnfme() - orderDetl.getQty()).orElse(0.0D);
+            wrkQty = wrkQty + orderDetl.getWorkQty();
+            endQty = endQty + orderDetl.getQty();
+            double issued = Optional.of(orderDetl.getAnfme() - orderDetl.getWorkQty()).orElse(0.0D);
             if (issued > 0.0) {
                 List<LocDetl> locDetls = locDetlService.queryStock(orderDetl.getMatnr(), orderDetl.getBatch(), hostId);
                 for (LocDetl locDetl : locDetls) {
@@ -236,6 +238,9 @@
             WrkMast wrkMast = wrkMastService.getOne(new LambdaQueryWrapper<WrkMast>().eq(WrkMast::getWrkNo, wrkDetl.getWrkNo()).eq(WrkMast::getIoTime, wrkDetl.getIoTime()));
             if (wrkMast == null) {
                 WrkMastLog wrkMastLog = wrkMastLogService.getOne(new LambdaQueryWrapper<WrkMastLog>().eq(WrkMastLog::getWrkNo, wrkDetl.getWrkNo()).eq(WrkMastLog::getIoTime, wrkDetl.getIoTime()));
+                if (wrkMastLog.getIoType()==103){
+                    wrkMastLog = wrkMastLogService.getOne(new LambdaQueryWrapper<WrkMastLog>().eq(WrkMastLog::getWrkNo, wrkDetl.getWrkNo()).eq(WrkMastLog::getIoTime, wrkDetl.getIoTime()).eq(WrkMastLog::getIoType,53));
+                }
                 if (wrkMastLog != null) {
                     wrkMast = new WrkMast();
                     BeanUtils.copyProperties(wrkMastLog, wrkMast);
@@ -264,6 +269,7 @@
                 .add("totalQty", totalQty)
                 .add("wrkQty", wrkQty)
                 .add("lackQty", lackQty)
+                .add("endQty",endQty)
         );
     }
 
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/OutController.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/OutController.java
index 44bd1fc..d804dc8 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/OutController.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/OutController.java
@@ -54,7 +54,7 @@
         Set<String> exist = new HashSet<>();
 
         for (OrderDetl orderDetl : orderDetls) {
-            double issued = Optional.of(orderDetl.getAnfme() - orderDetl.getQty()).orElse(0.0D);
+            double issued = Optional.of(orderDetl.getAnfme() - orderDetl.getWorkQty()).orElse(0.0D);
             if (issued <= 0.0D) { continue; }
             List<LocDetl> locDetls = locDetlService.queryStock(orderDetl.getMatnr(), orderDetl.getBatch(), hostId);
             for (LocDetl locDetl : locDetls) {
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/task/handler/WorkMastHandler.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/task/handler/WorkMastHandler.java
index e9e63ee..6ba2ac1 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/task/handler/WorkMastHandler.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/task/handler/WorkMastHandler.java
@@ -106,21 +106,21 @@
                             }
                         }
 
-                        // 鏇存柊鍏ュ簱閫氱煡妗� ioStatus ===>> Y
+                        // 鏇存柊璁㈠崟瀹屾垚鏁伴噺
+                        OrderDetl orderDetl = orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), hostId);
+                        if (orderDetl==null){
+                            orderDetl = orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), null, hostId);
+                        }
                         try {
-//                            Wrapper<WaitPakin> wrapper = new EntityWrapper<WaitPakin>()
-//                                    .eq("zpallet", wrkDetl.getZpallet())
-//                                    .eq("matnr", wrkDetl.getMatnr())
-//                                    .eq("anfme", wrkDetl.getAnfme());
-//                            if (Cools.isEmpty(wrkDetl.getBatch())) {
-//                                wrapper.eq("batch", wrkDetl.getBatch());
-//                            } else {
-//                                wrapper.isNull("batch").or().eq("batch", "");
-//                            }
-//                            WaitPakin setParam = new WaitPakin();
-//                            setParam.setIoStatus("Y");
-//                            setParam.setModiTime(now);
-//                            waitPakinService.update(setParam, wrapper);
+                            if(!Cools.isEmpty(orderDetl)){
+                                if (!orderDetlService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(),
+                                        orderDetl.getBatch(), wrkDetl.getAnfme(), hostId)) {
+//                                    exceptionHandle("鍏ㄦ澘鍏ュ簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触锛沎workNo={0}],[locNo={1}]",
+//                                            wrkMast.getWrkNo(), wrkMast.getLocNo());
+                                    TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+                                    return FAIL.setMsg("鍏ㄦ澘鍏ュ簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]");
+                                }
+                            }
                         } catch (Exception ignore){}
 
                     }
@@ -151,6 +151,24 @@
                                 exceptionHandle("鎷f枡鍏ュ簱 ===>> 淇敼搴撳瓨鏄庣粏鏁伴噺澶辫触锛沎workNo={0}],[locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo());
                             }
                         }
+
+                        // 鏇存柊璁㈠崟瀹屾垚鏁伴噺
+                        OrderDetl orderDetl = orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), hostId);
+                        if (orderDetl==null){
+                            orderDetl = orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), null, hostId);
+                        }
+                        try {
+                            if(!Cools.isEmpty(orderDetl)){
+                                if (!orderDetlService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(),
+                                        orderDetl.getBatch(), wrkDetl.getAnfme(), hostId)) {
+//                                    exceptionHandle("鎷f枡鍏ュ簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触锛沎workNo={0}],[locNo={1}]",
+//                                            wrkMast.getWrkNo(), wrkMast.getLocNo());
+                                    TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+                                    return FAIL.setMsg("鎷f枡鍏ュ簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]");
+                                }
+                            }
+                        } catch (Exception ignore){}
+
                     }
                     // 淇敼搴撲綅鐘舵�� Q ====>> F
                     if (locMast.getLocSts().equals("Q")) {
@@ -315,7 +333,22 @@
                         exceptionHandle("鍏ㄦ澘鍑哄簱 ===>> 宸ヤ綔鏄庣粏妗d负绌猴紱[workNo={0}]", wrkMast.getWrkNo());
                     }
                     for (WrkDetl wrkDetl : wrkDetls101) {
-                        // todo:luxiaotao 3)淇敼鍑哄簱閫氱煡妗� status ==> Y
+                        // 鏇存柊璁㈠崟瀹屾垚鏁伴噺
+                        OrderDetl orderDetl = orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), hostId);
+                        if (orderDetl==null){
+                            orderDetl = orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), null, hostId);
+                        }
+                        try {
+                            if(!Cools.isEmpty(orderDetl)){
+                                if (!orderDetlService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(),
+                                        orderDetl.getBatch(), wrkDetl.getAnfme(), hostId)) {
+//                                    exceptionHandle("鍏ㄦ澘鍑哄簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触锛沎workNo={0}],[locNo={1}]",
+//                                            wrkMast.getWrkNo(), wrkMast.getLocNo());
+                                    TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+                                    return FAIL.setMsg("鍏ㄦ澘鍑哄簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]");
+                                }
+                            }
+                        } catch (Exception ignore){}
                     }
                     // 鍒犻櫎宸ヤ綔妗f簮搴撲綅鐨勫簱瀛樻槑缁�
                     if (!locDetlService.remove(new LambdaQueryWrapper<LocDetl>().eq(LocDetl::getLocNo, wrkMast.getSourceLocNo()).eq(LocDetl::getHostId, hostId))) {
diff --git a/zy-asrs-wms/src/main/webapp/static/js/order/order.js b/zy-asrs-wms/src/main/webapp/static/js/order/order.js
index 8717868..db68dae 100644
--- a/zy-asrs-wms/src/main/webapp/static/js/order/order.js
+++ b/zy-asrs-wms/src/main/webapp/static/js/order/order.js
@@ -565,7 +565,7 @@
                                 var traceCharts = echarts.init(document.getElementById('wrkTraceCharts'));
                                 var traceOptions = {
                                     title: {
-                                        text: '浣滀笟/鎬婚噺', x: 'center', y: '38%',
+                                        text: '鎬婚噺/浣滀笟/瀹屾垚', x: 'center', y: '38%',
                                         textStyle: {fontSize: 18, color: '#262626', fontWeight: 'normal'},
                                         subtextStyle: {fontSize: 36, color: '#10B4E8'},
                                         itemGap: 20
@@ -578,7 +578,7 @@
                                 // 璧嬪��
                                 traceCharts.setOption({
                                     title: {
-                                        subtext: res.data.wrkQty+"/"+res.data.totalQty
+                                        subtext: res.data.totalQty+"/"+res.data.wrkQty+"/"+res.data.endQty
                                     },
                                     series: [
                                         {
diff --git a/zy-asrs-wms/src/main/webapp/views/order/order.html b/zy-asrs-wms/src/main/webapp/views/order/order.html
index efb608c..3cb4f04 100644
--- a/zy-asrs-wms/src/main/webapp/views/order/order.html
+++ b/zy-asrs-wms/src/main/webapp/views/order/order.html
@@ -257,18 +257,18 @@
                         </div>
 
                         <table class="layui-table" lay-skin="nob" style="width: 80%">
-                            <thead>
-                            <tr style="background: none">
-                                <td>No.</td>
-                                <td>鍟嗗搧缂栧彿</td>
-                                <td>鏁伴噺</td>
-                            </tr>
-                            </thead>
                             <tbody>
                             {{#  layui.each(item.wrkDetls, function(idx, wrkDetl){ }}
-                            <tr>
+                            <tr style="background: none">
+                                <td>No.</td>
                                 <td><span class="layui-badge layui-bg-cyan">{{ idx+1 }}</span></td>
+                            </tr>
+                            <tr style="background: none">
+                                <td>鐗╂枡鍙凤細</td>
                                 <td>{{ wrkDetl.matnr }}</td>
+                            </tr>
+                            <tr style="background: none">
+                                <td>鏁伴噺锛�</td>
                                 <td style="font-weight: bold">{{ wrkDetl.anfme }}</td>
                             </tr>
                             {{#  }); }}

--
Gitblit v1.9.1