From d644d2a87c4a5c72f984cd650c48e9b800ba9e73 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期二, 08 十月 2024 14:52:16 +0800
Subject: [PATCH] 最新版本
---
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveTemplServiceImpl.java | 62 ++++++++++++++++++++++++++++---
1 files changed, 56 insertions(+), 6 deletions(-)
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveTemplServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveTemplServiceImpl.java
index b940e2e..b3b0653 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveTemplServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveTemplServiceImpl.java
@@ -9,13 +9,16 @@
import com.doumee.core.utils.Utils;
import com.doumee.dao.business.ApproveParamMapper;
import com.doumee.dao.business.ApproveTemplMapper;
-import com.doumee.dao.business.MemberMapper;
+import com.doumee.dao.business.PlatformReasonMapper;
+import com.doumee.dao.business.join.MemberJoinMapper;
import com.doumee.dao.business.model.*;
import com.doumee.service.business.ApproveTemplService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.github.yulichang.wrapper.MPJLambdaWrapper;
+import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -24,6 +27,7 @@
import java.util.Date;
import java.util.List;
+import java.util.Objects;
/**
* 瀹℃壒妯$増淇℃伅琛⊿ervice瀹炵幇
@@ -38,7 +42,9 @@
@Autowired
private ApproveParamMapper approveParamMapper;
@Autowired
- private MemberMapper memberMapper;
+ private MemberJoinMapper memberJoinMapper;
+ @Autowired
+ private PlatformReasonMapper platformReasonMapper;
@Override
@Transactional(rollbackFor = {BusinessException.class,Exception.class})
@@ -50,9 +56,21 @@
if(model.getType() == null || Constants.ApproveTmplType.getName(model.getType()) == null){
throw new BusinessException(ResponseStatus.BAD_REQUEST);
}
+ PlatformReason reason = null;
+ if(Constants.equalsInteger(model.getType(),Constants.ApproveTmplType.PLATFROM_REASON.getKey())){
+ if(model.getReasonId() ==null){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST);
+ }
+ reason = platformReasonMapper.selectById(model.getReasonId());
+ if(reason ==null){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝鍏ュ洯鍘熷洜淇℃伅涓嶅瓨鍦紝璇疯繑鍥炲埛鏂伴〉闈㈤噸璇曪紒");
+ }
+ }
ApproveTempl template = approveTemplMapper.selectOne(new QueryWrapper<ApproveTempl>().lambda()
.eq(ApproveTempl::getType,model.getType() )
.eq(ApproveTempl::getIsdeleted,Constants.ZERO)
+ //濡傛灉鏄叆鍥師鍥犻厤缃紝鏍规嵁ID鏌ヨ瀵瑰簲鐨勬ā鐗堜俊鎭�
+ .eq(Constants.equalsInteger(model.getType(),Constants.ApproveTmplType.PLATFROM_REASON.getKey()),ApproveTempl::getId,model.getReasonId())
.last("limit 1"));
Date date =new Date();
if(template == null){
@@ -67,26 +85,39 @@
template.setName(Constants.ApproveTmplType.getName(model.getType()));
approveTemplMapper.insert(template);
}
+ int level = 0;
if(model.getParamList()!=null && model.getParamList().size()>0){
for(ApproveParam param : model.getParamList()){
param.setCreateDate(date);
+ param.setId(null);
param.setCreator(loginUserInfo.getId());
param.setEditDate(date);
param.setEditor(loginUserInfo.getId());
param.setIsdeleted(Constants.ZERO);
+// param.setLevel(level);
+ param.setMemberType(Constants.formatIntegerNum(param.getMemberType()));
param.setTemplId(template.getId());
param.setType(Constants.formatIntegerNum(param.getType()));
param.setAddrParam(Constants.formatIntegerNum(param.getAddrParam()));
param.setDriverParam(Constants.formatIntegerNum(param.getDriverParam()));
- param.setApproveType(Constants.formatIntegerNum(param.getApproveType()));
+ param.setApproveType(Objects.isNull(param.getApproveType())?Constants.TWO:param.getApproveType());
+ level ++ ;
}
//鍏堟竻闄ゅ師鏉ユ墍鏈夌殑灏遍櫔閰嶇疆
approveParamMapper.delete(new UpdateWrapper<ApproveParam>().lambda()
.eq(ApproveParam::getTemplId,template.getId()));
//鎵归噺鎻掑叆鏂扮殑閰嶇疆
- approveParamMapper.insertBatchSomeColumn(model.getParamList());
+ approveParamMapper.insert(model.getParamList());
}
- return model.getId();
+ if(Constants.equalsInteger(model.getType(),Constants.ApproveTmplType.PLATFROM_REASON.getKey())){
+ PlatformReason r = new PlatformReason();
+ r.setApproveTemplId(template.getId());
+ r.setId(model.getReasonId());
+ r.setEditor(template.getEditor());
+ r.setEditDate(new Date());
+ platformReasonMapper.updateById(r);
+ }
+ return 1;
}
@Override
@@ -144,7 +175,26 @@
@Override
public ApproveTempl findOne(ApproveTempl approveTempl) {
QueryWrapper<ApproveTempl> wrapper = new QueryWrapper<>(approveTempl);
- return approveTemplMapper.selectOne(wrapper);
+ ApproveTempl model = approveTemplMapper.selectOne(wrapper.lambda().last("limit 1"));
+ if(model!=null){
+ List<ApproveParam> approveParamList = approveParamMapper.selectList(new QueryWrapper<ApproveParam>()
+ .lambda().eq(ApproveParam::getIsdeleted,Constants.ZERO)
+ .eq(ApproveParam::getTemplId,model.getId())
+ .orderByAsc(ApproveParam::getLevel)
+ );
+ for (ApproveParam approveParam :approveParamList) {
+ if(StringUtils.isNotBlank(approveParam.getObjIds())){
+ approveParam.setMemberList(memberJoinMapper.selectJoinList(Member.class,new MPJLambdaWrapper<Member>()
+ .selectAll(Member.class)
+ .selectAs(Company::getName,Member::getCompanyName)
+ .leftJoin(Company.class,Company::getId,Member::getCompanyId)
+ .eq(Member::getIsdeleted,Constants.ZERO)
+ .in(Member::getId,approveParam.getObjIds().split(","))));
+ }
+ }
+ model.setParamList(approveParamList);
+ }
+ return model;
}
@Override
--
Gitblit v1.9.3