From c47f7b9c4899036c52ad0e4f46c4aff7102110bc Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期一, 09 九月 2024 19:56:07 +0800 Subject: [PATCH] 最新版本 --- server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java | 72 ++++++++++++++++++++++++++++++++++-- 1 files changed, 68 insertions(+), 4 deletions(-) diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java index 804ee30..9cef87e 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java @@ -31,6 +31,7 @@ import com.github.xiaoymin.knife4j.core.util.CollectionUtils; import com.github.yulichang.wrapper.MPJLambdaWrapper; import io.swagger.models.auth.In; +import javafx.application.Platform; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.apache.xpath.operations.Bool; @@ -95,6 +96,8 @@ private PlatformJobMapper platformJobMapper; @Autowired private PlatformLogMapper platformLogMapper; + @Autowired + private PlatformReasonMapper platformReasonMapper; @@ -388,6 +391,52 @@ } + @Override + @Transactional(rollbackFor = {Exception.class,BusinessException.class}) + public void createApproveForPlatfrom(Integer tempId,Integer businessId,Integer createMemberId){ + //鏌ヨ澶勭悊妯℃澘 + ApproveTempl approveTempl = approveTemplMapper.selectById(tempId); + if(Objects.isNull(approveTempl)){ + throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌瀹℃壒娴侀厤缃ā鏉�"); + } + //鏌ヨ閰嶇疆娴佺▼ + List<ApproveParam> approveParamAllList = approveParamMapper.selectList(new QueryWrapper<ApproveParam>() + .lambda().eq(ApproveParam::getIsdeleted,Constants.ZERO) + .eq(ApproveParam::getTemplId,approveTempl.getId()) + .orderByAsc(ApproveParam::getType) + .orderByAsc(ApproveParam::getLevel) + ); + if(Objects.isNull(approveParamAllList)){ + throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈厤缃鎵规祦绋�"); + } + //瀹℃壒閰嶇疆 + List<ApproveParam> approveParamList = approveParamAllList.stream().filter(i->i.getType().equals(Constants.ZERO)).collect(Collectors.toList()); + if(Objects.isNull(approveParamList)){ + throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈厤缃鎵规祦绋�"); + } + List<ApproveParam> approveCopyList = approveParamAllList.stream().filter(i->i.getType().equals(Constants.ONE)).collect(Collectors.toList()); + + Member createMember = memberMapper.selectById(createMemberId); + if(Objects.isNull(createMember)){ + throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鐢宠浜虹粍缁囦俊鎭紓甯�"); + } + List<Approve> approveList = new ArrayList<>(); + + this.organizeApproveData(approveTempl,approveParamList,createMember,businessId,approveList); + + if(CollectionUtils.isEmpty(approveList)){ + throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀹℃壒娴侀厤缃敊璇�"); + } + + //澶勭悊鎶勯�佹暟鎹� + if(CollectionUtils.isNotEmpty(approveCopyList)){ + this.organizeApproveCopyData(approveTempl,approveCopyList,businessId,approveList); + } + approveJoinMapper.insert(approveList); + + } + + /** * 缁勭粐瀹℃壒娴佹暟鎹� * @param approveTempl @@ -555,8 +604,17 @@ jsonMap.put("eTime", "缁撴潫鏃堕棿:" + DateUtil.DateToStr(carUseBook.getEndTime() , "yyyy-MM-dd HH:mm")); jsonMap.put("usrNum", StringUtils.isBlank(carUseBook.getMemberIds())?"涔樿溅浜烘暟: 0浜�": "涔樿溅浜烘暟: " +carUseBook.getMemberIds().split(",").length +"浜�"); jsonMap.put("mdd", StringUtils.isBlank(carUseBook.getAddr())?"鐩殑鍦�: - ": "鐩殑鍦�:" +carUseBook.getAddr()); - }else { - throw new BusinessException(ResponseStatus.NOT_ALLOWED); + }else if(Constants.equalsInteger(noticeType,Constants.noticesObjectType.reason)){ + //鐗╂祦杞﹂绾� + PlatformBooks platformBooks = platformBooksMapper.selectById(businessId); + if(Objects.isNull(platformBooks)){ + throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏈煡璇㈠埌涓氬姟鏁版嵁淇℃伅"); + } + title = "銆愮墿娴佽溅鍏ュ洯棰勭害銆戠敵璇蜂汉 - " + platformBooks.getDriverName(); + jsonMap.put("inType", "鍏ュ簱绫诲瀷锛�"+(Constants.equalsInteger(platformBooks.getInType(),Constants.ZERO)?"鏁存墭鐩�":"浠剁儫")); + jsonMap.put("totalNum", "鎬昏繍杈撻噺锛�"+platformBooks.getTotalNum()+"涓囨敮"); + jsonMap.put("arriveDate", "鍒板満鏃堕棿锛�" + DateUtil.DateToStr(platformBooks.getArriveDate() , "yyyy-MM-dd HH:mm")); + jsonMap.put("carNum", "杞︾墝鐓э細"+platformBooks.getCarCodeFront()); } return title; } @@ -1345,7 +1403,7 @@ }else if(approveDTO.getObjType().equals(Constants.approveObjectType.cityUseCar)||approveDTO.getObjType().equals( Constants.approveObjectType.unCityUseCar)){ this.updDriver(approveDTO,approve,true); - }else if(approveDTO.getObjType().equals(Constants.approveObjectType.logisticsCarUse)){ + }else if(approveDTO.getObjType().equals(Constants.approveObjectType.reason)){ //鐗╂祦杞﹂绾� PlatformBooks platformBooks = platformBooksMapper.selectById(approveDTO.getObjId()); if(Objects.isNull(platformBooks)){ @@ -1354,9 +1412,13 @@ platformBooks.setStatus(approveDTO.getStatus()); platformBooks.setEditDate(new Date()); platformBooks.setEditor(approveDTO.getLoginUserInfo().getMemberId()); + PlatformReason platformReason = platformReasonMapper.selectById(platformBooks.getReasonId()); //鐢熸垚浠诲姟璁板綍 PlatformJob platformJob = platformBooks.toPlatformJob(); + platformJob.setPlatformGroupId(platformReason.getGroupId().intValue()); + platformJob.setType(Constants.platformJobType.sgscxh); + platformJob.setStatus(Constants.PlatformJobStatus.WART_SIGN_IN.getKey()); platformJobMapper.insert(platformJob); platformBooks.setJobId(platformJob.getId()); platformBooksMapper.updateById(platformBooks); @@ -1365,7 +1427,9 @@ platformLog.setCreateDate(new Date()); platformLog.setJobId(platformJob.getId()); platformLog.setIsdeleted(Constants.ZERO); - platformLog.setObjType(Constants.PlatformJobStatus.WART_SIGN_IN.getKey()); + platformLog.setParam4(platformJob.getCarCodeFront()); + platformLog.setContent(Constants.PlatformJobLogType.CREATE.getInfo()); + platformLog.setObjType(Constants.PlatformJobLogType.CREATE.getKey()); platformLog.setObjId(platformJob.getId().toString()); platformLog.setAfterContent(JSONObject.toJSONString(platformJob)); platformLogMapper.insert(platformLog); -- Gitblit v1.9.3