自动化立体仓库 - WMS系统
zc
2025-07-10 6ec3505f6acceca7eae90693d9e4b109942f4185
src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java
@@ -139,6 +139,11 @@
        List<OrderDetl> detlList = selectItem(waitPakin.getOrderNo());
        for (OrderDetl orderDetl : detlList) {
            if (MatCompareUtils.compare(orderDetl, waitPakin)) {
                Double workQty = orderDetl.getWorkQty();
                //防止减成负数
                if (workQty - qty <= 0) {
                    qty = workQty;
                }
                int decrease = this.baseMapper.decrease2(orderDetl.getId(), qty);
                if (decrease == 0) {
                    return false;
@@ -160,10 +165,25 @@
        return this.baseMapper.addToLogTable(orderDetl) > 0;
    }
//    @Override
//    public boolean increaseQtyByOrderNo(String orderNo, String matnr, String batch, Double qty) {
//        return this.baseMapper.increaseQtyByOrderNo(orderNo, matnr, batch, qty) > 0;
//    }
    @Override
    public boolean increaseQtyByOrderNo(String orderNo, String matnr, String batch, Double qty) {
        return this.baseMapper.increaseQtyByOrderNo(orderNo, matnr, batch, qty) > 0;
    public boolean increaseQtyByOrderNo(String orderNo, WrkDetl wrkDetl, Double qty) {
        List<OrderDetl> detlList = this.baseMapper.listByOrderNo(orderNo);
        if (detlList == null || detlList.isEmpty()) {
            return false;
        }
        for (OrderDetl orderDetl : detlList) {
            if (MatCompareUtils.compare(orderDetl, wrkDetl)) {
                return this.baseMapper.increaseQtyById(orderDetl.getId(), qty) > 0;
            }
        }
        return false;
    }
    /**
     * 入出库任务生成时,更新单据表中作业数量
@@ -227,4 +247,32 @@
            return null;
        }
    }
    @Override
    public boolean increaseWorkQtyByOrderNo(String orderNo, OrderDetl orderDetl, Double workQty) {
        List<OrderDetl> detlList = this.baseMapper.listByOrderNo(orderNo);
        if (detlList == null || detlList.isEmpty()) {
            return false;
        }
        for (OrderDetl orderDetl1 : detlList) {
            if (MatCompareUtils.compare(orderDetl1, orderDetl)) {
                return baseMapper.increaseWorkQty(orderDetl.getId(), workQty) > 0;
            }
        }
        return false;
    }
    @Override
    public boolean increaseQtyByOrderNo1(String orderNo, OrderDetl orderDetl, Double qty) {
        List<OrderDetl> detlList = this.baseMapper.listByOrderNo(orderNo);
        if (detlList == null || detlList.isEmpty()) {
            return false;
        }
        for (OrderDetl orderDetl1 : detlList) {
            if (MatCompareUtils.compare(orderDetl1, orderDetl)) {
                return baseMapper.increaseQtyById(orderDetl.getId(), qty) > 0;
            }
        }
        return false;
    }
}