自动化立体仓库 - WMS系统
1
zhang
2025-05-05 89bbaa9135a0b370da669c631c370a21468513c3
1
1个文件已修改
31 ■■■■■ 已修改文件
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -538,31 +538,26 @@
        LocMast locMast = locMastService.selectById(taskDto.getLocNo());
        List<LocMast> locMasts = new ArrayList<>();
        if ((locMast.getBay1() >= 1 && locMast.getBay1() <= 2) || (locMast.getBay1() >= 6 && locMast.getBay1() <= 7 && locMast.getRow1() != 36 && locMast.getRow1() != 29) || (locMast.getBay1() >= 11 && locMast.getBay1() <= 12)) {
        if ((locMast.getBay1() >= 3 && locMast.getBay1() <= 6) ) {
            locMasts = locMastService.selectList(new EntityWrapper<LocMast>()
                    .eq("gro1", locMast.getGro1())
                    .eq("crn_no", 7)
                    .eq("loc_type1", locMast.getLocType1())
                    .orderBy("bay1", false));
        } else {
            locMasts = locMastService.selectList(new EntityWrapper<LocMast>()
                    .eq("gro1", locMast.getGro1())
                    .eq("row1", locMast.getBay1())
                    .eq("crn_no", 7)
                    .eq("loc_type1", locMast.getLocType1())
                    .orderBy("bay1", true));
        }
        for (LocMast locMast1 : locMasts) {
            if (locMast1.getLocNo().equals(taskDto.getLocNo())) {
                break;
            }
            if (locMast1.getLocSts().equals("X")) {
                throw new CoolException(taskDto.getLocNo() + "库位前方有锁定库位,禁止出库");
            }
            if (locMast1.getLocSts().equals("F")) {
                moveLocForDeepLoc(locMast1);
            for (LocMast locMast1 : locMasts) {
                if (locMast1.getLocNo().equals(taskDto.getLocNo())) {
                    break;
                }
                if (locMast1.getLocSts().equals("X")) {
                    throw new CoolException(taskDto.getLocNo() + "库位前方有锁定库位,禁止出库");
                }
                if (locMast1.getLocSts().equals("F")) {
                    locMast = locMast1;
                }
            }
        }
        // 获取路径
        int ioType = taskDto.isAll() ? 101 : 103;
        StaDesc staDesc = staDescService.queryCrnStnAuto(ioType, locMast.getCrnNo(), staNo.getDevNo());