From 44a0ef1620cad87479390900eb6ded041c7b8d7b Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期五, 17 五月 2024 16:56:31 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/1.0.1' into 1.0.1 --- server/service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java | 42 ++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 40 insertions(+), 2 deletions(-) diff --git a/server/service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java index 1fb46bc..33a8f2a 100644 --- a/server/service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java +++ b/server/service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java @@ -1,5 +1,6 @@ package com.doumee.service.business.impl; +import cn.hutool.core.util.IdcardUtil; import com.doumee.core.annotation.excel.ExcelImporter; import com.doumee.core.constants.ResponseStatus; import com.doumee.core.exception.BusinessException; @@ -10,6 +11,7 @@ import com.doumee.core.utils.DateUtil; import com.doumee.core.utils.Utils; import com.doumee.dao.business.MemberMapper; +import com.doumee.dao.business.SolutionsMapper; import com.doumee.dao.business.WorktypeMapper; import com.doumee.dao.business.dto.MemberImport; import com.doumee.dao.business.dto.MemberQueryDTO; @@ -31,6 +33,7 @@ import org.springframework.stereotype.Service; import org.springframework.web.multipart.MultipartFile; +import java.math.BigDecimal; import java.util.*; import java.util.stream.Collectors; @@ -53,6 +56,9 @@ @Autowired private WorktypeMapper worktypeMapper; + + @Autowired + private SolutionsMapper solutionsMapper; @Override public Integer create(Member member) { @@ -297,10 +303,19 @@ " and ad.member_id = t.id ") ; if(!Objects.isNull(memberQueryDTO.getInsuranceApplyId())){ lambdaWrapper = new MPJLambdaWrapper<Member>() - .selectAll(Member.class) + .select(Member::getId,Member::getName,Member::getIdcardNo) + .selectAs(Worktype::getId,Member::getWorktypeId) + .selectAs(DispatchUnit::getId,Member::getDuId) .selectAs(DispatchUnit::getName,Member::getDuName) .selectAs(Worktype::getName,Member::getWorkTypeName) .selectAs(Company::getName,Member::getCompanyName) + .selectAs(InsuranceApply::getStartTime,Member::getStartTime) + .selectAs(InsuranceApply::getFinalEndTime,Member::getEndTime) + .selectAs(InsuranceApply::getSolutionId,Member::getSolutionId) + .selectAs(ApplyDetail::getStartTime,Member::getDetailStartTime) + .selectAs(ApplyDetail::getEndTime,Member::getDetailEndTime) + .selectAs(ApplyDetail::getFee,Member::getFee) + .selectAs(InsuranceApply::getServerCost,Member::getDetailServerCost) .leftJoin(ApplyDetail.class,ApplyDetail::getMemberId,Member::getId) .leftJoin(InsuranceApply.class,InsuranceApply::getId,ApplyDetail::getApplyId) .leftJoin(DispatchUnit.class,DispatchUnit::getId,ApplyDetail::getDuId) @@ -316,6 +331,26 @@ " and ad.member_id = t.id "); } List<Member> memberList = memberJoinMapper.selectJoinList(Member.class,lambdaWrapper); + if(!Objects.isNull(memberQueryDTO.getInsuranceApplyId())&&Objects.isNull(memberQueryDTO.getValidTime())){ + if(CollectionUtils.isNotEmpty(memberList)){ + Solutions solutions = solutionsMapper.selectById(memberList.get(Constants.ZERO).getSolutionId()); + Date reduceEndTime = DateUtil.getMontageDate( + DateUtil.afterDateByType(new Date(),0,solutions.getDelValidDays()),3); + memberList = memberList.stream().filter(member->member.getDetailStartTime().getTime()<=reduceEndTime.getTime() + &&member.getDetailEndTime().getTime()>=reduceEndTime.getTime()).collect(Collectors.toList()); + for (Member member:memberList) { + //鍑忎繚涓氬姟 浣跨敤 閫夋嫨浜哄憳 鏍规嵁鏃ユ湡瀹炴椂鏌ヨ + member.setFee( + Constants.reduceFee(solutions, + Objects.isNull(member.getDetailServerCost())? + solutions.getPrice():solutions.getPrice().add(member.getDetailServerCost()),member.getStartTime(),member.getEndTime(),member.getDetailStartTime(), + reduceEndTime).subtract(member.getFee())); + } + } + + + + } return memberList; } @@ -338,7 +373,7 @@ ExcelImporter ie = null; List<MemberImport> dataList =null; try { - ie = new ExcelImporter(file,0,0); + ie = new ExcelImporter(file,1,0); dataList = ie.getDataList(MemberImport.class,null); } catch (Exception e) { e.printStackTrace(); @@ -381,6 +416,9 @@ if(StringUtils.isBlank(model.getIdCard())||model.getIdCard().length()!=18){ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝绗�"+index+"琛屾暟鎹韩浠借瘉淇℃伅寮傚父锛�"); } + if(!IdcardUtil.isValidCard(model.getIdCard())){ + throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝绗�"+index+"琛屾暟鎹韩浠借瘉淇℃伅寮傚父锛�"); + } if(StringUtils.isBlank(model.getName())){ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝绗�"+index+"琛屾暟鎹鍚嶄俊鎭紓甯革紒"); } -- Gitblit v1.9.3