|  |  | 
 |  |  |         if (task == null) {
 | 
 |  |  |             return R.error("任务不存在!!");
 | 
 |  |  |         }
 | 
 |  |  |         log.info("容器到达接收,任务号:{},当前状态:{},上报状态:{}",task.getTaskNo(),task.getTaskSts$(),TaskStsType.WCS_CONTAINER_RECEIVE.desc);
 | 
 |  |  |         log.info("容器到达接收,任务号:{},当前状态:{},上报状态:{}, 接收参数:{}",task.getTaskNo(),task.getTaskSts$(),TaskStsType.WCS_CONTAINER_RECEIVE.desc, JSONObject.toJSONString(arrivedParam));
 | 
 |  |  | 
 | 
 |  |  |         taskType = task.getTaskType() > 100 ? "outStock":"inStock";
 | 
 |  |  | 
 | 
 |  |  | 
 |  |  |             if (task.getTaskSts() == TaskStsType.WCS_EXECUTE_OUT_ARRIVED.id
 | 
 |  |  |             || task.getTaskSts() == TaskStsType.WCS_EXECUTE_OUT_TASK_DONE.id ) {
 | 
 |  |  |                 // 到达拣选位,控制播种墙亮灯
 | 
 |  |  |                     List<CacheSite> cacheSites = cacheSiteService.list(new LambdaQueryWrapper<CacheSite>().eq(CacheSite::getBarcode, task.getBarcode()));
 | 
 |  |  |                     List<CacheSite> cacheSites = cacheSiteService.list(new LambdaQueryWrapper<CacheSite>()
 | 
 |  |  |                             .eq(CacheSite::getBarcode, task.getBarcode()));
 | 
 |  |  |                     if(cacheSites.size() == 0) {
 | 
 |  |  |                         log.error("条码:{},未找到播种墙亮灯",task.getBarcode());
 | 
 |  |  |                         throw new CoolException("未找到播种墙");
 | 
 |  |  | 
 |  |  |                     for (CacheSite cacheSite:cacheSites) {
 | 
 |  |  |                         // 获取任务明细数量
 | 
 |  |  |                         List<TaskDetl> taskDetlByTaskId = taskDetlService.getTaskDetlByTaskId(task.getId());
 | 
 |  |  |                         double sum = taskDetlByTaskId.stream().mapToDouble(TaskDetl::getAnfme).sum();
 | 
 |  |  |                         int sum = (int)taskDetlByTaskId.stream().mapToDouble(TaskDetl::getAnfme).sum();
 | 
 |  |  |                         SlapLightControlParam slapLightControlParam = new SlapLightControlParam();
 | 
 |  |  |                         slapLightControlParam
 | 
 |  |  |                                 .setControllerCode(cacheSite.getMemo())
 | 
 |  |  | 
 |  |  |     public R slapLightLogic(Map<String, Object> request) {
 | 
 |  |  |         String taskNo = request.get("taskNo").toString();
 | 
 |  |  |         String orderNo = request.get("orderNo").toString();
 | 
 |  |  | 
 | 
 |  |  |         String siteNo = Objects.isNull(request.get("siteNo")) ? null : request.get("siteNo").toString();
 | 
 |  |  |         List<CacheSite> performs = cacheSiteService.list(new LambdaQueryWrapper<CacheSite>().eq(CacheSite::getOrderNo, orderNo));
 | 
 |  |  |         if (Objects.isNull(performs.stream().findFirst().get().getPlatformId())) {
 | 
 |  |  |             throw new CoolException("请打印明细,并绑定目标集货区");
 | 
 |  |  | 
 |  |  | //            }).collect(Collectors.toList());
 | 
 |  |  | 
 | 
 |  |  |             //判断数量是否与订单明细的需求量相同,相同则订单完成
 | 
 |  |  |             if (one.getPickStatus() == OrderPickStatus.ORDER_PICK_STATUS_DONE.val) {
 | 
 |  |  |                 //播种完成,释放绑定站点
 | 
 |  |  |                 List<CacheSite> cacheSites = cacheSiteService.list(new LambdaQueryWrapper<CacheSite>().eq(CacheSite::getOrderNo, orderNo));
 | 
 |  |  |                 for (CacheSite cacheSite : cacheSites) {
 | 
 |  |  |                     if (!cacheSite.getSiteStatus().equals(CacheSiteStatusType.O.id)) {
 | 
 |  |  |                         cacheSite.setSiteStatus(CacheSiteStatusType.O.id);
 | 
 |  |  |                         cacheSite.setOrderId(null);
 | 
 |  |  |                         cacheSite.setBarcode(null);
 | 
 |  |  |                         cacheSite.setOrderNo(null);
 | 
 |  |  |                         cacheSite.setPlatformId(null);
 | 
 |  |  |                         cacheSite.setPlatformNo(null);
 | 
 |  |  |                         cacheSite.setUpdateTime(new Date());
 | 
 |  |  |                         if (!cacheSiteService.updateById(cacheSite)) {
 | 
 |  |  |                             throw new CoolException("播种站点更新失败");
 | 
 |  |  |                         }
 | 
 |  |  |             //播种完成,释放绑定站点
 | 
 |  |  |             List<CacheSite> cacheSites = cacheSiteService.list(new LambdaQueryWrapper<CacheSite>()
 | 
 |  |  |                     .eq(!Objects.isNull(siteNo), CacheSite::getSiteNo, siteNo)
 | 
 |  |  |                     .eq(CacheSite::getOrderNo, orderNo));
 | 
 |  |  |             for (CacheSite cacheSite : cacheSites) {
 | 
 |  |  |                 if (!cacheSite.getSiteStatus().equals(CacheSiteStatusType.O.id)) {
 | 
 |  |  |                     cacheSite.setSiteStatus(CacheSiteStatusType.O.id);
 | 
 |  |  |                     cacheSite.setOrderId(null);
 | 
 |  |  |                     cacheSite.setBarcode(null);
 | 
 |  |  |                     cacheSite.setOrderNo(null);
 | 
 |  |  |                     cacheSite.setPlatformId(null);
 | 
 |  |  |                     cacheSite.setPlatformNo(null);
 | 
 |  |  |                     cacheSite.setUpdateTime(new Date());
 | 
 |  |  |                     if (!cacheSiteService.updateById(cacheSite)) {
 | 
 |  |  |                         throw new CoolException("播种站点更新失败");
 | 
 |  |  |                     }
 | 
 |  |  |                 }
 | 
 |  |  |             }
 |