| | |
| | | if (offer) { |
| | | log.info("下发输送线任务成功:taskWrk:" + JSON.toJSONString(taskWrk)); |
| | | Date now = new Date(); |
| | | taskWrk.setStatus(TaskStatusType.OVER3.id); |
| | | if (taskWrk.getTargetPoint().equals(staProtocol.getSiteId().toString())){ |
| | | taskWrk.setStatus(TaskStatusType.OVER.id); |
| | | } else { |
| | | taskWrk.setStatus(TaskStatusType.OVER3.id); |
| | | } |
| | | taskWrk.setWrkSts(14); |
| | | taskWrk.setModiTime(now); |
| | | taskWrk.setCompleteTime(now); |
| | |
| | | //获取入库待确认工作档 |
| | | TaskWrk taskWrk = taskWrkMapper.selectCrnNoInWorking(crnProtocol.getLaneNo(), crnProtocol.getTaskNo().intValue()); |
| | | if (Cools.isEmpty(taskWrk) && crnProtocol.getTaskNo() != 999) { |
| | | log.error("堆垛机处于等待确认且任务完成状态,但未找到工作档。堆垛机号={},巷道号={},工作号={}", crn.getId(), crnProtocol.getLaneNo(), crnProtocol.getTaskNo()); |
| | | continue; |
| | | log.error("堆垛机处于等待确认且任务完成状态,但未找到符合状态的工作档,准备查询准备状态工作档。堆垛机号={},巷道号={},工作号={}", crn.getId(), crnProtocol.getLaneNo(), crnProtocol.getTaskNo()); |
| | | taskWrk = taskWrkMapper.selectCrnNoInWorkingBuDing(crnProtocol.getLaneNo(), crnProtocol.getTaskNo().intValue()); |
| | | if (Cools.isEmpty(taskWrk) && crnProtocol.getTaskNo() != 999) { |
| | | log.error("堆垛机处于等待确认且任务完成状态,但未找到工作档。堆垛机号={},巷道号={},工作号={}", crn.getId(), crnProtocol.getLaneNo(), crnProtocol.getTaskNo()); |
| | | continue; |
| | | } |
| | | } |
| | | // Thread.sleep(300); |
| | | //确认完成信号 |
| | |
| | | crnThread.setResetFlag(true); |
| | | |
| | | if (!Cools.isEmpty(taskWrk)) { |
| | | if (taskWrk.getIoType() == 1 && taskWrk.getWrkSts() == 3) { |
| | | if (taskWrk.getIoType() == 1 && (taskWrk.getWrkSts() == 3 || taskWrk.getWrkSts() == 2)) { |
| | | taskWrk.setWrkSts(4);//入库完成 |
| | | taskWrk.setStatus(TaskStatusType.OVER.id);//完结 |
| | | //更新库位状态 |
| | |
| | | locMast.setModiTime(now); |
| | | locMast.setModiUser(9999L); |
| | | locMastService.updateById(locMast); |
| | | } else if (taskWrk.getIoType() == 2 && taskWrk.getWrkSts() == 12) { |
| | | } else if (taskWrk.getIoType() == 2 && (taskWrk.getWrkSts() == 12 || taskWrk.getWrkSts() == 11)) { |
| | | taskWrk.setWrkSts(13);//出库完成 |
| | | taskWrk.setStatus(TaskStatusType.OVER.id);//完结 |
| | | //更新库位状态 |
| | |
| | | locMast.setModiTime(now); |
| | | locMast.setModiUser(9999L); |
| | | locMastService.updateById(locMast); |
| | | } else if (taskWrk.getIoType() == 3 && taskWrk.getWrkSts() == 12) { |
| | | } else if (taskWrk.getIoType() == 3 && (taskWrk.getWrkSts() == 12 || taskWrk.getWrkSts() == 11)) { |
| | | taskWrk.setWrkSts(4);//入库完成 |
| | | taskWrk.setStatus(TaskStatusType.OVER.id);//完结 |
| | | //更新库位状态 |
| | |
| | | } |
| | | |
| | | long endP = 0; |
| | | long endP1 = 0; |
| | | long endP2 = 0; |
| | | ConcurrentHashMap<String, TaskProtocol> allTaskProtocol = taskProtocolCache.getAllTaskProtocol(); |
| | | boolean sign = true; |
| | | for (TaskProtocol taskProtocol : allTaskProtocol.values()){ |
| | | if (taskProtocol.getTaskStatus() == 2){//取 |
| | | endP = taskProtocol.getTargetPosition(); |
| | | sign = false; |
| | | } else if (taskProtocol.getTaskStatus() == 3 && sign){//放 |
| | | endP = taskProtocol.getTargetPosition(); |
| | | endP1 = taskProtocol.getTargetPosition(); |
| | | } else if (taskProtocol.getTaskStatus() == 3){//放 |
| | | endP2 = taskProtocol.getTargetPosition(); |
| | | } |
| | | } |
| | | if (endP1 > endP2){ |
| | | if (itSmall){ |
| | | endP = endP1; |
| | | } else { |
| | | endP = endP2; |
| | | } |
| | | } |
| | | if (endP == 0){ |