| | |
| | | savePlatformLog(Constants.PlatformJobLogType.SIGN.getKey(),oldPlatformJob,platformJob, |
| | | Constants.PlatformJobLogType.SIGN.getInfo()); |
| | | //签到微信通知 2025年3月26日14:25:00 |
| | | logger.info("签到微信通知=========================>开始====签到类型=>"+signInDTO.getSignType()+"===>人员主键=>"+platformGroup.getSignInNoticeUsers()); |
| | | log.info("签到微信通知=========================>开始====签到类型=>"+signInDTO.getSignType()+"===>人员主键=>"+platformGroup.getSignInNoticeUsers()); |
| | | if(!Constants.equalsInteger(signInDTO.getSignType(),Constants.TWO)&& |
| | | StringUtils.isNotBlank(platformGroup.getSignInNoticeUsers())){ |
| | | logger.info("签到微信通知=========================>进入"); |
| | | log.info("签到微信通知=========================>进入"); |
| | | List<SystemUser> systemUserList = systemUserMapper.selectList(new QueryWrapper<SystemUser>().lambda() |
| | | .eq(SystemUser::getDeleted,Constants.ZERO).eq(SystemUser::getStatus,Constants.ZERO).isNotNull(SystemUser::getOpenid) |
| | | .in(SystemUser::getMemberId,Arrays.asList(platformGroup.getSignInNoticeUsers().split(","))) |
| | |
| | | ); |
| | | } |
| | | } |
| | | logger.info("签到微信通知=========================>结束"); |
| | | log.info("签到微信通知=========================>结束"); |
| | | } |
| | | |
| | | |
| | |
| | | |
| | | |
| | | |
| | | private Logger logger = LoggerFactory.getLogger(PlatformJobServiceImpl.class); |
| | | |
| | | @Override |
| | | public void sendInPark(PlatformJob platformJob){ |
| | |
| | | jobIds.add(job.getJobId()); |
| | | } |
| | | }catch (Exception e){ |
| | | logger.error("=============更新电子锁状态信息异常:"+e.getMessage()); |
| | | log.error("=============更新电子锁状态信息异常:"+e.getMessage()); |
| | | } |
| | | } |
| | | } |
| | |
| | | return platformJob; |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | @Override |
| | | public void autoPlatformCallCar(WmsService wmsService){ |
| | | //查询当前开启的月台数据 |
| | |
| | | .eq(PlatformGroup::getIsdeleted,Constants.ZERO).eq(PlatformGroup::getAutoCall,Constants.ONE) |
| | | ); |
| | | if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isEmpty(allPlatformGroup)){ |
| | | log.error("========月台自动叫号============结束:无自动叫号月台组"); |
| | | return; |
| | | } |
| | | //过滤当前时间段不在时间内的月台组 AUTO_CALL_END_TIME AUTO_CALL_START_TIME |
| | |
| | | && Integer.valueOf(i.getAutoCallEndTime().replaceAll(":","")) > nowHm |
| | | ).collect(Collectors.toList()); |
| | | if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isEmpty(autoCallGroup)){ |
| | | log.error("========月台自动叫号============结束:无工作时间内 自动叫号月台组"); |
| | | return; |
| | | } |
| | | //查询所有月台 |
| | |
| | | .in(Platform::getGroupId,autoCallGroup.stream().map(i->i.getId()).collect(Collectors.toList())) |
| | | ); |
| | | if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isEmpty(platformList)){ |
| | | log.error("========月台自动叫号============结束:无自动叫号月台"); |
| | | return; |
| | | } |
| | | //循环所有自动叫号月台 |
| | | for (PlatformGroup platformGroup:autoCallGroup) { |
| | | List<Platform> platforms = platformList.stream().filter(i->Constants.equalsInteger(i.getGroupId(),platformGroup.getId())).collect(Collectors.toList()); |
| | | if(CollectionUtils.isEmpty(platforms)){ |
| | | log.error("========月台自动叫号============结束:无自动叫号月台-"+platformGroup.getName()); |
| | | continue; |
| | | } |
| | | Boolean isDefaul = false; |
| | |
| | | } |
| | | } |
| | | for (Platform platform:platforms) { |
| | | |
| | | //月台 叫号入园数量 |
| | | Integer workingNum = platform.getWorkingNum(); |
| | | //查询当前月台是否存在月台叫号数据 如果大于等于可叫号数量 则跳过 |
| | |
| | | .eq(PlatformJob::getPlatformId,platform.getId()) |
| | | .eq(PlatformJob::getStatus,Constants.PlatformJobStatus.CALLED.getKey())).intValue(); |
| | | if(workNum>=workingNum){ |
| | | log.error("========月台自动叫号============结束:超过自动叫号作业限制-"+platform.getName()); |
| | | continue; |
| | | }; |
| | | |
| | |
| | | .orderByDesc(PlatformJob::getStatus,PlatformJob::getUrgeTime) |
| | | .orderByAsc(PlatformJob::getSignDate)); |
| | | if(CollectionUtils.isEmpty(platformJobList)){ |
| | | log.error("========月台自动叫号============结束:无满足条件的作业1-"+platform.getName()); |
| | | continue; |
| | | } |
| | | for (int i = 0; i < workingNum - workNum ; i++) { |
| | | PlatformJob platformJob = this.getAutoCallJob(platformJobList,platform,isDefaul,platformGroup); |
| | | if(Objects.isNull(platformJob)){ |
| | | log.error("========月台自动叫号============结束:无满足条件的作业2-"+platform.getName()); |
| | | continue; |
| | | } |
| | | JobOperateDTO jobOperateDTO = new JobOperateDTO(); |
| | |
| | | wmsService.orderPlatformBind(callPlatformJob); |
| | | } |
| | | }catch (Exception e){ |
| | | logger.error("月台自动叫号权限下发失败:{}"+JSONObject.toJSONString(platform)); |
| | | log.error("月台自动叫号权限下发失败:{}"+JSONObject.toJSONString(platform)); |
| | | } |
| | | } |
| | | } |
| | |
| | | wmsService.orderPlatformBind(callPlatformJob); |
| | | } |
| | | }catch (Exception e){ |
| | | logger.error("自动叫号入园权限下发失败:{}"+JSONObject.toJSONString(platform)); |
| | | log.error("自动叫号入园权限下发失败:{}"+JSONObject.toJSONString(platform)); |
| | | } |
| | | } |
| | | } |
| | |
| | | // 3)如若不满足以上两点,则自动分配至散件月台进行作业; |
| | | if(Constants.equalsInteger(platformGroup.getType(),Constants.ONE)){ |
| | | //装货月台 - 出库 |
| | | if(Objects.nonNull(platformJob.getWmsId())){ |
| | | if(Constants.equalsInteger(platformJob.getOrigin(),Constants.ONE)){ |
| | | // WM推送任务 |
| | | List<PlatformWmsDetail> platformWmsDetailList = platformWmsDetailMapper.selectList(new QueryWrapper<PlatformWmsDetail>().lambda() |
| | | .eq(PlatformWmsDetail::getIsdeleted,Constants.ZERO) |
| | |
| | | } |
| | | } |
| | | } |
| | | //循环WMS任务 未分配至整托盘月台则直接分配到散托盘月台 |
| | | if(Constants.equalsInteger(platform.getType(),Constants.ONE)){ |
| | | return platformJob; |
| | | } |
| | | return null; |
| | | // //循环WMS任务 未分配至整托盘月台则直接分配到散托盘月台 |
| | | // if(Constants.equalsInteger(platform.getType(),Constants.ONE)){ |
| | | // return platformJob; |
| | | // } |
| | | }else{ |
| | | //物流车预约的任务 直接分配 散托盘月台 |
| | | if(Constants.equalsInteger(platform.getType(),Constants.TWO)){ |