自动化立体仓库 - WMS系统
zjj
2023-06-17 8d57e6bfaccbab25b95332e9bd556d25d1fbbaf7
src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -37,6 +37,8 @@
    private OrderDetlService orderDetlService;
    @Autowired
    private OrderService orderService;
    @Autowired
    private ManPakOutService manPakOutService;
    public ReturnT<String> start(WrkMast wrkMast) {
        // 4.入库完成
@@ -370,13 +372,25 @@
                    EntityWrapper<OrderDetl> orderDetlEntityWrapper = new EntityWrapper<>();
                    orderDetlEntityWrapper.eq("order_no",wrkDetls101.get(0).getOrderNo());
                    orderDetlEntityWrapper.eq("matnr",wrkDetls101.get(0).getMatnr());
                    OrderDetl orderDetl = new OrderDetl();
                    orderDetl.setQty(wrkDetls101.get(0).getAnfme());
                    orderDetl.setUpdateTime(now);
                    if (!orderDetlService.update(orderDetl,orderDetlEntityWrapper)){
                    OrderDetl orderDetl = orderDetlService.selectOne(orderDetlEntityWrapper);
                    OrderDetl orderDetl1 = new OrderDetl();
                    orderDetl1.setQty(orderDetl.getQty() + wrkDetls101.get(0).getAnfme());
                    orderDetl1.setUpdateTime(now);
                    if (!orderDetlService.update(orderDetl1,orderDetlEntityWrapper)){
                        return FAIL.setMsg("更新订单完成数量失败");
                    }
                    EntityWrapper<ManPakOut> manPakOutEntityWrapper = new EntityWrapper<>();
                    manPakOutEntityWrapper.eq("doc_num",wrkDetls101.get(0).getOrderNo());
                    manPakOutEntityWrapper.eq("matnr",wrkDetls101.get(0).getMatnr());
                    ManPakOut manPakOut = manPakOutService.selectOne(manPakOutEntityWrapper);
                    manPakOut.setCount(manPakOut.getCount() + wrkDetls101.get(0).getAnfme());
                    if (!manPakOutService.update(manPakOut,manPakOutEntityWrapper)){
                        return FAIL.setMsg("更新拣货单完成数量失败");
                    }
                    Boolean finsihed = orderDetlService.checkAllDetlFinish(wrkDetls101.get(0).getOrderNo());
                    if (finsihed) {