From 626630050b7a66288872ccba387f56dbaa6b5f09 Mon Sep 17 00:00:00 2001 From: nidapeng <jp@doumee.com> Date: 星期日, 07 四月 2024 09:24:54 +0800 Subject: [PATCH] 提交一把 --- server/service/src/main/java/com/doumee/service/business/impl/UnionApplyServiceImpl.java | 30 +++++++++++++++++++++++------- 1 files changed, 23 insertions(+), 7 deletions(-) diff --git a/server/service/src/main/java/com/doumee/service/business/impl/UnionApplyServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/UnionApplyServiceImpl.java index 54f5b85..895e124 100644 --- a/server/service/src/main/java/com/doumee/service/business/impl/UnionApplyServiceImpl.java +++ b/server/service/src/main/java/com/doumee/service/business/impl/UnionApplyServiceImpl.java @@ -12,10 +12,7 @@ import com.doumee.core.utils.Utils; import com.doumee.dao.business.*; import com.doumee.dao.business.dto.*; -import com.doumee.dao.business.join.ApplyDetailJoinMapper; -import com.doumee.dao.business.join.ApplyLogJoinMapper; -import com.doumee.dao.business.join.InsuranceApplyJoinMapper; -import com.doumee.dao.business.join.UnionApplyJoinMapper; +import com.doumee.dao.business.join.*; import com.doumee.dao.business.model.*; import com.doumee.dao.system.model.SystemUser; import com.doumee.service.business.SmsEmailService; @@ -80,6 +77,8 @@ @Autowired private ApplyLogJoinMapper applyLogJoinMapper; + @Autowired + private MemberInsuranceJoinMapper memberInsuranceJoinMapper; @Value("${debug_model}") private boolean debugModel; @@ -740,7 +739,14 @@ List<InsuranceApply> insuranceApplyList = insuranceApplyJoinMapper.selectList(new QueryWrapper<InsuranceApply>() .lambda().eq(InsuranceApply::getUnionApplyId,unionApply.getId())); for (InsuranceApply insuranceApply:insuranceApplyList) { - BigDecimal price = Constants.formatBigdecimal(insuranceApply.getPrice()); + List<ApplyDetail> applyDetails = applyDetailList.stream() + .filter(m->Constants.equalsInteger(m.getApplyId(),(insuranceApply.getId()))).collect(Collectors.toList()); + if(CollectionUtils.isEmpty(applyDetails)){ + continue; + } + BigDecimal price = Constants.formatBigdecimal(applyDetails.get(Constants.ZERO).getPrice()); + + Optional<UnionApplyBXDDetailDTO> unionApplyBXDDDetailTO= unionApplyBXDDetailDTOList.stream().filter( m->m.getApplyId().equals(insuranceApply.getId())).findFirst(); if(unionApplyBXDDDetailTO.isPresent()){ @@ -770,9 +776,19 @@ }else if(useDays>0){ currentFee = new BigDecimal(useDays).multiply(price); } + //鐢熸垚鎶曚繚璁板綍 + if(CollectionUtils.isNotEmpty(applyDetailList)){ + List<MemberInsurance> memberInsuranceList = new ArrayList<>(); + for (ApplyDetail applyDetail:applyDetailList) { + applyDetail.setPrice(price); + applyDetail.setFee(price.multiply(new BigDecimal(maxDays))); + MemberInsurance memberInsurance = new MemberInsurance(applyDetail,user.getId()); + memberInsurance.setRelationType(Constants.ZERO); + memberInsuranceList.add(memberInsurance); + } + memberInsuranceJoinMapper.insertBatchSomeColumn(memberInsuranceList); + } - List<ApplyDetail> applyDetails = applyDetailList.stream() - .filter(m->Constants.equalsInteger(m.getApplyId(),(insuranceApply.getId()))).collect(Collectors.toList()); //鏇存柊鎶曚繚鐢宠鍗� insuranceApplyJoinMapper.update(null,new UpdateWrapper<InsuranceApply>().lambda() .set(InsuranceApply::getUnionApplyTbdStatus,Constants.THREE) -- Gitblit v1.9.3