自动化立体仓库 - WMS系统
zjj
2023-06-16 be32a8ddbcbb4f6e7b707e6ef8d6c24c05a48897
src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -111,6 +111,7 @@
                            locDetl.setAppeTime(now);
                            locDetl.setOwner(wrkDetl.getOwner());
                            locDetl.setPayment(wrkDetl.getPayment());
                            locDetl.setWeight(wrkDetl.getWeight());
                            if (!locDetlService.insert(locDetl)) {
//                                exceptionHandle("全板入库 ===>> 添加库存明细失败;[workNo={0}],[locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo());
                                TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
@@ -322,10 +323,10 @@
    }
    private ReturnT<String> doOut(WrkMast wrkMast){
        Date now = new Date();
        LocMast locMast = locMastService.selectById(wrkMast.getSourceLocNo());
        Date now = new Date(); //获取当前的时间
        LocMast locMast = locMastService.selectById(wrkMast.getSourceLocNo()); //获取工作档
        try {
            if (null == locMast) {
            if (null == locMast) { //如果工作档为空,抛出异常
//                exceptionHandle("工作档[workNo={0}]库位号错误[locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo());
                TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
                return FAIL.setMsg("工作档库位号错误; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]");
@@ -346,17 +347,7 @@
                        return FAIL.setMsg("全板出库 ===>> 工作明细档为空; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]");
                    }
                    Boolean finsihed = orderDetlService.checkAllDetlFinish(wrkDetls101.get(0).getOrderNo());
                    if (finsihed) {
                        Boolean mastFinished = wrkMastService.checkFinishByOrder(wrkDetls101.get(0).getOrderNo());
                        if (mastFinished) {
                            Order order = orderService.selectByNo(wrkDetls101.get(0).getOrderNo());
                            if (!Cools.isEmpty(order)) {
                                orderService.updateSettle(order.getId(),4L,1L);
                            }
                        }
                    }
                    // 删除工作档源库位的库存明细
                    if (!locDetlService.delete(new EntityWrapper<LocDetl>().eq("loc_no", wrkMast.getSourceLocNo()))) {
@@ -376,6 +367,30 @@
                            return FAIL.setMsg("全板出库 ===>> 修改源库位状态失败; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]");
                        }
                    }
                    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)){
                        return FAIL.setMsg("更新订单完成数量失败");
                    }
                    Boolean finsihed = orderDetlService.checkAllDetlFinish(wrkDetls101.get(0).getOrderNo());
                    if (finsihed) {
                        Boolean mastFinished = wrkMastService.checkFinishByOrder(wrkDetls101.get(0).getOrderNo());
                        if (mastFinished) {
                            Order order = orderService.selectByNo(wrkDetls101.get(0).getOrderNo());
                            if (!Cools.isEmpty(order)) {
                                orderService.updateSettle(order.getId(),4L,1L);
                            }
                        }
                    }
                    break;
                // 空板出库
                case 110: