| | |
| | | private WaitPakinMapper waitPakinMapper; |
| | | @Autowired |
| | | private LocMastService locMastService; |
| | | |
| | | @Resource |
| | | private LocMastMapper locMastMapper; |
| | | @Autowired |
| | | private StaDescService staDescService; |
| | | @Autowired |
| | |
| | | |
| | | } |
| | | } |
| | | } else if (shallowLoc.getLocSts().equals("F") || shallowLoc.getLocSts().equals("D")) { |
| | | } else if (shallowLoc.getLocSts().equals("F") || shallowLoc.getLocSts().equals("M")|| shallowLoc.getLocSts().equals("Z")) { |
| | | News.warnNoLog(""+mark+" - 2"+" - 9"+" - // F、D 库位状态={}",shallowLoc.getLocSts()); |
| | | // WrkMast waitWrkMast = wrkMastMapper.selectByLocNo(shallowLocNo); |
| | | //2022-08-16 modify,不根据updmk标记移库任务(容易被取消导致堵塞),查询工作档是否存在任务 |
| | |
| | | // 空桶入库完成,先完成对应库位组任务 |
| | | if(wrkMast.getWorkNoOther() != 0 ){ |
| | | WrkMast wrkMast1 = wrkMastService.selectByWrkNo(wrkMast.getWorkNoOther()); |
| | | // 交换库位号 |
| | | String locNo = wrkMast.getLocNo(); |
| | | wrkMast.setLocNo(wrkMast1.getLocNo()); |
| | | // 交换入库时间,提取库存时按顺序先浅后深 |
| | | Date ioTime = wrkMast.getIoTime(); |
| | | if(locNo.startsWith("10")) { |
| | | wrkMast.setIoTime(wrkMast1.getIoTime()); |
| | | wrkMast1.setIoTime(ioTime); |
| | | if (wrkMast1 != null) { |
| | | // 交换库位号 |
| | | String locNo = wrkMast.getLocNo(); |
| | | wrkMast.setLocNo(wrkMast1.getLocNo()); |
| | | // 交换入库时间,提取库存时按顺序先浅后深 |
| | | Date ioTime = wrkMast.getIoTime(); |
| | | if(locNo.startsWith("10")) { |
| | | wrkMast.setIoTime(wrkMast1.getIoTime()); |
| | | wrkMast1.setIoTime(ioTime); |
| | | } |
| | | wrkMast1.setLocNo(locNo); |
| | | wrkMast1.setCrnEndTime(now); |
| | | wrkMast1.setModiTime(now); |
| | | wrkMast1.setWrkSts(4L); |
| | | wrkMast1.setWorkNoOther(0); |
| | | wrkMastMapper.updateById(wrkMast1); |
| | | } |
| | | wrkMast1.setLocNo(locNo); |
| | | wrkMast1.setCrnEndTime(now); |
| | | wrkMast1.setModiTime(now); |
| | | wrkMast1.setWrkSts(4L); |
| | | wrkMast1.setWorkNoOther(0); |
| | | wrkMastMapper.updateById(wrkMast1); |
| | | } |
| | | wrkMast.setCrnEndTime(now); |
| | | wrkMast.setModiTime(now); |
| | |
| | | */ |
| | | private synchronized void moveLocForDeepLoc(CrnSlave crn, LocMast shallowLoc,Integer mark) { |
| | | |
| | | // 只有208L能放11层 |
| | | String model = null; |
| | | if(shallowLoc.getLocSts().equals("F")) { |
| | | LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_no", shallowLoc.getLocNo())); |
| | | if(locDetl != null && locDetl.getModel() != null) { |
| | | String matModel = locMastMapper.selectMatMatnrByMaktx(locDetl.getModel()); |
| | | if(matModel != null && matModel.equals("208L")) { |
| | | model = "208L"; |
| | | } |
| | | } |
| | | } |
| | | try { |
| | | News.warnNoLog(""+mark+"moveLocForDeepLoc"+" - 0"+" - 开始执行:因双深库位阻塞,对浅库位进行移转(立即执行版)"); |
| | | List<Integer> rows = locMastService.queryDistinctRow(crn.getId()); |
| | | LocMast loc = null; |
| | | for (Integer row : rows) { |
| | | if (Utils.isDeepLoc(slaveProperties, row)) { |
| | | loc = locMastService.queryFreeLocMast(row, shallowLoc.getLocType2()); |
| | | // loc = locMastService.queryFreeLocMast(row, shallowLoc.getLocType2()); |
| | | loc = locMastMapper.queryFreeLocMastNew(row,model); |
| | | |
| | | if (loc != null) { |
| | | if (Utils.isDeepLoc(slaveProperties, loc.getLocNo())) { |
| | |
| | | if (null == loc) { |
| | | for (Integer row : rows) { |
| | | if (Utils.isShallowLoc(slaveProperties, row)) { |
| | | loc = locMastService.queryFreeLocMast(row, shallowLoc.getLocType2()); |
| | | |
| | | // loc = locMastService.queryFreeLocMast(row, shallowLoc.getLocType2()); |
| | | loc = locMastMapper.queryFreeLocMastNew(row,model); |
| | | if (null != loc) {//对应深库位非在库状态,不能移库 |
| | | String deepLoc = Utils.getDeepLoc(slaveProperties, loc.getLocNo()); |
| | | LocMast deepLoc1 = locMastService.selectById(deepLoc); |
| | |
| | | } |
| | | } |
| | | // 修改源库位状态 |
| | | if (shallowLoc.getLocSts().equals("D") || shallowLoc.getLocSts().equals("M") || shallowLoc.getLocSts().equals("Z")) { |
| | | if (shallowLoc.getLocSts().equals("F") || shallowLoc.getLocSts().equals("M") || shallowLoc.getLocSts().equals("Z")) { |
| | | shallowLoc.setLocSts("R"); // R.出库预约 |
| | | shallowLoc.setModiTime(new Date()); |
| | | if (!locMastService.updateById(shallowLoc)) { |