| | |
| | | || task.getTaskType().equals(TaskType.TASK_TYPE_MERGE_IN.type) |
| | | || task.getTaskType().equals(TaskType.TASK_TYPE_LOC_MOVE.type)) { |
| | | task.setTaskStatus(TaskStsType.COMPLETE_IN.id); |
| | | } else if (task.getTaskType().equals(TaskType.TASK_TYPE_OUT.type) |
| | | || task.getTaskType().equals(TaskType.TASK_TYPE_PICK_AGAIN_OUT.type) |
| | | } else if (task.getTaskType().equals(TaskType.TASK_TYPE_OUT.type)){ |
| | | if (task.getResource().equals(TaskResouceType.TASK_RESOUCE_WAVE_TYPE.val)){ |
| | | task.setTaskStatus(TaskStsType.AWAIT.id); |
| | | } else { |
| | | task.setTaskStatus(TaskStsType.COMPLETE_OUT.id); |
| | | } |
| | | String targSite = task.getTargSite(); |
| | | BasStation basStation = basStationService.getOne(new LambdaQueryWrapper<BasStation>().eq(BasStation::getStationName, targSite)); |
| | | basStation.setUseStatus("F"); |
| | | basStation.setBarcode(task.getBarcode()); |
| | | basStationService.updateById(basStation); |
| | | } else if (task.getTaskType().equals(TaskType.TASK_TYPE_PICK_AGAIN_OUT.type) |
| | | || task.getTaskType().equals(TaskType.TASK_TYPE_MERGE_OUT.type) |
| | | || task.getTaskType().equals(TaskType.TASK_TYPE_CHECK_OUT.type)) { |
| | | task.setTaskStatus(TaskStsType.AWAIT.id); |
| | | } else if ( task.getTaskType().equals(TaskType.TASK_TYPE_CROSS_DOCKING_OUT.type) |
| | | || task.getTaskType().equals(TaskType.TASK_TYPE_EMPTY_OUT.type)) {//备货 |
| | | if (!Cools.isEmpty(task.getResource()) && task.getResource().equals(TaskResouceType.TASK_RESOUCE_WAVE_TYPE.val)){ |
| | | task.setTaskStatus(TaskStsType.AWAIT.id); |
| | | } else { |
| | | task.setTaskStatus(TaskStsType.WAVE_SEED.id); |
| | | } |
| | | } else if (task.getTaskType().equals(TaskType.TASK_TYPE_CROSS_DOCKING_OUT.type)){//备货 |
| | | task.setTaskStatus(TaskStsType.COMPLETE_OUT.id); |
| | | } else if (task.getTaskType().equals(TaskType.TASK_TYPE_EMPTY_OUT.type)){ |
| | | task.setTaskStatus(TaskStsType.COMPLETE_OUT.id); |
| | | String targSite = task.getTargSite(); |
| | | BasStation basStation = basStationService.getOne(new LambdaQueryWrapper<BasStation>().eq(BasStation::getStationName, targSite)); |
| | | basStation.setUseStatus("D"); |
| | | basStation.setBarcode(task.getBarcode()); |
| | | basStationService.updateById(basStation); |
| | | } else { |
| | | log.error(task.getTaskCode()+":任务无法完成"); |
| | | continue; |
| | | } |
| | | taskService.updateById(task); |
| | | } |
| | |
| | | // @Scheduled(cron = "0/3 * * * * ?") |
| | | public void completeInStock() throws Exception { |
| | | try{ |
| | | List<Task> tasks = taskService.list(new LambdaQueryWrapper<Task>().eq(Task::getTaskStatus, TaskStsType.COMPLETE_IN.id).select(Task::getId)); |
| | | List<Task> tasks = taskService.list(new LambdaQueryWrapper<Task>().select(Task::getId).eq(Task::getTaskStatus, TaskStsType.COMPLETE_IN.id)); |
| | | if (tasks.isEmpty()) { |
| | | return; |
| | | } |
| | |
| | | // if (!station.getUseStatus().equals(LocStsType.LOC_STS_TYPE_F.type)) { |
| | | // throw new CoolException( "当前站点不是F.在库状态状态!!"); |
| | | // } |
| | | station.setUseStatus(LocStsType.LOC_STS_TYPE_R.type); |
| | | if (!station.getType().equals(0)){ |
| | | station.setUseStatus(LocStsType.LOC_STS_TYPE_R.type); |
| | | } |
| | | if (!basStationService.updateById(station)) { |
| | | throw new CoolException("站点状态更新失败!!"); |
| | | } |
| | |
| | | if (!station.getUseStatus().equals(LocStsType.LOC_STS_TYPE_O.type)) { |
| | | throw new CoolException("目标站点不处O.空闲状态,无法预约出库。"); |
| | | } |
| | | station.setUseStatus(LocStsType.LOC_STS_TYPE_S.type); |
| | | if (!station.getType().equals(0)){ |
| | | station.setUseStatus(LocStsType.LOC_STS_TYPE_S.type); |
| | | } |
| | | if (!basStationService.updateById(station)) { |
| | | throw new CoolException("站点状态更新失败!!"); |
| | | } |
| | |
| | | if (!task.getTaskType().equals(TaskType.TASK_TYPE_LOC_MOVE.type)) { |
| | | /**如果是普通站点,修改站点状态为出库预约*/ |
| | | if (station.getType().equals(StationTypeEnum.STATION_TYPE_NORMAL.type)) { |
| | | station.setUseStatus(LocStsType.LOC_STS_TYPE_R.type); |
| | | if (!station.getType().equals(0)){ |
| | | station.setUseStatus(LocStsType.LOC_STS_TYPE_R.type); |
| | | } |
| | | if (!basStationService.updateById(station)) { |
| | | throw new CoolException("站点预约失败!!"); |
| | | } |
| | |
| | | } |
| | | /**如果是普通站点,修改站点状态为入库预约*/ |
| | | if (station.getType().equals(StationTypeEnum.STATION_TYPE_NORMAL.type)) { |
| | | station.setUseStatus(LocStsType.LOC_STS_TYPE_S.type); |
| | | if (!station.getType().equals(0)){ |
| | | station.setUseStatus(LocStsType.LOC_STS_TYPE_S.type); |
| | | } |
| | | if (!basStationService.updateById(station)) { |
| | | throw new CoolException("站点预约失败!!"); |
| | | } |