| | |
| | | private LaneService laneService; |
| | | @Autowired |
| | | private ActionSorter actionSorter; |
| | | @Autowired |
| | | private StaReserveService staReserveService; |
| | | |
| | | @SuppressWarnings("all") |
| | | @Transactional |
| | |
| | | throw new BusinessException("oriLoc:" + task.getOriLoc$() + " failed to update"); |
| | | } |
| | | |
| | | // reserver station inbound, qty: 1 |
| | | destSta = staService.getById(task.getDestSta()); |
| | | if (!destSta.getStaSts().equals(StaStsType.IDLE.val())) { |
| | | throw new BusinessException("destSta:" + task.getDestSta$() + " is not in IDLE status"); |
| | | if (null == staReserveService.reserveStaIn(destSta, task, 1)) { |
| | | throw new BusinessException("destSta:" + task.getDestSta$() + " failed to reserve"); |
| | | } |
| | | destSta.setStaSts(StaStsType.READY_RELEASE.val()); |
| | | destSta.setUpdateTime(now); |
| | | if (!staService.updateById(destSta)) { |
| | | throw new BusinessException("destSta:" + task.getDestSta$() + " failed to update"); |
| | | } |
| | | // if (!destSta.getStaSts().equals(StaStsType.IDLE.val())) { |
| | | // throw new BusinessException("destSta:" + task.getDestSta$() + " is not in IDLE status"); |
| | | // } |
| | | // destSta.setStaSts(StaStsType.READY_RELEASE.val()); |
| | | // destSta.setUpdateTime(now); |
| | | // if (!staService.updateById(destSta)) { |
| | | // throw new BusinessException("destSta:" + task.getDestSta$() + " failed to update"); |
| | | // } |
| | | break; |
| | | case STA_TO_LOC: |
| | | oriSta = staService.getById(task.getOriSta()); |
| | |
| | | for (Segment item : segmentList) { |
| | | item.setGroupId(groupId); |
| | | item.setState(SegmentStateType.RUNNING.toString()); |
| | | item.setStartTime(now); |
| | | item.setUpdateTime(now); |
| | | if (null != algoStartTime) { |
| | | item.setAlgoTime((int) (now.getTime() - algoStartTime.getTime())); |
| | |
| | | // segment |
| | | for (Segment segment : segmentList) { |
| | | segment.setState(SegmentStateType.FINISH.toString()); |
| | | segment.setEndTime(now); |
| | | segment.setUpdateTime(now); |
| | | if (!segmentService.updateById(segment)) { |
| | | log.error("Segment [{}] 更新失败 !!!", segment.getGroupId() + " - " + segment.getSerial()); |