From 870dfdba90fc4062b66de669ad9ff3f4707bf496 Mon Sep 17 00:00:00 2001 From: k94314517 <8417338+k94314517@user.noreply.gitee.com> Date: 星期一, 09 六月 2025 10:32:08 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/2.0.1' into 2.0.1 --- server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java | 68 ++++++++++++++++++--------------- 1 files changed, 37 insertions(+), 31 deletions(-) diff --git a/server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java index c29e035..1dd9e0a 100644 --- a/server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java +++ b/server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java @@ -2,8 +2,10 @@ import cn.hutool.core.util.IdcardUtil; import com.alibaba.fastjson.JSONObject; - -import com.baomidou.mybatisplus.extension.api.R; +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.doumee.biz.system.SystemDictDataBiz; import com.doumee.core.annotation.excel.ExcelExporter; import com.doumee.core.constants.ResponseStatus; @@ -15,37 +17,31 @@ import com.doumee.core.utils.DateUtil; import com.doumee.core.utils.Utils; import com.doumee.dao.business.*; -import com.doumee.dao.business.dto.*; +import com.doumee.dao.business.dto.ApplyChangeCyclePriceDTO; +import com.doumee.dao.business.dto.ApplyChangeOptDTO; +import com.doumee.dao.business.dto.SaveUnionChangeDTO; +import com.doumee.dao.business.dto.SmsCheckDTO; import com.doumee.dao.business.join.*; import com.doumee.dao.business.model.*; -import com.doumee.dao.business.vo.ChangeDealTypeVO; import com.doumee.dao.business.vo.CountCyclePriceVO; import com.doumee.dao.system.model.SystemUser; import com.doumee.service.business.ApplyChangeService; -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.doumee.service.business.InsuranceApplyService; import com.doumee.service.business.SmsEmailService; import com.doumee.service.business.third.SignService; import com.github.xiaoymin.knife4j.core.util.CollectionUtils; import com.github.yulichang.wrapper.MPJLambdaWrapper; import org.apache.commons.lang3.StringUtils; import org.apache.shiro.SecurityUtils; -import org.checkerframework.checker.units.qual.A; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.math.BigDecimal; -import java.util.*; import java.math.RoundingMode; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; -import java.util.Objects; +import java.util.*; import java.util.stream.Collectors; /** @@ -264,7 +260,7 @@ pidanFile.setObjType(Constants.MultiFile.CA_PD_PDF.getKey()); pidanFile.setType(Constants.TWO); } - multifileMapper.insertBatchSomeColumn(pidanFileList); + multifileMapper.insert(pidanFileList); update.setApplyId(model.getApplyId()); @@ -364,7 +360,7 @@ pidanFile.setObjType(Constants.MultiFile.CA_PD_PDF.getKey()); pidanFile.setType(Constants.TWO); } - multifileMapper.insertBatchSomeColumn(param.getPidanFileList()); + multifileMapper.insert(param.getPidanFileList()); // param.getPidanFile().setIsdeleted(Constants.ZERO); // param.getPidanFile().setObjId(update.getId()); @@ -734,7 +730,7 @@ } //鏌ヨ浜哄憳淇℃伅鏄惁瀛樺湪鐩稿悓鐨勬柟妗堜笅鏄惁瀛樺湪 鍐茬獊鏁版嵁 InsuranceApplyServiceImpl.checkStaticMemberSolution(solutions.getBaseId(), - member.getIdcardNo(),member.getName(),detail.getStartTime(),detail.getEndTime(), + member.getId(),member.getIdcardNo(),member.getName(),detail.getStartTime(),detail.getEndTime(), applyDetailJoinMapper); //鏌ヨ鍔犱繚浜哄憳鏄惁瀛樺湪 鍐茬獊鐨� 淇濆崟鏄庣粏鏁版嵁 @@ -809,7 +805,7 @@ } if (memberInsuranceList != null && memberInsuranceList.size() > 0) { - memberInsuranceJoinMapper.insertBatchSomeColumn(memberInsuranceList); + memberInsuranceJoinMapper.insert(memberInsuranceList); } if (totalFee.compareTo(new BigDecimal(0)) != 0) { @@ -1140,9 +1136,12 @@ } } + private static Logger logger = LoggerFactory.getLogger(ApplyChangeServiceImpl.class); public BigDecimal dealApplyChangeData(ApplyChange applyChange,InsuranceApply insuranceApply ,CompanySolution companySolution,Solutions solutions,LoginUserInfo loginUserInfo,BigDecimal fee){ + Long start = System.currentTimeMillis(); + logger.error("澶勭悊鍔犲噺淇濅繚鍗曟暟鎹紑濮嬫椂闂�:=========================>"+start); if(Constants.equalsInteger(applyChange.getType(),Constants.ZERO)){ if(Objects.nonNull(solutions.getDelOnlyReplace())&& solutions.getDelOnlyReplace().equals(Constants.ONE)){ if(applyChange.getDelDetailList().size() > applyChange.getAddDetailList().size()){ @@ -1194,6 +1193,14 @@ List<ApplyChagneDetail> delDetailList = applyChange.getDelDetailList(); //鍔犱繚鏁版嵁 List<ApplyChagneDetail> addDetailList = applyChange.getAddDetailList(); + //鎹㈠巶涓氬姟 + List<ApplyChagneDetail> changeDetailList = applyChange.getChangeDetailList(); + + if(CollectionUtils.isEmpty(delDetailList) + && CollectionUtils.isEmpty(addDetailList) + && CollectionUtils.isEmpty(changeDetailList)){ + throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝鏈坊鍔犱汉鍛樻暟鎹棤娉曡繘琛屾彁浜�"); + } if (CollectionUtils.isNotEmpty(addDetailList)) { if(Objects.isNull(solutions.getCanAdd()) || solutions.getCanAdd().equals(Constants.ZERO)){ @@ -1231,10 +1238,7 @@ fee = fee.add(delDetailList.stream().map(ApplyChagneDetail::getFee).reduce(BigDecimal.ZERO,BigDecimal::add)); } - - //鎹㈠巶涓氬姟 - List<ApplyChagneDetail> changeDetailList = applyChange.getChangeDetailList(); if (CollectionUtils.isNotEmpty(changeDetailList)) { if(Objects.isNull(solutions.getCanChangeUnit()) || solutions.getCanChangeUnit().equals(Constants.ZERO)){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "璇ヤ繚闄╂柟妗堟棤娉曡繘琛屾崲鍘傛搷浣�"); @@ -1248,6 +1252,8 @@ this.changeDetail(applyChange,changeDetailList,duSolutionList,loginUserInfo,solutions,worktypeIdList); } + Long end = System.currentTimeMillis(); + logger.error("澶勭悊鍔犲噺淇濅繚鍗曟暟鎹粨鏉熸椂闂�:=========================>"+end +";鍗曟潯鑰楁椂锛�====銆�"+(end-start)); return fee; } @@ -1352,6 +1358,7 @@ } //鏌ヨ鍛樺伐鏄湪涓诲崟涓� 鏄惁瀛樺湪鐢熸晥涓殑鏁版嵁 List<ApplyDetail> applyDetailList = applyDetailJoinMapper.selectList(new QueryWrapper<ApplyDetail>().lambda() + .eq(ApplyDetail::getIsdeleted,Constants.ZERO) .eq(ApplyDetail::getApplyId, applyChange.getApplyId()) .eq(ApplyDetail::getMemberId, applyChagneDetail.getMemberId()) // .le(ApplyDetail::getStartTime,DateUtil.getMontageDate(applyChange.getDelValidTime(),1)) @@ -1434,10 +1441,6 @@ ) { throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "鍔犱繚浜哄憳銆�" + applyChagneDetail.getMemberName() + "銆戝繀濉」缂哄け"); } - //鏌ヨ浜哄憳淇℃伅鏄惁瀛樺湪鐩稿悓鐨勬柟妗堜笅鏄惁瀛樺湪 鍐茬獊鏁版嵁 - InsuranceApplyServiceImpl.checkStaticMemberSolution(solutions.getBaseId(), - applyChagneDetail.getIdcardNo(),applyChagneDetail.getMemberName(),applyChange.getApplyStartTime(),insuranceApply.getEndTime(), - applyDetailJoinMapper); //鏌ヨ鍔犱繚浜哄憳鏄惁瀛樺湪 鍐茬獊鐨� 淇濆崟鏄庣粏鏁版嵁 if(applyDetailJoinMapper.selectCount(new QueryWrapper<ApplyDetail>() @@ -1445,7 +1448,7 @@ .eq(ApplyDetail::getApplyId,applyChange.getApplyId()) .eq(ApplyDetail::getIdcardNo,applyChagneDetail.getIdcardNo()) .le(ApplyDetail::getStartTime,DateUtil.getMontageDate(applyChange.getApplyStartTime(),1)) - .ge(ApplyDetail::getEndTime,DateUtil.getMontageDate(insuranceApply.getEndTime(),2)) + .ge(ApplyDetail::getEndTime,DateUtil.getMontageDate(insuranceApply.getEndTime(),2)) )>Constants.ZERO){ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "褰撳墠淇濆崟涓嬶紝鍔犱繚浜哄憳銆�" + applyChagneDetail.getMemberName() + "銆戝瓨鍦ㄦ棩鏈熷啿绐佺殑鏁版嵁"); } @@ -1488,17 +1491,14 @@ member.setApplyId(insuranceApply.getId()); member.setDuId(applyChagneDetail.getDuId()); member.setWorktypeId(applyChagneDetail.getWorktypeId()); -// member.setStartTime(applyChagneDetail.getStartTime()); -// member.setEndTime(applyChagneDetail.getEndTime()); memberMapper.insert(member); }else{ member.setApplyId(insuranceApply.getId()); member.setDuId(applyChagneDetail.getDuId()); member.setWorktypeId(applyChagneDetail.getWorktypeId()); -// member.setStartTime(applyChagneDetail.getStartTime()); -// member.setEndTime(applyChagneDetail.getEndTime()); memberMapper.updateById(member); } + applyChagneDetail.setMemberId(member.getId()); }else{ member = memberMapper.selectById(applyChagneDetail.getMemberId()); if(Objects.isNull(member)){ @@ -1511,6 +1511,11 @@ member.setEndTime(applyChagneDetail.getEndTime()); memberMapper.updateById(member); } + + //鏌ヨ浜哄憳淇℃伅鏄惁瀛樺湪鐩稿悓鐨勬柟妗堜笅鏄惁瀛樺湪 鍐茬獊鏁版嵁 + InsuranceApplyServiceImpl.checkStaticMemberSolution(solutions.getBaseId(), + applyChagneDetail.getMemberId(),applyChagneDetail.getIdcardNo(),applyChagneDetail.getMemberName(),applyChange.getApplyStartTime(),insuranceApply.getEndTime(), + applyDetailJoinMapper); //鏍规嵁鍛樺伐韬唤璇佽繘琛屽垽鏂勾榫� long age = Constants.getAgeByIdCard(member.getIdcardNo()); @@ -1612,6 +1617,7 @@ } //鏌ヨ鍛樺伐鏄湪涓诲崟涓� 鏄惁瀛樺湪鐢熸晥涓殑鏁版嵁 List<ApplyDetail> applyDetailList = applyDetailJoinMapper.selectList(new QueryWrapper<ApplyDetail>().lambda() + .eq(ApplyDetail::getIsdeleted,Constants.ZERO) .eq(ApplyDetail::getApplyId, applyChange.getApplyId()) .eq(ApplyDetail::getMemberId, applyChagneDetail.getMemberId()) .le(ApplyDetail::getStartTime,DateUtil.getMontageDate(applyChange.getApplyStartTime(),1)) -- Gitblit v1.9.3