|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | member.setIdcardNo(applyDetail.getIdcardNo()); | 
|---|
|  |  |  | member.setApplyId(insuranceApply.getId()); | 
|---|
|  |  |  | member.setStartTime(applyDetail.getStartTime()); | 
|---|
|  |  |  | member.setEndTime(applyDetail.getEndTime()); | 
|---|
|  |  |  | //                    member.setStartTime(applyDetail.getStartTime()); | 
|---|
|  |  |  | //                    member.setEndTime(applyDetail.getEndTime()); | 
|---|
|  |  |  | member.setDuId(applyDetail.getDuId()); | 
|---|
|  |  |  | member.setWorktypeId(applyDetail.getWorktypeId()); | 
|---|
|  |  |  | addMemberList.add(member); | 
|---|
|  |  |  | 
|---|
|  |  |  | applyDetail.setEndTime(insuranceApply.getApplyEndTime()); | 
|---|
|  |  |  | applyDetail.setSortnum(i); | 
|---|
|  |  |  | applyDetail.setApplyId(insuranceApply.getId()); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //根据员工身份证进行判断年龄 | 
|---|
|  |  |  | long age = Constants.getAgeByIdCard(applyDetail.getIdcardNo()); | 
|---|
|  |  |  | if(Objects.isNull(age) | 
|---|
|  |  |  | || age > solutions.getMaxAge() | 
|---|
|  |  |  | || age < solutions.getMinAge()){ | 
|---|
|  |  |  | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"【"+applyDetail.getMemberName()+"】员工年龄超出方案配置,方案配置【"+solutions.getMinAge()+" - "+solutions.getMaxAge()+"】!"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | Member member = null; | 
|---|
|  |  |  | if(Objects.isNull(applyDetail.getMemberId())){ | 
|---|
|  |  |  | if(CollectionUtils.isNotEmpty(memberList)){ | 
|---|
|  |  |  | 
|---|
|  |  |  | member.setApplyId(insuranceApply.getId()); | 
|---|
|  |  |  | member.setDuId(applyDetail.getDuId()); | 
|---|
|  |  |  | member.setWorktypeId(applyDetail.getWorktypeId()); | 
|---|
|  |  |  | member.setStartTime(applyDetail.getStartTime()); | 
|---|
|  |  |  | member.setEndTime(applyDetail.getEndTime()); | 
|---|
|  |  |  | //                        member.setStartTime(applyDetail.getStartTime()); | 
|---|
|  |  |  | //                        member.setEndTime(applyDetail.getEndTime()); | 
|---|
|  |  |  | memberMapper.updateById(member); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }else{ | 
|---|
|  |  |  | 
|---|
|  |  |  | member.setApplyId(insuranceApply.getId()); | 
|---|
|  |  |  | member.setDuId(applyDetail.getDuId()); | 
|---|
|  |  |  | member.setWorktypeId(applyDetail.getWorktypeId()); | 
|---|
|  |  |  | member.setStartTime(applyDetail.getStartTime()); | 
|---|
|  |  |  | member.setEndTime(applyDetail.getEndTime()); | 
|---|
|  |  |  | //                    member.setStartTime(applyDetail.getStartTime()); | 
|---|
|  |  |  | //                    member.setEndTime(applyDetail.getEndTime()); | 
|---|
|  |  |  | memberMapper.updateById(member); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //根据员工身份证进行判断年龄 | 
|---|
|  |  |  | long age = Constants.getAgeByIdCard(member.getIdcardNo()); | 
|---|
|  |  |  | if(Objects.isNull(age) | 
|---|
|  |  |  | || age > solutions.getMaxAge() | 
|---|
|  |  |  | || age < solutions.getMinAge()){ | 
|---|
|  |  |  | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"【"+applyDetail.getMemberName()+"】员工年龄超出方案配置,方案配置【"+solutions.getMinAge()+" - "+solutions.getMaxAge()+"】!"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | applyDetail.setMemberId(member.getId()); | 
|---|
|  |  |  | applyDetail.setIdcardNo(member.getIdcardNo()); | 
|---|
|  |  |  | applyDetail.setSex(member.getSex()); | 
|---|
|  |  |  | 
|---|
|  |  |  | .leftJoin(InsuranceApply.class,InsuranceApply::getId,ApplyDetail::getApplyId) | 
|---|
|  |  |  | .leftJoin(Solutions.class,Solutions::getId,InsuranceApply::getSolutionId) | 
|---|
|  |  |  | .eq(ApplyDetail::getIdcardNo,idCode) | 
|---|
|  |  |  | .eq(ApplyDetail::getIsdeleted,Constants.ZERO) | 
|---|
|  |  |  | .eq(Solutions::getBaseId,solutionId) | 
|---|
|  |  |  | .ne(Objects.nonNull(applyId),InsuranceApply::getId,applyId) | 
|---|
|  |  |  | .notIn(InsuranceApply::getStatus | 
|---|
|  |  |  | 
|---|
|  |  |  | .leftJoin(Solutions.class,Solutions::getId,InsuranceApply::getSolutionId) | 
|---|
|  |  |  | .eq(ApplyDetail::getIdcardNo,idCode) | 
|---|
|  |  |  | .eq(Solutions::getBaseId,solutionId) | 
|---|
|  |  |  | .eq(ApplyDetail::getIsdeleted,Constants.ZERO) | 
|---|
|  |  |  | .notIn(InsuranceApply::getStatus | 
|---|
|  |  |  | ,Constants.InsuranceApplyStatus.CLOSE.getKey() | 
|---|
|  |  |  | ,Constants.InsuranceApplyStatus.WTB_CLOSED.getKey() ) | 
|---|