| | |
| | | } |
| | | // 寻找一个备货的目标库位,先深后浅 |
| | | List<LocMast> locMasts1 = locMastMapper.selectList(new EntityWrapper<LocMast>().eq("loc_sts", "O").eq("crn_no", i).in("row1", s1, s2) |
| | | .le("bay1", columnNum)); |
| | | .le("bay1", columnNum).orderBy("lev1,bay1,row1")); |
| | | if (locMasts1.isEmpty()) { |
| | | // 深库位为空了,取浅库位 |
| | | List<LocMast> locMasts2 = locMastMapper.selectList(new EntityWrapper<LocMast>().eq("loc_sts", "O").eq("crn_no", i).in("row1", q1, q2) |
| | | .le("bay1", columnNum)); |
| | | .le("bay1", columnNum).orderBy("lev1,bay1,row1")); |
| | | if (!locMasts2.isEmpty()) { |
| | | staLocNo = locMasts2.get(0).getLocNo(); |
| | | } |
| | |
| | | // 寻找一箱一卷的,没有理货的,不在备货区的物料明细 |
| | | List<LocDetl> tallyGoosList = locDetlMapper.selectTallyGoosList(columnNum); |
| | | |
| | | // 过滤掉木箱规格宽度大于600的(大于600一个托盘只能放一箱) |
| | | tallyGoosList = tallyGoosList.stream().filter(locDetl -> { |
| | | String[] split = locDetl.getColor().split("\\*"); |
| | | if (split.length == 3) { |
| | | return Integer.parseInt(split[1]) <= 600; |
| | | } else { |
| | | return false; |
| | | } |
| | | }).collect(Collectors.toList()); |
| | | |
| | | // 寻找满足理货条件的两个木箱 |
| | | LocDetl leftLocDetl = null; |
| | | LocDetl rightLocDetl = null; |