From 843d0abd014ec20424844546fc57a9f976f366ba Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期一, 02 九月 2024 10:52:59 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java | 100 ++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 96 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 1af24c0..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;
@@ -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
@@ -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;
}
@@ -1339,8 +1403,36 @@
}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