| | |
| | | import java.util.*; |
| | | import java.util.stream.Collectors; |
| | | |
| | | import static org.reflections.Reflections.log; |
| | | |
| | | @Slf4j |
| | | @Service |
| | | public class AgvWrkMastHandler extends AbstractHandler<String> { |
| | |
| | | break; |
| | | case 10: |
| | | agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(), "D", agvWrkMast.getBarcode(), agvWrkMast.getWhsType().shortValue()); |
| | | agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(), "O", "", (short) 0); |
| | | AgvBasDevp byDevNo = agvBasDevpService.getByDevNo(agvWrkMast.getSourceLocNo()); |
| | | if (byDevNo != null) { |
| | | if ("S".equals(byDevNo.getLocSts()) || "F".equals(byDevNo.getLocSts())) { |
| | | |
| | | } else { |
| | | agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(), "O", "", agvWrkMast.getWhsType().shortValue()); |
| | | } |
| | | } |
| | | //agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(), "O", "", (short) 0); |
| | | break; |
| | | case 11: |
| | | case 12: |
| | | agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(), "F", agvWrkMast.getBarcode(), agvWrkMast.getWhsType().shortValue()); |
| | | AgvLocDetl agvLocDetl1 = agvLocDetlService.selectByLocNo(agvWrkMast.getLocNo()); |
| | | if (agvLocDetl1 == null) { |
| | | agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(), "D", agvWrkMast.getBarcode(), agvWrkMast.getWhsType().shortValue()); |
| | | } else { |
| | | agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(), "F", agvWrkMast.getBarcode(), agvWrkMast.getWhsType().shortValue()); |
| | | } |
| | | //更新库存明细 |
| | | agvLocDetlService.updateStock(agvWrkMast.getSourceLocNo(), agvWrkMast.getLocNo()); |
| | | //修改源库位状态为O |
| | |
| | | |
| | | }); |
| | | agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(), "F", agvWrkMast.getBarcode(), agvWrkMast.getWhsType().shortValue()); |
| | | agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(), "O", "", agvWrkMast.getWhsType().shortValue()); |
| | | byDevNo = agvBasDevpService.getByDevNo(agvWrkMast.getSourceLocNo()); |
| | | if (byDevNo != null) { |
| | | if ("S".equals(byDevNo.getLocSts()) || "F".equals(byDevNo.getLocSts())) { |
| | | |
| | | } else { |
| | | agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(), "O", "", agvWrkMast.getWhsType().shortValue()); |
| | | } |
| | | } |
| | | break; |
| | | case 57: |
| | | // 更新库存明细 |
| | |
| | | } |
| | | }); |
| | | // 更新站点 + 库位状态 源库位是站点 |
| | | agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(), "O", "", agvWrkMast.getWhsType().shortValue()); |
| | | byDevNo = agvBasDevpService.getByDevNo(agvWrkMast.getSourceLocNo()); |
| | | if (byDevNo != null) { |
| | | if ("S".equals(byDevNo.getLocSts()) || "F".equals(byDevNo.getLocSts())) { |
| | | |
| | | } else { |
| | | agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(), "O", "", agvWrkMast.getWhsType().shortValue()); |
| | | } |
| | | } |
| | | agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(), "F", agvWrkMast.getBarcode(), agvWrkMast.getWhsType().shortValue(), agvWrkMast.getCtnNo()); |
| | | break; |
| | | case 58: |
| | |
| | | case 108: |
| | | case 114: |
| | | agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(), "F", agvWrkMast.getBarcode(), agvWrkMast.getWhsType().shortValue()); |
| | | //更新库存明细 |
| | | agvLocDetlService.updateStock(agvWrkMast.getSourceLocNo(), agvWrkMast.getLocNo()); |
| | | //修改源库位状态为O |
| | | agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(), "O", "", agvWrkMast.getWhsType().shortValue(), "", (short) 0); |
| | | // //更新库存明细 |
| | | // agvLocDetlService.updateStock(agvWrkMast.getSourceLocNo(), agvWrkMast.getLocNo()); |
| | | // //修改源库位状态为O |
| | | // agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(), "O", "", agvWrkMast.getWhsType().shortValue(), "", (short) 0); |
| | | break; |
| | | case 109: |
| | | // 库位 -- 接驳位 / 库位 |
| | |
| | | // 库位 -- 接驳位 / 库位 |
| | | } else { |
| | | //修改源库位状态为O |
| | | agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(), "O", "", agvWrkMast.getWhsType().shortValue(), "", (short) 0); |
| | | //agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(), "O", "", agvWrkMast.getWhsType().shortValue(), "", (short) 0); |
| | | } |
| | | break; |
| | | case 111: |
| | |
| | | //目标站点 |
| | | if (agvWrkMast.getLocNo().startsWith("QO") && agvWrkMast.getLocNo().endsWith("F4") && Integer.valueOf(agvWrkMast.getBarcode().substring(0, 2)) == 30) { |
| | | if (!agvWrkMast.getSourceLocNo().endsWith("02F1")) { |
| | | AgvLocMast locByFloor = agvCommonService.getLocByLocRule(3, 1, AsrsConstants.ERCHANG,true); |
| | | if (locByFloor != null) { |
| | | AgvLocMast locByFloor = null; |
| | | try { |
| | | locByFloor = agvCommonService.getLocByLocRule(3, 1, AsrsConstants.ERCHANG, true); |
| | | } catch (Exception e) { |
| | | |
| | | } |
| | | if (locByFloor != null && locByFloor.getLocNo().endsWith("02F1")) { |
| | | AgvLocMast agvLocMast = agvLocMastService.selectById(agvWrkMast.getSourceLocNo()); |
| | | agvLocMast.setLocSts("O"); |
| | | agvLocMast.setModiTime(now); |
| | | agvLocMast.setBarcode(""); |
| | | agvLocMastService.updateById(agvLocMast); |
| | | wrkMast.setLocNo(locByFloor.getLocNo()); |
| | | } else { |