| | |
| | | if(!(solutions.getIsdeleted().equals(Constants.ZERO)||solutions.getStatus().equals(Constants.ZERO))){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"方案信息已被禁用"); |
| | | } |
| | | if(solutions.getValidType().equals(Constants.ZERO)){ |
| | | if(DateUtil.getMontageDate( |
| | | DateUtil.addDaysToDate(new Date(),solutions.getValidTypeNum()),1).getTime() |
| | | >insuranceApply.getApplyStartTime().getTime()){ |
| | | throw new BusinessException(ResponseStatus.DATA_ERRO.getCode(),"保单生效起期错误"); |
| | | } |
| | | }else{ |
| | | if(DateUtil.getNextMonthFirst(new Date()).getTime()>insuranceApply.getApplyStartTime().getTime()){ |
| | | throw new BusinessException(ResponseStatus.DATA_ERRO.getCode(),"保单生效起期错误"); |
| | | } |
| | | } |
| | | |
| | | List<ApplyDetail> applyDetailList = insuranceApply.getApplyDetailList(); |
| | | //判断是否存在重复信息 |
| | | List<String> idCardList = applyDetailList.stream().map(i->i.getIdcardNo()).collect(Collectors.toList()); |
| | |
| | | return new ArrayList<>(); |
| | | } |
| | | List<Integer> statusList = Constants.InsuranceApplyStatus.getKesByStatus(collectStatus); |
| | | if(collectStatus.equals(Constants.ApplyCollectStatus.DCD)){ |
| | | if(collectStatus.equals(Constants.ApplyCollectStatus.DCD.getKey())){ |
| | | statusList.addAll(Constants.InsuranceApplyStatus.getKesByStatus(Constants.ApplyCollectStatus.WTBDCD.getKey())); |
| | | }else if(collectStatus.equals(Constants.ApplyCollectStatus.DSP)){ |
| | | }else if(collectStatus.equals(Constants.ApplyCollectStatus.DSP.getKey())){ |
| | | statusList.addAll(Constants.InsuranceApplyStatus.getKesByStatus(Constants.ApplyCollectStatus.WTBDSH.getKey())); |
| | | }else if(collectStatus.equals(Constants.ApplyCollectStatus.BZZ)){ |
| | | }else if(collectStatus.equals(Constants.ApplyCollectStatus.BZZ.getKey())){ |
| | | statusList.addAll(Constants.InsuranceApplyStatus.getKesByStatus(Constants.ApplyCollectStatus.WTBBZZ.getKey())); |
| | | }else if(collectStatus.equals(Constants.ApplyCollectStatus.YTH)){ |
| | | }else if(collectStatus.equals(Constants.ApplyCollectStatus.YTH.getKey())){ |
| | | statusList.addAll(Constants.InsuranceApplyStatus.getKesByStatus(Constants.ApplyCollectStatus.WTBYTH.getKey())); |
| | | }else if(collectStatus.equals(Constants.ApplyCollectStatus.YGB)){ |
| | | }else if(collectStatus.equals(Constants.ApplyCollectStatus.YGB.getKey())){ |
| | | statusList.addAll(Constants.InsuranceApplyStatus.getKesByStatus(Constants.ApplyCollectStatus.WTBYGB.getKey())); |
| | | }else if(collectStatus.equals(Constants.ApplyCollectStatus.DQYQZ)){ |
| | | }else if(collectStatus.equals(Constants.ApplyCollectStatus.DQYQZ.getKey())){ |
| | | statusList.addAll(Constants.InsuranceApplyStatus.getKesByStatus(Constants.ApplyCollectStatus.WTBDQS.getKey())); |
| | | } |
| | | |
| | |
| | | queryWrapper.select(" DATEDIFF( t.END_TIME ,now() ) AS loseEfficacyDays "); |
| | | queryWrapper.select(" ( select count(DISTINCT(ad.MEMBER_ID)) from apply_detail ad where ad.apply_id = t.id ) as insureNum"); |
| | | if(!Objects.isNull(pageWrap.getModel())&&!Objects.isNull(pageWrap.getModel().getType())){ |
| | | queryWrapper.select(" ifnull(( select sum(td.fee) from taxes ts inner join tax_detial td on td.TAX_ID = ts.id where ts.status = 1 and td.INSURANCE_APPLY_ID = t.id ),0) as taxesMoney"); |
| | | queryWrapper.select(" ifnull(( select sum(td.fee) from taxes ts inner join tax_detial td on td.TAX_ID = ts.id where ts.status != 2 and td.INSURANCE_APPLY_ID = t.id ),0) as taxesMoney"); |
| | | queryWrapper.select(" ( select td.CREATE_DATE from taxes ts inner join tax_detial td on td.TAX_ID = ts.id where ts.status = 1 and td.INSURANCE_APPLY_ID = t.id order by td.CREATE_DATE desc limit 1 ) as taxesLast "); |
| | | } |
| | | queryWrapper.leftJoin(Solutions.class,Solutions::getId,InsuranceApply::getSolutionId); |
| | |
| | | queryWrapper.eq(pageWrap.getModel().getBaseSolutionId()!=null,Solutions::getBaseId,pageWrap.getModel().getBaseSolutionId()); |
| | | queryWrapper.in(statusList.size()>0,InsuranceApply::getStatus,statusList); |
| | | queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getSolutionName()),Solutions::getName,pageWrap.getModel().getSolutionName()); |
| | | if(Constants.equalsInteger(pageWrap.getModel().getStatusCollect(),Constants.THREE) ){ |
| | | queryWrapper.eq(InsuranceApply::getStatus,Constants.InsuranceApplyStatus.UPLOAD_INSURANCE.getKey()); |
| | | if(Constants.equalsInteger(pageWrap.getModel().getStatusCollect(),Constants.ApplyCollectStatus.YGQ.getKey()) ){ |
| | | //如果是已過期 |
| | | // queryWrapper.eq(InsuranceApply::getStatus,Constants.InsuranceApplyStatus.UPLOAD_INSURANCE.getKey()); |
| | | queryWrapper.lt(InsuranceApply::getEndTime, Utils.Date.getStart(new Date())); |
| | | }else if(Constants.equalsInteger(pageWrap.getModel().getStatusCollect(),Constants.ApplyCollectStatus.BZZ.getKey()) ){ |
| | | //如果是保障中 |
| | | // queryWrapper.eq(InsuranceApply::getStatus,Constants.InsuranceApplyStatus.UPLOAD_INSURANCE.getKey()); |
| | | queryWrapper.gt(InsuranceApply::getEndTime, Utils.Date.getStart(new Date())); |
| | | } |
| | | LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); |
| | | |
| | |
| | | queryWrapper.eq(InsuranceApply::getCompanyId, loginUserInfo.getCompanyId()); |
| | | }else if(loginUserInfo.getType().equals(Constants.TWO)){ |
| | | //如果是商户查看 |
| | | if(pageWrap.getModel().getSolutionType()!=null && pageWrap.getModel().getSolutionType() ==0){ |
| | | queryWrapper.exists("select cs.id from company_solution cs where cs.isdeleted=0 and cs.company_id=t.company_id and cs.shop_id="+loginUserInfo.getCompanyId()); |
| | | if(pageWrap.getModel().getSolutionType()!=null && pageWrap.getModel().getSolutionType().equals(0)){ |
| | | queryWrapper.exists("select cs.id from company_solution cs left join solutions s on cs.solution_id=s.id where cs.isdeleted=0 and s.base_id=t1.base_id and cs.shop_id="+loginUserInfo.getCompanyId()); |
| | | }else if(pageWrap.getModel().getSolutionType()!=null && pageWrap.getModel().getSolutionType() ==1){ |
| | | queryWrapper.eq(Solutions::getShopId,loginUserInfo.getCompanyId()); |
| | | }else{ |
| | | queryWrapper.apply("((t1.type=0 and exists(select cs.id from company_solution cs where cs.isdeleted=0 and cs.company_id=t.company_id and cs.shop_id="+loginUserInfo.getCompanyId()+")) or (" + |
| | | queryWrapper.apply("((t1.type=0 and exists(select cs.id from company_solution cs left join solutions s on cs.solution_id=s.id where cs.isdeleted=0 and s.base_id=t1.base_id and cs.shop_id="+loginUserInfo.getCompanyId()+")) or (" + |
| | | "t1.type=1 and t1.shop_id="+loginUserInfo.getCompanyId()+"))") ; |
| | | } |
| | | }else{ |
| | |
| | | MPJLambdaWrapper wrapper= new MPJLambdaWrapper<InsuranceApply>() |
| | | .selectAll(InsuranceApply.class) |
| | | .selectAs(Solutions::getName,InsuranceApply::getSolutionsName) |
| | | .selectAs(Solutions::getType,InsuranceApply::getSolutionType) |
| | | .selectAs(Company::getName,InsuranceApply::getCompanyName) |
| | | .leftJoin(Solutions.class,Solutions::getId,InsuranceApply::getSolutionId) |
| | | .leftJoin(Company.class,Company::getId,InsuranceApply::getCompanyId) |
| | |
| | | MPJLambdaWrapper<ApplyDetail> lambdaWrapper = new MPJLambdaWrapper<ApplyDetail>(); |
| | | lambdaWrapper.select(ApplyDetail::getId) |
| | | .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())) |
| | | .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() between t.START_TIME and t.END_TIME "); |
| | | |