|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } else { //出库任务 | 
|---|
|  |  |  | if (callbackParam.getEventType().equals(EssTaskStatus.TASK_EVENT_TOTE_LOAD.event)) { //上报取箱状态 | 
|---|
|  |  |  | //TODO 定时器开启后,要删除 || task.getTaskType() == TaskStsType.GENERATE_OUT.id | 
|---|
|  |  |  | if (task.getTaskSts() == TaskStsType.WCS_EXECUTE_OUT.id || task.getTaskSts() == TaskStsType.GENERATE_OUT.id) { | 
|---|
|  |  |  | if (task.getTaskSts() == TaskStsType.WCS_EXECUTE_OUT.id ) { | 
|---|
|  |  |  | taskStsType = TaskStsType.WCS_EXECUTE_OUT_TOTE_LOAD; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | String errMsg = "任务编号:" + task.getTaskNo() + "状态为不匹配," + "不能执行:" + TaskStsType.WCS_EXECUTE_OUT_TOTE_LOAD.desc + "任务"; | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //更新出库状态及相关字段 | 
|---|
|  |  |  | taskService.update(new LambdaUpdateWrapper<Task>() | 
|---|
|  |  |  | boolean update = taskService.update(new LambdaUpdateWrapper<Task>() | 
|---|
|  |  |  | .set(Task::getRobotCode, callbackParam.getRobotCode()) | 
|---|
|  |  |  | .set(Task::getSysTaskCode, callbackParam.getSysTaskCode()) | 
|---|
|  |  |  | .set(Task::getTaskSts, taskStsType.id) | 
|---|
|  |  |  | 
|---|
|  |  |  | .set(Task::getTaskDesc, callbackParam.getMessage()) | 
|---|
|  |  |  | .eq(Task::getBarcode, callbackParam.getContainerCode()) | 
|---|
|  |  |  | .eq(Task::getTaskNo, callbackParam.getTaskCode())); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (!update) { | 
|---|
|  |  |  | throw new CoolException("任务更新失败!!"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | * @param request | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | @Transactional(rollbackFor = Exception.class) | 
|---|
|  |  |  | public void slapLightLogic(Map<String, Object> request) { | 
|---|
|  |  |  | String taskNo = request.get("taskNo").toString(); | 
|---|
|  |  |  | String orderNo = request.get("orderNo").toString(); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | List<CacheSite> performs = cacheSiteService.list(new LambdaQueryWrapper<CacheSite>().eq(CacheSite::getOrderNo, orderNo)); | 
|---|
|  |  |  | if (Objects.isNull(performs.stream().findFirst().get().getPlatformId())) { | 
|---|
|  |  |  | throw new CoolException("请打印明细,并绑定目标集货区"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //* 1. 判断当前容器是否还有物料未拣,未拣完闪灯,拣完通知容器流动,并灭灯 | 
|---|
|  |  |  | SlapLightControlParam slapParam = new SlapLightControlParam(); | 
|---|
|  |  |  | MultiValueMap<String, Object> params = new LinkedMultiValueMap<>(); | 
|---|