自动化立体仓库 - WMS系统
#
1
9 小时以前 fe3b6f1f3163be94496e5d5e72654f22ae131245
src/main/java/com/zy/common/service/CommonService.java
@@ -1046,31 +1046,46 @@
        // 开始查找库位 ==============================>>
        if (Cools.isEmpty(locMast) && sourceStaNo != 4006) {//si'lou'p四楼盘点选择区域
                 List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>()
                    .eq("row1", nearRow)
                    .eq("loc_sts", "O").eq("whs_type", rowLastnoType.getType().longValue())
                    .orderBy("lev1", true).orderBy("bay1", true)); // 最浅库位
            for (LocMast locMast1 : locMasts) {
                if (!VersionUtils.locMoveCheckLocTypeComplete(locMast1, locTypeDto)) {
                    continue;
                }
                if (Utils.BooleanWhsTypeStaIoType(rowLastno)) {
                    // 获取目标库位所在巷道最深空库位
                    LocMast locMast2 = locMastService.selectLocByLocStsPakInO(curRow, nearRow, locMast1, rowLastnoType.getType().longValue());
                    if (!Cools.isEmpty(locMast2) && locMast2.getRow1() == curRow) {
                        locMast = locMast2;
        if (Cools.isEmpty(locMast) && sourceStaNo != 4006 && sourceStaNo != 2033 ) {//si'lou'p四楼盘点选择区域
            for(int row = 21; row <= 25; row++){
                List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>()
                        .eq("row1", row)
                        .eq("loc_sts", "O").eq("whs_type", rowLastnoType.getType().longValue())
                        .orderBy("lev1", true).orderBy("bay1", true)); // 最浅库位
                for (LocMast locMast1 : locMasts) {
                    if (!VersionUtils.locMoveCheckLocTypeComplete(locMast1, locTypeDto)) {
                        continue;
                    }
                    if(locMast1!= null){
                        locMast = locMast1;
                        break;
                    }
                }
            }
        } else {
        }else if(Cools.isEmpty(locMast) && sourceStaNo != 4006){
            for(int row = 28; row <= 31; row++){
                List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>()
                        .eq("row1", row)
                        .eq("loc_sts", "O").eq("whs_type", rowLastnoType.getType().longValue())
                        .orderBy("lev1", true).orderBy("bay1", true)); // 最浅库位
                for (LocMast locMast1 : locMasts) {
                    if (!VersionUtils.locMoveCheckLocTypeComplete(locMast1, locTypeDto)) {
                        continue;
                    }
                    if(locMast1!= null){
                        locMast = locMast1;
                        break;
                    }
                }
            }
         }else {
            // 根据 findLocNoAttributeVo.getOutArea() 设置列范围
            int startBay = 1;
            int endBay = 19;
            switch (findLocNoAttributeVo.getOutArea()) {
                case 1:
                case 3:
                    startBay = 15;
                    endBay = 19;
                    break;
@@ -1078,7 +1093,7 @@
                    startBay = 8;
                    endBay = 14;
                    break;
                case 3:
                case 1:
                    startBay = 1;
                    endBay = 8;
                    break;
@@ -1104,15 +1119,20 @@
                    if (!VersionUtils.locMoveCheckLocTypeComplete(locMast1, locTypeDto)) {
                        continue;
                    }
                    if (Utils.BooleanWhsTypeStaIoType(rowLastno)) {
                        // 获取目标库位所在巷道最深空库位
                        LocMast locMast2 = locMastService.selectLocByLocStsPakInO(curRow, nearRow, locMast1, rowLastnoType.getType().longValue());
                        if (!Cools.isEmpty(locMast2) && locMast2.getRow1() == curRow) {
                            locMast = locMast2;
                            found = true;
                            break;
                        }
                    if(locMast1!= null){
                        locMast = locMast1;
                        found = true;
                        break;
                    }
//                    if (Utils.BooleanWhsTypeStaIoType(rowLastno)) {
//                        // 获取目标库位所在巷道最深空库位
//                        LocMast locMast2 = locMastService.selectLocByLocStsPakInO(curRow, nearRow, locMast1, rowLastnoType.getType().longValue());
//                        if (!Cools.isEmpty(locMast2) && locMast2.getRow1() == curRow) {
//                            locMast = locMast2;
//                            found = true;
//                            break;
//                        }
//                    }
                }
                if (found) {