| | |
| | | |
| | | /** |
| | | * 生成工作号 |
| | | * |
| | | * @param wrkMk 0:入库 1 - 3000 ; 1:拣料/并板/盘点 3001 - 6000 ; 2: 出库 6001 -9000 ; 3:其他 9001 -9999 |
| | | * @return workNo(工作号) |
| | | */ |
| | |
| | | |
| | | /** |
| | | * 检索库位号 |
| | | * |
| | | * @param whsType 类型 1:双深式货架 |
| | | * @param staDescId 路径工作类型 |
| | | * @param sourceStaNo 源站 |
| | |
| | | |
| | | if (sourceStaNo.equals(100)){ |
| | | whsType=1; |
| | | locTypeDto.setLocType1((short) 1); |
| | | }else if (sourceStaNo.equals(200)){ |
| | | whsType=2; |
| | | locTypeDto.setLocType1((short) 2); |
| | | } |
| | | |
| | | StartupDto startupDto = new StartupDto(); |
| | |
| | | rowLastno.setCurrentRow(curRow); |
| | | rowLastnoService.updateById(rowLastno); |
| | | |
| | | // 开始查找库位 ==============================>> |
| | | if (Cools.isEmpty(locMast)) { |
| | | Integer ruleId = Integer.parseInt(Parameter.get().getFindLocRule()); |
| | | // 开始查找库位 ==============================> |
| | | int ruleId = Integer.parseInt(Parameter.get().getFindLocRule()); |
| | | if (whsType!=1){ |
| | | locMast = locMastService.queryFreeLocMast(curRow, locTypeDto.getLocType1()); |
| | | } else if (ruleId == 1){ //按测试设备排序,优先排满单台设备 |
| | |
| | | } else { //默认规则 |
| | | locMast = locMastService.queryFreeLocMast(curRow, locTypeDto.getLocType1()); |
| | | } |
| | | } |
| | | |
| | | // 2.库位当前所属尺寸无空库位时,调整尺寸参数,向上兼容检索库位 |
| | | if (Cools.isEmpty(locMast)) { |
| | |
| | | times = times + 1; |
| | | return getLocNo(1, staDescId, sourceStaNo, matNos, locTypeDto, times); |
| | | } |
| | | |
| | | log.error("系统没有空库位!!! 尺寸规格: {}, 轮询次数:{}", JSON.toJSONString(locTypeDto), times); |
| | | throw new CoolException("没有空库位"); |
| | | } |
| | |
| | | locType2=(short)i; |
| | | } |
| | | } |
| | | |
| | | return locType2; |
| | | } |
| | | |