From e1310d24b502fea752afb403b080aa4eda4046b0 Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期五, 15 十一月 2024 17:40:34 +0800 Subject: [PATCH] 最新版本541200007 --- server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/WmsServiceImpl.java | 98 ++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 93 insertions(+), 5 deletions(-) diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/WmsServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/WmsServiceImpl.java index 695037a..d6ce594 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/WmsServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/WmsServiceImpl.java @@ -13,7 +13,10 @@ import com.doumee.core.wms.model.response.WmsBaseResponse; import com.doumee.core.wms.model.response.WmsInventoryDataResponse; import com.doumee.dao.business.*; +import com.doumee.dao.business.dao.SmsConfigMapper; +import com.doumee.dao.business.dao.SmsEmailMapper; import com.doumee.dao.business.model.*; + import com.doumee.service.business.impl.SmsEmailServiceImpl; import com.doumee.service.business.third.EmayService; import com.doumee.service.business.third.WmsService; @@ -23,8 +26,10 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.CollectionUtils; import java.util.*; +import java.util.stream.Collectors; /** * WMS骞冲彴瀵规帴Service瀹炵幇 @@ -56,6 +61,8 @@ private SmsEmailMapper smsEmailMapper; @Autowired private EmayService emayService; + @Autowired + private RetentionMapper retentionMapper; /** * 鍏ュ簱閫氱煡浠诲姟涓氬姟澶勭悊 * @param job 鍙傛暟 @@ -81,10 +88,22 @@ } WmsOrderPlatformRequest param = new WmsOrderPlatformRequest(); param.setData(new ArrayList<>()); - WmsOrderPlatformInfoRequest o = new WmsOrderPlatformInfoRequest(); - o.setCarrierBillCode(job.getBillCode()); - o.setRailwayNo(job.getPlatformWmsCode()); - param.getData().add(o); + + List<PlatformWmsDetail> platformWmsDetailList = platformWmsDetailMapper.selectList(new QueryWrapper<PlatformWmsDetail>().lambda() + .eq(PlatformWmsDetail::getJobId,job.getId()) + .eq(PlatformWmsDetail::getIsdeleted,Constants.ZERO) + ); + if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(platformWmsDetailList)){ + for (PlatformWmsDetail platformWmsDetail:platformWmsDetailList) { + if(StringUtils.isNotBlank(platformWmsDetail.getIocode())){ + WmsOrderPlatformInfoRequest o = new WmsOrderPlatformInfoRequest(); + o.setCarrierBillCode(platformWmsDetail.getIocode()); + o.setRailwayNo(job.getPlatformWmsCode()); + param.getData().add(o); + } + } + } + String url = type == 0?systemDictDataBiz.queryByCode(Constants.WMS_PARAM,Constants.WMS_INBOUND_PLATFROM_URL).getCode(): systemDictDataBiz.queryByCode(Constants.WMS_PARAM,Constants.WMS_OUTBOUND_PLATFROM_URL).getCode();; String name = type ==0?"銆怶MS銆戝叆搴撲綔涓氬崟鍒嗛厤鏈堝彴":"銆怶MS銆戝嚭搴撲綔涓氱殑鍒嗛厤鏈堝彴"; @@ -331,12 +350,22 @@ //濡傛灉鏄嚜鏈夌墿娴佽溅 job.setType(type==0?Constants.platformJobType.zycxh:Constants.platformJobType.zyczh);//鑷湁杞﹀嵏璐�/瑁呰揣 job.setCarCodeBack(job.getCarCodeFront());//鑷湁杞﹂粯璁ゅ墠鍚庤溅鐗屼竴鏍� - if(Constants.equalsInteger(car.getInStatus(),Constants.ONE) && car.getJobNum() == 0) { + if(retentionMapper.selectCount(new QueryWrapper<Retention>().lambda().eq(Retention::getType,Constants.THREE) + .eq(Retention::getCarNo,car.getCode()))>Constants.ZERO && car.getJobNum() == 0){ //濡傛灉杞﹁締鍦ㄥ洯 job.setStatus(Constants.PlatformJobStatus.WAIT_CALL.getKey());//鍦ㄥ洯鏃犱綔涓氱姸鎬侊紝鍒欒嚜鍔ㄣ�愬凡绛惧埌銆戝鐞� job.setArriveDate(new Date()); job.setSingType(Constants.TWO); job.setSignDate(new Date()); + List<PlatformJob> signList = platformJobMapper.selectList(new QueryWrapper<PlatformJob>(). + lambda().apply(" DATE(SIGN_DATE) = DATE(NOW()) and sign_date is not null ") + ); + if(CollectionUtils.isEmpty(signList)){ + job.setSignNum(Constants.ONE); + } else{ + int maxNumber = Collections.max(signList.stream().map(i->i.getSignNum()).collect(Collectors.toList())); + job.setSignNum(maxNumber + Constants.ONE); + } } } PlatformGroup group = platformGroupMapper.selectOne(new QueryWrapper<PlatformGroup>().lambda() @@ -489,6 +518,35 @@ .set(PlatformWmsDetail::getStatus,Constants.TWO) .in(PlatformWmsDetail::getIocode,iocodeList) .eq(PlatformWmsDetail::getIsdeleted, Constants.ZERO)); + + platformWmsJobMapper.update(null,new UpdateWrapper<PlatformWmsJob>().lambda() + .set(PlatformWmsJob::getStatus,Constants.TWO) + .in(PlatformWmsJob::getIocode,iocodeList) + .eq(PlatformWmsJob::getIsdeleted, Constants.ZERO)); + + List<PlatformWmsJob> platformWmsJob = platformWmsJobMapper.selectList(new QueryWrapper<PlatformWmsJob>().lambda() + .in(PlatformWmsJob::getIocode,iocodeList) + .eq(PlatformWmsJob::getIsdeleted, Constants.ZERO) + ); + if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(platformWmsJob)){ + List<Integer> jobIds = platformWmsJob.stream().filter(i->Objects.nonNull(i.getJobId())).map(i->i.getJobId()).collect(Collectors.toList()); + if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(jobIds)){ + Set<Integer> setJobIds = new HashSet<>(jobIds); + platformJobMapper.update(null,new UpdateWrapper<PlatformJob>() + .lambda() + .set(PlatformJob::getStatus,Constants.PlatformJobStatus.CANCEL.getKey()) + .in(PlatformJob::getId,setJobIds) + ); + for (Integer jobId:setJobIds + ) { + SmsEmailServiceImpl.sendPlatformJobSms(systemDictDataBiz, + emayService,smsEmailMapper,smsConfigMapper,platformJobMapper,jobId, + SmsConstants.platformJobContent.platformJobStopJob,null,null + ); + } + } + } + }catch (Exception e){ log.error("銆怶MS銆戝鐞嗗叆搴撳彇娑堥�氱煡涓氬姟===============涓氬姟澶勭悊寮傚父"+e.getMessage()); return returnFailReuslt("涓氬姟澶勭悊寮傚父"); @@ -520,6 +578,36 @@ .set(PlatformWmsDetail::getStatus,Constants.TWO) .in(PlatformWmsDetail::getIocode,iocodeList) .eq(PlatformWmsDetail::getIsdeleted, Constants.ZERO)); + + platformWmsJobMapper.update(null,new UpdateWrapper<PlatformWmsJob>().lambda() + .set(PlatformWmsJob::getStatus,Constants.TWO) + .in(PlatformWmsJob::getIocode,iocodeList) + .eq(PlatformWmsJob::getIsdeleted, Constants.ZERO)); + + List<PlatformWmsJob> platformWmsJob = platformWmsJobMapper.selectList(new QueryWrapper<PlatformWmsJob>().lambda() + .in(PlatformWmsJob::getIocode,iocodeList) + .eq(PlatformWmsJob::getIsdeleted, Constants.ZERO) + ); + if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(platformWmsJob)){ + List<Integer> jobIds = platformWmsJob.stream().filter(i->Objects.nonNull(i.getJobId())).map(i->i.getJobId()).collect(Collectors.toList()); + if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(jobIds)){ + Set<Integer> setJobIds = new HashSet<>(jobIds); + platformJobMapper.update(null,new UpdateWrapper<PlatformJob>() + .lambda() + .set(PlatformJob::getStatus,Constants.PlatformJobStatus.CANCEL.getKey()) + .in(PlatformJob::getId,setJobIds) + ); + for (Integer jobId:setJobIds + ) { + SmsEmailServiceImpl.sendPlatformJobSms(systemDictDataBiz, + emayService,smsEmailMapper,smsConfigMapper,platformJobMapper,jobId, + SmsConstants.platformJobContent.platformJobStopJob,null,null + ); + } + } + } + + }catch (Exception e){ log.error("銆怶MS銆戝嚭搴撳彇娑堥�氱煡浠诲姟涓氬姟澶勭悊===============涓氬姟澶勭悊寮傚父"+e.getMessage()); return returnFailReuslt("涓氬姟澶勭悊寮傚父"); -- Gitblit v1.9.3