From 788b9bfcf3d4935a9e171488fb4e55482480472c Mon Sep 17 00:00:00 2001
From: Junjie <540245094@qq.com>
Date: 星期四, 01 八月 2024 13:27:29 +0800
Subject: [PATCH] #

---
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/OrderServiceImpl.java |   34 +++++++++++++++++++++++++++++++---
 1 files changed, 31 insertions(+), 3 deletions(-)

diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/OrderServiceImpl.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/OrderServiceImpl.java
index d00cda0..cd2d84d 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/OrderServiceImpl.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/OrderServiceImpl.java
@@ -50,6 +50,8 @@
             double anfme = Double.parseDouble(map.get("anfme").toString());
             String batch = map.get("batch").toString();
             String matnr = map.get("matnr").toString();
+            Double qty = Double.parseDouble(map.get("qty").toString());
+            Double workQty = Double.parseDouble(map.get("workQty").toString());
             String memo = map.getOrDefault("memo", "").toString();
             Mat mat = matService.getOne(new LambdaQueryWrapper<Mat>().eq(Mat::getMatnr, matnr));
             if (mat == null) {
@@ -60,8 +62,8 @@
             orderDetl.setOrderId(order.getId());
             orderDetl.setOrderNo(order.getOrderNo());
             orderDetl.setAnfme(anfme);
-            orderDetl.setQty(0D);
-            orderDetl.setWorkQty(0D);
+            orderDetl.setQty(qty);
+            orderDetl.setWorkQty(workQty);
             orderDetl.setBatch(batch);
             orderDetl.setMatId(mat.getId());
             orderDetl.setMemo(memo);
@@ -95,7 +97,7 @@
 
     @Override
     public boolean updateOrder(UpdateOrderParam param) {
-        Order order = this.getOne(new LambdaQueryWrapper<Order>().eq(Order::getOrderNo, param.getOrderNo()));
+        Order order = this.getOne(new LambdaQueryWrapper<Order>().eq(Order::getId, param.getOrderId()));
         order.setOrderNo(param.getOrderNo());
         order.setOrderType(param.getOrderType());
         order.setOrderSettle(param.getOrderSettle());
@@ -110,6 +112,8 @@
             double anfme = Double.parseDouble(map.get("anfme").toString());
             String batch = map.get("batch").toString();
             String matnr = map.get("matnr").toString();
+            Double qty = Double.parseDouble(map.get("qty").toString());
+            Double workQty = Double.parseDouble(map.get("workQty").toString());
             String memo = map.getOrDefault("memo", "").toString();
             Mat mat = matService.getOne(new LambdaQueryWrapper<Mat>().eq(Mat::getMatnr, matnr));
             if (mat == null) {
@@ -136,6 +140,8 @@
             }else {
                 orderDetl.setOrderNo(order.getOrderNo());
                 orderDetl.setAnfme(anfme);
+                orderDetl.setQty(qty);
+                orderDetl.setWorkQty(workQty);
                 orderDetl.setBatch(batch);
                 orderDetl.setMemo(memo);
                 orderDetl.setUpdateTime(new Date());
@@ -198,4 +204,26 @@
         }
         return true;
     }
+
+    @Override
+    public boolean checkOrderComplete(Long orderId) {
+        Order order = this.getById(orderId);
+        if (order == null) {
+            return false;
+        }
+
+        boolean complete = true;
+        List<OrderDetl> orderDetls = orderDetlService.list(new LambdaQueryWrapper<OrderDetl>().eq(OrderDetl::getOrderId, orderId));
+        if(orderDetls.isEmpty()) {
+            complete = false;
+        }
+
+        for (OrderDetl orderDetl : orderDetls) {
+            if (!orderDetl.getAnfme().equals(orderDetl.getQty())) {
+                complete = false;
+            }
+        }
+
+        return complete;
+    }
 }

--
Gitblit v1.9.1