From b2cb07157105f1ad8ba43ce174c8069c7ac8cfd1 Mon Sep 17 00:00:00 2001 From: k94314517 <8417338+k94314517@user.noreply.gitee.com> Date: 星期三, 11 九月 2024 15:03:11 +0800 Subject: [PATCH] 代码初始化 --- server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java | 159 ++++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 139 insertions(+), 20 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 1af24c0..d687420 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; @@ -89,6 +90,14 @@ private CarUseBookJoinMapper carUseBookJoinMapper; @Autowired private NoticesJoinMapper noticesJoinMapper; + @Autowired + private PlatformBooksMapper platformBooksMapper; + @Autowired + private PlatformJobMapper platformJobMapper; + @Autowired + private PlatformLogMapper platformLogMapper; + @Autowired + private PlatformReasonMapper platformReasonMapper; @@ -382,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 @@ -485,7 +540,7 @@ approve.setTemplatId(approveTempl.getId()); approve.setChekorId(memberId); approve.setStatus(i==0?Constants.ONE:Constants.ZERO); - approve.setStatusInfo(i==0?"瀹℃壒涓�":"寰呭鎵�"); + approve.setStatusInfo(i==0?"瀹℃壒涓�":"澶勭悊涓�"); approve.setTitle("瀹℃壒浜�"); approve.setIsEndCheck((i+1) == approveParamList.size()?Constants.ONE:Constants.ZERO); approve.setObjId(businessId); @@ -549,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; } @@ -738,7 +802,7 @@ private List<Approve> getLevelInfoFromList(Approve level,List<Approve> approveGroupList) { List<Approve> list = new ArrayList<>(); if(Constants.equalsInteger(level.getApproveType(),Constants.TWO)){ - level.setApproveType(Constants.ZERO); + level.setApproveType(Constants.TWO); //濡傛灉鏄崟浜哄鎵� list.add(level); return list; @@ -765,11 +829,17 @@ waitModel.setType(Constants.ZERO); waitModel.setTitle(StringUtils.defaultString(level.getTitle(),"瀹℃壒浜�")); waitModel.setStatus(Constants.equalsInteger(waitList.get(Constants.ZERO).getStatus(),Constants.ONE)?Constants.ONE:Constants.ZERO); - waitModel.setStatusInfo("澶勭悊涓�"); - if(Constants.equalsInteger(level.getStatus(),Constants.approveStatus.auditIng) - ||Constants.equalsInteger(level.getStatus(),Constants.approveStatus.pass)){ - waitModel.setMemberName(waitList.size() +"浜轰細绛�"); + if(Constants.equalsInteger(waitModel.getStatus(),Constants.approveStatus.wait)){ + waitModel.setStatusInfo("寰呭鐞�"); + }else if(Constants.equalsInteger(waitModel.getStatus(),Constants.approveStatus.auditIng)){ + waitModel.setStatusInfo("澶勭悊涓�"); } + + waitModel.setMemberName(waitList.size() +"浜轰細绛�"); +// if(Constants.equalsInteger(level.getStatus(),Constants.approveStatus.auditIng) +// ||Constants.equalsInteger(level.getStatus(),Constants.approveStatus.pass)){ +// waitModel.setMemberName(waitList.size() +"浜轰細绛�"); +// } if(CollectionUtils.isNotEmpty(waitList)){ waitModel.setCreateDate(waitList.get(Constants.ZERO).getCreateDate()); } @@ -784,15 +854,17 @@ }else { if((waitList.size()> 0 || otherPassList.size()>0)){ Approve waitModel = new Approve(); - waitModel.setApproveType(Constants.ONE); + waitModel.setApproveType(Constants.ZERO); if(Constants.equalsInteger(level.getStatus(),Constants.approveStatus.pass)){ waitModel.setStatus(Constants.approveStatus.pass); waitModel.setType(Constants.ONE); waitModel.setTitle("瀹℃壒浜猴紙鎶勯�佹垨绛惧鎵逛汉锛�"); }else{ - waitModel.setType(Constants.ZERO); - waitModel.setStatusInfo(passList.size()<=0?StringUtils.defaultString(level.getTitle(),"瀹℃壒浜�"):"鎶勯�佹垨绛惧鎵逛汉"); waitModel.setStatus(passList.size()>0?Constants.ONE:Constants.ZERO); + waitModel.setType(Constants.ZERO); + //waitModel.setStatusInfo(passList.size()<=0?StringUtils.defaultString(level.getTitle(),"瀹℃壒浜�"):"鎶勯�佹垨绛惧鎵逛汉"); + waitModel.setTitle(passList.size()<=0?StringUtils.defaultString(level.getTitle(),"瀹℃壒浜�"):"鎶勯�佹垨绛惧鎵逛汉"); + } List<Approve> approveList = new ArrayList<>(); approveList.addAll(waitList); @@ -806,7 +878,10 @@ if(Constants.equalsInteger(waitModel.getStatus(),Constants.approveStatus.pass)){ waitModel.setMemberName("宸叉妱閫�"+ approveList.size() +"浜�"); }else if(Constants.equalsInteger(waitModel.getStatus(),Constants.approveStatus.wait)){ - waitModel.setMemberName("澶勭悊涓�"); + waitModel.setMemberName(waitList.size() +"浜烘垨绛�"); + waitModel.setStatusInfo("寰呭鐞�"); + }else{ + waitModel.setStatusInfo("澶勭悊涓�"); } waitModel.setApproveList(approveList); list.add(waitModel); @@ -986,6 +1061,23 @@ return Constants.ZERO; } + @Override + public String getApproveUserName(Integer businessId,Integer businessType){ + List<Approve> approveList = approveJoinMapper.selectJoinList(Approve.class,new MPJLambdaWrapper<Approve>() + .selectAll(Approve.class) + .selectAs(Member::getName,Approve::getMemberName) + .leftJoin(Member.class,Member::getId,Approve::getChekorId) + .eq(Approve::getObjId,businessId) + .eq(Approve::getObjType,businessType) + .eq(Approve::getType,Constants.ZERO) + .eq(Approve::getStatus,Constants.approveStatus.auditIng) + ); + if(CollectionUtils.isNotEmpty(approveList)){ + List<String> names = approveList.stream().map(m->m.getMemberName()).collect(Collectors.toList()); + return String.join(",",names); + } + return null; + } @@ -1144,8 +1236,6 @@ if(Objects.nonNull(visits)){ if(Constants.equalsInteger(visits.getStatus(),Constants.ZERO)){ visitsMapper.update(null,new UpdateWrapper<Visits>().lambda().set(Visits::getStatus,Constants.ONE).eq(Visits::getId,visits.getId())); - }else{ - throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌涓氬姟鏁版嵁瀵硅薄!璇峰埛鏂伴噸璇�"); } } @@ -1248,9 +1338,9 @@ String info = ""; List<String> memberNameList = Arrays.asList(memberNames.split(",")); if(Constants.equalsInteger(memberNameList.size(),Constants.ONE)){ - info = "寰� "+memberNameList.get(0)+" 澶勭悊涓�"; + info = "寰�"+memberNameList.get(0)+"澶勭悊涓�"; }else{ - info = "寰� "+memberNameList.get(0)+" 绛�"+memberNameList.size()+"浜哄鐞嗕腑"; + info = "寰�"+memberNameList.get(0)+"绛�"+memberNameList.size()+"浜哄鐞嗕腑"; } //鏇存柊璇ヤ笟鍔℃暟鎹殑鎵�鏈夎褰曚俊鎭� noticesJoinMapper.update(null,new UpdateWrapper<Notices>().lambda() @@ -1314,9 +1404,9 @@ notices.setParam5(memberNames); notices.setRemark(nextDealApprove.getMemberName()); if(Constants.equalsInteger(memberNameList.size(),Constants.ONE)){ - notices.setInfo("寰� "+memberNameList.get(0)+" 澶勭悊涓�"); + notices.setInfo("寰�"+memberNameList.get(0)+"澶勭悊涓�"); }else{ - notices.setInfo("寰� "+memberNameList.get(0)+" 绛�"+memberNameList.size()+"浜哄鐞嗕腑"); + notices.setInfo("寰�"+memberNameList.get(0)+"绛�"+memberNameList.size()+"浜哄鐞嗕腑"); } noticesJoinMapper.insert(newNotices); } @@ -1336,11 +1426,40 @@ visits.setEditDate(new Date()); visits.setEditor(approveDTO.getLoginUserInfo().getMemberId()); visitsMapper.updateById(visits); + }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)){ - //TODO 鐗╂祦杞﹂绾� + }else if(approveDTO.getObjType().equals(Constants.approveObjectType.reason)){ + //鐗╂祦杞﹂绾� + PlatformBooks platformBooks = platformBooksMapper.selectById(approveDTO.getObjId()); + if(Objects.isNull(platformBooks)){ + throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌鐗╂祦杞﹂绾﹁褰�"); + } + 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); + //鐢熸垚浠诲姟鎿嶄綔璁板綍 + PlatformLog platformLog = new PlatformLog(); + platformLog.setCreateDate(new Date()); + platformLog.setJobId(platformJob.getId()); + platformLog.setIsdeleted(Constants.ZERO); + 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); }else{ throw new BusinessException(ResponseStatus.BAD_REQUEST); -- Gitblit v1.9.3