server/company/src/main/java/com/doumee/api/business/InsuranceApplyController.java
@@ -136,6 +136,13 @@ } @ApiOperation("获取保障中人数") @GetMapping("/guaranteeNum") public ApiResponse<Integer> guaranteeNum() { return ApiResponse.success(insuranceApplyService.guaranteeNum()); } @ApiOperation("测试实际金额") @GetMapping("/testFee") public ApiResponse testFee(Integer id) { server/company/src/main/java/com/doumee/api/business/MemberController.java
@@ -112,6 +112,9 @@ } @ApiOperation(value = "人员信息导入" ,notes = "保单申请") @PostMapping("/importExcel") @ApiImplicitParams({ server/service/src/main/java/com/doumee/dao/business/vo/CountCyclePriceVO.java
@@ -18,5 +18,4 @@ @ApiModelProperty(value = "生效止期") private Date endDate; } server/service/src/main/java/com/doumee/service/business/InsuranceApplyService.java
@@ -162,5 +162,11 @@ * @return */ String getSignWTBTBDLink(SmsCheckDTO smsCheckDTO); /** * 保障中金额 * @return */ Integer guaranteeNum(); } server/service/src/main/java/com/doumee/service/business/impl/InsuranceApplyServiceImpl.java
@@ -42,6 +42,7 @@ import java.io.File; import java.math.BigDecimal; import java.math.RoundingMode; import java.util.*; import java.util.stream.Collectors; @@ -1422,9 +1423,7 @@ applyLogMapper.insert(log); //发送待办业务 //存储待办信息 Constants.NoticeObjectType noticeObjectType = Constants.NoticeObjectType.INSURANCE_APPLY; //删除其他待办 @@ -1624,6 +1623,14 @@ applyDetail.setSex(member.getSex()); applyDetail.setFee(countCyclePriceVO.getCyclePrice()); applyDetail.setCurrentFee(BigDecimal.ZERO); //获取计算总天数 Integer maxDays = DateUtil.calculateBetween(applyDetail.getStartTime(),applyDetail.getEndTime(),0); if(Constants.equalsInteger(maxDays,0)||Objects.isNull(applyDetail.getFee())){ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"投保信息异常:总天数与总金额错误"); } applyDetail.setPrice( applyDetail.getFee().divide(new BigDecimal(maxDays),2,RoundingMode.HALF_UP) ); //验证派遣单位信息是否存在 if(duSolutionList.stream().filter(d->d.getDispatchUnitId().equals(applyDetail.getDuId())).collect(Collectors.toList()).size()<=Constants.ZERO){ throw new BusinessException(ResponseStatus.DATA_ERRO.getCode(),"【"+applyDetail.getMemberName()+"】员工派遣单位未查询到!"); @@ -2161,6 +2168,30 @@ /** * 企业保障中人数 * @return */ @Override public Integer guaranteeNum() { LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); if(loginUserInfo.getType().equals(Constants.ZERO)){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"非企业端用户无法进行该操作"); } MPJLambdaWrapper<ApplyDetail> lambdaWrapper = new MPJLambdaWrapper<ApplyDetail>(); lambdaWrapper.selectAll(Member.class) .leftJoin(InsuranceApply.class,InsuranceApply::getId,ApplyDetail::getApplyId) .and(i->i.eq(InsuranceApply::getStatus,Constants.InsuranceApplyStatus.UPLOAD_INSURANCE.getKey()).or().eq(InsuranceApply::getStatus,Constants.InsuranceApplyStatus.WTB_DONE.getKey())) .eq(InsuranceApply::getCompanyId,loginUserInfo.getCompanyId()) .apply(" now() betwwen t.START_TIME and t.END_TIME "); Integer count = applyDetailJoinMapper.selectJoinCount(lambdaWrapper); return count; } /** * 更新保单实际金额 */ @Override server/service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
@@ -306,6 +306,7 @@ .leftJoin(Worktype.class,Worktype::getId,ApplyDetail::getWorktypeId) .eq(Member::getIsdeleted, Constants.ZERO) .eq(InsuranceApply::getId,memberQueryDTO.getInsuranceApplyId()) .like(StringUtils.isNotBlank(memberQueryDTO.getName()),Member::getName, memberQueryDTO.getName()) .le(!Objects.isNull(memberQueryDTO.getValidTime()),ApplyDetail::getStartTime,memberQueryDTO.getValidTime()) .ge(!Objects.isNull(memberQueryDTO.getValidTime()),ApplyDetail::getEndTime,memberQueryDTO.getValidTime()) .exists(!Objects.isNull(memberQueryDTO.getInsuranceApplyId())&&!Objects.isNull(memberQueryDTO.getValidTime()), @@ -316,8 +317,6 @@ List<Member> memberList = memberJoinMapper.selectJoinList(Member.class,lambdaWrapper); return memberList; } @Override public List<MemberImport> importBatch(MultipartFile file,Integer solutionId){