自动化立体仓库 - WMS系统
#
gt-fuwuqi
2024-11-09 14a5c0a9532de99081a58779633aa5001bdd989c
src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -378,6 +378,11 @@
        if(param.getCombMats().stream().anyMatch(obj -> obj.getAnfme() == null)){
            throw new CoolException("入库物料数量不能为空");
        }
        Order order = orderService.selectByNo(param.getOrderNo());
        if (Cools.isEmpty(order) || order.getSettle() > 2) {
            throw new CoolException("单据编号已过期");
        }
        // 判断是否有相同条码的数据
        if (waitPakinService.selectCount(new EntityWrapper<WaitPakin>().
                eq("zpallet", param.getBarcode()).eq("io_status", "N")) > 0) {
@@ -399,6 +404,19 @@
        Date now = new Date();
        for (CombParam.CombMat combMat : param.getCombMats()) {
            // 订单明细数量校验
            OrderDetl orderDetl = orderDetlService.selectItem(order.getId(), combMat.getMatnr(), combMat.getBatch());
            if (Cools.isEmpty(orderDetl)) {
                throw new CoolException("该单据中未找到对应物料明细");
            }
            if (combMat.getAnfme() > orderDetl.getEnableQty()) {
                throw new CoolException(orderDetl.getMatnr() + "入库数量不合法");
            }
            // 修改订单作业数量
            if (!orderDetlService.increaseWorkQty(order.getId(), combMat.getMatnr(), combMat.getBatch(), combMat.getAnfme())) {
                throw new CoolException("修改单据作业数量失败");
            }
            Mat mat = matService.selectByMatnr(combMat.getMatnr());
            WrkDetl wrkDetl = new WrkDetl();
            wrkDetl.sync(mat);