自动化立体仓库 - WMS系统
#1
lsh
昨天 d1be26f8d8196716257de0d3b09daa83a62bfffe
src/main/java/com/zy/asrs/controller/OrderController.java
@@ -42,6 +42,8 @@
    private WrkMastService wrkMastService;
    @Autowired
    private WrkMastLogService wrkMastLogService;
    @Autowired
    private LocOwnerService locOwnerService;
    @RequestMapping(value = "/order/nav/list/auth")
    @ManagerAuth
@@ -104,9 +106,20 @@
            DocType docType = docTypeService.selectById(param.getDocType());
            if(!Cools.isEmpty(docType)){
                prefix = docType.getPakin() == 1 ? "RK" : "CK";
                status = (prefix == "RK" ? 1 : (prefix == "CK" ? 2 : 0));
                status = (prefix.equals("RK") ? 1 : (prefix.equals("CK") ? 2 : 0));
            }
            param.setOrderNo(prefix + snowflakeIdWorker.nextId());
        } else {
            DocType docType = docTypeService.selectById(param.getDocType());
            if(!Cools.isEmpty(docType)){
                status = (docType.getPakin() == 1 ? 1 :  2 );
            }
        }
        LocOwner locOwner = null;
        if (!Cools.isEmpty(param.getOwnerId())) {
            locOwner = locOwnerService.selectById(param.getOwnerId());
        } else {
            locOwner = locOwnerService.selectById(1);
        }
        Order order = orderService.selectByNo(param.getOrderNo());
@@ -120,12 +133,12 @@
                DateUtils.convert(now),    // 单据日期
                param.getDocType(),    // 单据类型
                null,    // 项目编号
                null,    //
                param.getStandby1(),    //项目名称 客户PO号
                null,    // 调拨项目编号
                null,    // 初始票据号
                null,    // 票据号
                null,    // 客户编号
                null,    // 客户
                locOwner.getOwnerUuid(),    // 客户编号
                locOwner.getOwner(),    // 客户
                null,    // 联系方式
                null,    // 操作人员
                null,    // 合计金额
@@ -176,6 +189,10 @@
                orderDetl.setUpdateTime(now);
                orderDetl.setStatus(1);
                orderDetl.setQty(0.0D);
                orderDetl.setStandby1(param.getStandby1().toString());//po
                orderDetl.setBoxType1(locOwner.getId().toString());//货主ID
                orderDetl.setBoxType2(locOwner.getOwnerUuid().toString());//货主UUID
                orderDetl.setBoxType3(locOwner.getOwner());//货主
                orderDetl.setPakinPakoutStatus(status);
                if (!orderDetlService.insert(orderDetl)) {
                    throw new CoolException("保存订单明细档失败");
@@ -259,19 +276,21 @@
            totalQty = totalQty + orderDetl.getAnfme();
            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(), orderDetl.getOrigin(), null);
                for (LocDetl locDetl : locDetls) {
                    if (issued > 0) {
                        issued = issued - locDetl.getAnfme();
                    } else {
                        break;
            if (!Cools.isEmpty(order.getPakinPakoutStatus$()) && order.getPakinPakoutStatus$().equals("N")){
                double issued = Optional.of(orderDetl.getAnfme() - orderDetl.getWorkQty()).orElse(0.0D);
                if (issued > 0.0) {
                    List<LocDetl> locDetls = locDetlService.queryStock(orderDetl.getMatnr(), orderDetl.getBatch(), orderDetl.getOrigin(), null);
                    for (LocDetl locDetl : locDetls) {
                        if (issued > 0) {
                            issued = issued - locDetl.getAnfme();
                        } else {
                            break;
                        }
                    }
                }
            }
            if (issued > 0.0) {
                lackQty = lackQty + issued;
                if (issued > 0.0) {
                    lackQty = lackQty + issued;
                }
            }
        }
        // 任务追溯