Junjie
2024-08-02 71fb0226eba99f4bd9503c1da89925f53fd54d8a
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);
@@ -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;
    }
}