自动化立体仓库 - WMS系统
#
lty
4 天以前 dc8605e5c26bdd43caff61179d7975c4281581ed
#
1个文件已修改
58 ■■■■ 已修改文件
src/main/java/com/zy/common/service/CommonService.java 58 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/common/service/CommonService.java
@@ -457,23 +457,55 @@
                chosenCount = count;
            }
        }
        if (chosenCrnNo == null) {
            throw new CoolException("没有空库位");
        StaDesc staDesc = null;
        LocMast locMast = null;
        if (chosenCrnNo != null) {
            staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>()
                    .eq("type_no", staDescId)
                    .eq("stn_no", sourceStaNo)
                    .eq("crn_no", chosenCrnNo));
            if (!Cools.isEmpty(staDesc)) {
                locMast = locMastService.selectOne(new EntityWrapper<LocMast>()
                        .eq("crn_no", chosenCrnNo)
                        .eq("loc_sts", "O")
                        .eq("frozen", 0)
                        .eq("deleted", 0)
                        .eq("whs_type", 1)
                        .orderBy("lev1,bay1"));
            }
        }
        StaDesc staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>()
                .eq("type_no", staDescId)
                .eq("stn_no", sourceStaNo)
                .eq("crn_no", chosenCrnNo));
        if (Cools.isEmpty(staDesc) || Cools.isEmpty(locMast)) {
            List<LocMast> anyLocs = locMastService.selectList(new EntityWrapper<LocMast>()
                    .eq("loc_sts", "O")
                    .eq("frozen", 0)
                    .eq("deleted", 0)
                    .eq("whs_type", 1)
                    .orderBy("lev1,bay1"));
            if (!Cools.isEmpty(anyLocs)) {
                for (LocMast anyLoc : anyLocs) {
                    if (anyLoc == null || anyLoc.getCrnNo() == null) {
                        continue;
                    }
                    if (!basCrnpService.checkSiteError(anyLoc.getCrnNo(), true)) {
                        continue;
                    }
                    StaDesc anyStaDesc = staDescService.selectOne(new EntityWrapper<StaDesc>()
                            .eq("type_no", staDescId)
                            .eq("stn_no", sourceStaNo)
                            .eq("crn_no", anyLoc.getCrnNo()));
                    if (Cools.isEmpty(anyStaDesc)) {
                        continue;
                    }
                    chosenCrnNo = anyLoc.getCrnNo();
                    staDesc = anyStaDesc;
                    locMast = anyLoc;
                    break;
                }
            }
        }
        if (Cools.isEmpty(staDesc)) {
            throw new CoolException("入库路径不存在");
        }
        LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>()
                .eq("crn_no", chosenCrnNo)
                .eq("loc_sts", "O")
                .eq("frozen", 0)
                .eq("deleted", 0)
                .eq("whs_type", 1)
                .orderBy("lev1,bay1"));
        if (Cools.isEmpty(locMast)) {
            throw new CoolException("没有空库位");
        }