| | |
| | | import com.zy.asrs.wcs.rcs.cache.SlaveConnection; |
| | | import com.zy.asrs.wcs.rcs.entity.Device; |
| | | import com.zy.asrs.wcs.rcs.model.enums.SlaveType; |
| | | import com.zy.asrs.wcs.rcs.model.enums.WorkModeType; |
| | | import com.zy.asrs.wcs.rcs.model.protocol.ShuttleProtocol; |
| | | import com.zy.asrs.wcs.rcs.service.DeviceService; |
| | | import com.zy.asrs.wcs.rcs.thread.DevpThread; |
| | |
| | | private BasLiftService basLiftService; |
| | | @Autowired |
| | | private BasConveyorService basConveyorService; |
| | | @Autowired |
| | | private BasConveyorStaService basConveyorStaService; |
| | | |
| | | //生成入库任务 |
| | | @PostMapping("/createInTask") |
| | |
| | | destSite = String.valueOf(path.getDeviceStn()); |
| | | } |
| | | |
| | | // //判断出入库模式 |
| | | // BasConveyorSta basConveyorSta = basConveyorStaService.getOne(new LambdaQueryWrapper<BasConveyorSta>() |
| | | // .eq(BasConveyorSta::getSiteNo, destSite)); |
| | | // if (!basConveyorSta.getWorkMode().equals((int) WorkModeType.PAKIN_MODE.id)) { |
| | | // //不是入库模式,检测是否可切换入库 |
| | | // //获取出库任务类型 |
| | | // TaskCtg taskInCtg = taskCtgService.getOne(new LambdaQueryWrapper<TaskCtg>() |
| | | // .eq(TaskCtg::getFlag, String.valueOf(TaskCtgType.OUT)) |
| | | // .eq(TaskCtg::getStatus, 1)); |
| | | // if (taskInCtg == null) { |
| | | // return R.error("任务类型异常"); |
| | | // } |
| | | // List<Task> tasks = taskService.list(new LambdaQueryWrapper<Task>() |
| | | // .eq(Task::getTaskCtg, taskInCtg.getId())); |
| | | // if (!tasks.isEmpty()) { |
| | | // return R.error("当前存在出库任务,无法切换入库模式"); |
| | | // } |
| | | // |
| | | // BasConveyor basConveyor = basConveyorService.getOne(new LambdaQueryWrapper<BasConveyor>().eq(BasConveyor::getConveyorNo, basConveyorSta.getConveyorNo())); |
| | | // if(basConveyor == null) { |
| | | // return R.error("输送线不存在"); |
| | | // } |
| | | // |
| | | // DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Conveyor, basConveyor.getDeviceId().intValue()); |
| | | // if(devpThread == null) { |
| | | // return R.error("输送线线程不存在"); |
| | | // } |
| | | // |
| | | // boolean result = devpThread.switchWorkMode(Integer.parseInt(destSite), WorkModeType.PAKIN_MODE.id); |
| | | // if (!result) { |
| | | // return R.error("模式切换失败"); |
| | | // } |
| | | // } |
| | | |
| | | //优先级 |
| | | Integer priority = 10; |
| | | if (param.getPriority() != null) { |
| | |
| | | task.setOriginLoc(null); |
| | | task.setDestSite(destSite); |
| | | task.setDestLoc(param.getDestLoc()); |
| | | task.setZpallet(param.getBarcode()); |
| | | task.setIoTime(new Date()); |
| | | task.setStartTime(new Date()); |
| | | task.setStatus(1); |
| | |
| | | originSite = String.valueOf(originStaDto.getStaNo()); |
| | | } |
| | | |
| | | // //判断出入库模式 |
| | | // BasConveyorSta basConveyorSta = basConveyorStaService.getOne(new LambdaQueryWrapper<BasConveyorSta>() |
| | | // .eq(BasConveyorSta::getSiteNo, originSite)); |
| | | // if (!basConveyorSta.getWorkMode().equals((int) WorkModeType.PAKOUT_MODE.id)) { |
| | | // //不是出库模式,检测是否可切换出库 |
| | | // //获取入库任务类型 |
| | | // TaskCtg taskInCtg = taskCtgService.getOne(new LambdaQueryWrapper<TaskCtg>() |
| | | // .eq(TaskCtg::getFlag, String.valueOf(TaskCtgType.IN)) |
| | | // .eq(TaskCtg::getStatus, 1)); |
| | | // if (taskInCtg == null) { |
| | | // return R.error("任务类型异常"); |
| | | // } |
| | | // List<Task> tasks = taskService.list(new LambdaQueryWrapper<Task>() |
| | | // .eq(Task::getTaskCtg, taskInCtg.getId())); |
| | | // if (!tasks.isEmpty()) { |
| | | // return R.error("当前存在入库任务,无法切换出库模式"); |
| | | // } |
| | | // |
| | | // BasConveyor basConveyor = basConveyorService.getOne(new LambdaQueryWrapper<BasConveyor>().eq(BasConveyor::getConveyorNo, basConveyorSta.getConveyorNo())); |
| | | // if(basConveyor == null) { |
| | | // return R.error("输送线不存在"); |
| | | // } |
| | | // |
| | | // DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Conveyor, basConveyor.getDeviceId().intValue()); |
| | | // if(devpThread == null) { |
| | | // return R.error("输送线线程不存在"); |
| | | // } |
| | | // |
| | | // boolean result = devpThread.switchWorkMode(Integer.parseInt(originSite), WorkModeType.PAKOUT_MODE.id); |
| | | // if (!result) { |
| | | // return R.error("模式切换失败"); |
| | | // } |
| | | // } |
| | | |
| | | //优先级 |
| | | Integer priority = 10; |
| | | if (param.getPriority() != null) { |