自动化立体仓库 - WMS系统
1
zhangc
2025-04-16 2a0f422815c0379e6d4bf795a2eac435da9b3df2
src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java
@@ -752,9 +752,9 @@
            String ctnNo = null;
            // 打标记,若库位不够,入库到别的楼层,那么需要跨层移库
            if (!Cools.isEmpty(code)) {
                if (agvLocMast.getLev1() == 1 && !code.equals(AsrsConstants.SANCHANG)) {
                    ctnNo = "1";
                } else if (agvLocMast.getLev1() == 2 && !code.equals(AsrsConstants.ERCHANG)) {
                if (agvLocMast.getLev1() == 1 && code.equals(AsrsConstants.ERCHANG)) {
                    ctnNo = "2";
                } else if (agvLocMast.getLev1() == 2 && code.equals(AsrsConstants.SANCHANG)) {
                    ctnNo = "1";
                }
            }
@@ -1008,7 +1008,7 @@
        List<AgvLocDetl> locDetls = agvLocDetlService.selectList(new EntityWrapper<AgvLocDetl>().eq("loc_no", param.getLocNo()));
        List<LocDetlAdjustParam.LocDetlAdjust> list = param.getList();
        String barcode = null;
        // 修改数量
        Iterator<AgvLocDetl> iterator = locDetls.iterator();
        while (iterator.hasNext()) {
@@ -1095,6 +1095,7 @@
            locDetl.setThreeCode(adjust.getThreeCode());
            locDetl.setDeadTime(adjust.getDeadTime());
            locDetl.setSuppCode(adjust.getSuppCode());
            barcode = adjust.getSuppCode();
            if (!agvLocDetlService.insert(locDetl)) {
                throw new CoolException("添加" + locDetl.getLocNo() + "库位," + locDetl.getMatnr() + "商品," + locDetl.getBatch() + "序列码库存明细失败");
            }
@@ -1127,6 +1128,7 @@
        if (locMast.getLocSts().equals("D") || locMast.getLocSts().equals("O")) {
            if (count > 0) {
                locMast.setLocSts("F");
                locMast.setBarcode(barcode);
            }
        }
        locMast.setModiUser(userId);
@@ -1239,6 +1241,9 @@
                String devNo = wrkMast.getSourceLocNo();
                //目标库位
                String locNo = wrkMast.getLocNo();
                if (!Cools.isEmpty(locNo)) {
                    agvLocDetlService.delete(new EntityWrapper<AgvLocDetl>().eq("loc_no", locNo));
                }
                agvLocMastService.updateLocStsByLocNo(locNo, "O", "", null);
                if (wrkMast.getIoType() == 58) {
                    agvBasDevpService.updateLocStsAndBarcodeByDevNo(devNo, "F", wrkMast.getBarcode(), wrkMast.getWhsType().shortValue());
@@ -1591,7 +1596,10 @@
        }
        OrderDetl orderDetl = orderDetlService.selectItem(orderNo, mat.getMatnr(), batch, csocode);
        if (orderDetl == null) {
            throw new CoolException("订单明细不存在");
            orderDetl = orderDetlService.selectItem(orderNo, mat.getMatnr(), null, csocode);
            if (orderDetl == null) {
                throw new CoolException("订单明细不存在");
            }
        }
        AgvWrkDetl wrkDetl = new AgvWrkDetl();
        wrkDetl.sync(mat);