| | |
| | | * @param matNos 物料号集合 |
| | | * @return locNo 检索到的库位号 |
| | | */ |
| | | public StartupDto getLocNo(Integer whsType, Integer staDescId, Integer sourceStaNo, List<String> matNos, LocTypeDto locTypeDto) { |
| | | public StartupDto getLocNo(Integer whsType, Integer staDescId, Integer sourceStaNo, List<String> matNos, LocTypeDto locTypeDto, Integer matTypeIn) { |
| | | int start; |
| | | int end; |
| | | Integer matType = null;//物料类型 |
| | |
| | | throw new CoolException("混放物料类型不一致"); |
| | | } |
| | | } |
| | | |
| | | if (!matTypeIn.equals(0)) { |
| | | matType = matTypeIn; |
| | | } |
| | | if (matNos.size() > 1 && matType == 1) { |
| | | //物料为单品类型,且物料种类超过1(实际为高频混放),则禁止入库 |
| | | throw new CoolException("物料类型和实际种类不一致"); |
| | |
| | | List<String> groupLoc = Utils.getGroupLoc(wrkMast.getLocNo()); |
| | | //随机可用堆垛机号 |
| | | Integer randomCrnNo = Utils.getRandomCrnNo(crnNos, locTypeDto.getLocType1()); |
| | | Collections.shuffle(crnNos); |
| | | for (Integer crnNo : crnNos) { |
| | | List<LocMast> locMasts = locMastService.findEmptyLocMastByLocNos(locTypeDto.getLocType1(), groupLoc, crnNo); |
| | | for (LocMast locMast0 : locMasts) { |
| | |
| | | Boolean flag = false; |
| | | Integer randomCrnNo = Utils.getRandomCrnNo(crnNos, locTypeDto.getLocType1()); |
| | | Collections.shuffle(crnNos); |
| | | System.out.println(crnNos); |
| | | for (Integer crnNo : crnNos) { |
| | | List<LocMast> locMasts = locMastService.findInEmptyLocMast(locTypeDto.getLocType1(), rows, crnNo);//找一条新的空巷道 |
| | | for (LocMast locMast0 : locMasts) { |