| | |
| | | import com.baomidou.mybatisplus.extension.api.R; |
| | | import com.doumee.biz.system.SystemDictDataBiz; |
| | | import com.doumee.core.annotation.excel.ExcelExporter; |
| | | import com.doumee.core.annotation.excel.Reflections; |
| | | import com.doumee.core.constants.ResponseStatus; |
| | | import com.doumee.core.exception.BusinessException; |
| | | import com.doumee.core.model.LoginUserInfo; |
| | |
| | | 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; |
| | |
| | | } |
| | | //查询人员信息是否存在相同的方案下是否存在 冲突数据 |
| | | InsuranceApplyServiceImpl.checkStaticMemberSolution(solutions.getBaseId(), |
| | | member.getIdcardNo(),member.getName(),detail.getStartTime(),detail.getEndTime(), |
| | | member.getId(),member.getIdcardNo(),member.getName(),detail.getStartTime(),detail.getEndTime(), |
| | | applyDetailJoinMapper); |
| | | |
| | | //查询加保人员是否存在 冲突的 保单明细数据 |
| | |
| | | } |
| | | } |
| | | |
| | | 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()){ |
| | |
| | | fee = fee.add(delDetailList.stream().map(ApplyChagneDetail::getFee).reduce(BigDecimal.ZERO,BigDecimal::add)); |
| | | } |
| | | |
| | | |
| | | |
| | | //换厂业务 |
| | | List<ApplyChagneDetail> changeDetailList = applyChange.getChangeDetailList(); |
| | | if (CollectionUtils.isNotEmpty(changeDetailList)) { |
| | |
| | | |
| | | this.changeDetail(applyChange,changeDetailList,duSolutionList,loginUserInfo,solutions,worktypeIdList); |
| | | } |
| | | Long end = System.currentTimeMillis(); |
| | | logger.error("处理加减保保单数据结束时间:=========================>"+end +";单条耗时:====》"+(end-start)); |
| | | return fee; |
| | | } |
| | | |
| | |
| | | ) { |
| | | 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>() |
| | |
| | | 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)){ |
| | |
| | | memberMapper.updateById(member); |
| | | } |
| | | |
| | | //查询人员信息是否存在相同的方案下是否存在 冲突数据 |
| | | InsuranceApplyServiceImpl.checkStaticMemberSolution(solutions.getBaseId(), |
| | | applyChagneDetail.getMemberId(),applyChagneDetail.getIdcardNo(),applyChagneDetail.getMemberName(),applyChange.getApplyStartTime(),insuranceApply.getEndTime(), |
| | | applyDetailJoinMapper); |
| | | |
| | | //根据员工身份证进行判断年龄 |
| | | long age = Constants.getAgeByIdCard(member.getIdcardNo()); |
| | | if(Objects.isNull(age) |