| | |
| | | List<UnionApplyBXDDetailDTO> unionApplyBXDDetailDTOList = unionApplyBXDDTO.getUnionApplyBXDDDetailDTOList(); |
| | | |
| | | //所有投保申请保单明细行 |
| | | List<ApplyDetail> applyDetailList = applyDetailJoinMapper.selectList(new QueryWrapper<ApplyDetail>().lambda().select(ApplyDetail::getPrice) |
| | | List<ApplyDetail> applyDetailList = applyDetailJoinMapper.selectList(new QueryWrapper<ApplyDetail>().lambda() |
| | | .select(ApplyDetail::getId,ApplyDetail::getApplyId,ApplyDetail::getPrice) |
| | | .in(ApplyDetail::getUnionApplyId,unionApply.getId())); |
| | | //总天数 |
| | | Integer maxDays = DateUtil.calculateBetween(unionApplyBXDDTO.getStartTime(),unionApplyBXDDTO.getEndTime(),0); |
| | |
| | | List<InsuranceApply> insuranceApplyList = insuranceApplyJoinMapper.selectList(new QueryWrapper<InsuranceApply>() |
| | | .lambda().eq(InsuranceApply::getUnionApplyId,unionApply.getId())); |
| | | for (InsuranceApply insuranceApply:insuranceApplyList) { |
| | | BigDecimal price = insuranceApply.getPrice(); |
| | | Optional<UnionApplyBXDDetailDTO> unionApplyBXDDDetailTO= unionApplyBXDDetailDTOList.stream().filter(m->m.getApplyId().equals(insuranceApply.getId())).findFirst(); |
| | | BigDecimal price = Constants.formatBigdecimal(insuranceApply.getPrice()); |
| | | Optional<UnionApplyBXDDetailDTO> unionApplyBXDDDetailTO= unionApplyBXDDetailDTOList.stream().filter( |
| | | m->m.getApplyId().equals(insuranceApply.getId())).findFirst(); |
| | | if(unionApplyBXDDDetailTO.isPresent()){ |
| | | UnionApplyBXDDetailDTO unionApplyBXDDetailDTO = unionApplyBXDDDetailTO.get(); |
| | | price = price.add(unionApplyBXDDetailDTO.getServerMoney()); |
| | | price = Constants.formatBigdecimal(price).add(Constants.formatBigdecimal(unionApplyBXDDetailDTO.getServerMoney())); |
| | | //上传保单信息 |
| | | if(StringUtils.isNotBlank(unionApplyBXDDetailDTO.getFileUrl())){ |
| | | Multifile multifile = new Multifile(); |
| | |
| | | currentFee = new BigDecimal(useDays).multiply(price); |
| | | } |
| | | |
| | | List<ApplyDetail> applyDetails = applyDetailList.stream().filter(m->m.getApplyId().equals(insuranceApply.getId())).collect(Collectors.toList()); |
| | | List<ApplyDetail> applyDetails = applyDetailList.stream() |
| | | .filter(m->Constants.equalsInteger(m.getApplyId(),(insuranceApply.getId()))).collect(Collectors.toList()); |
| | | //更新投保申请单 |
| | | insuranceApplyJoinMapper.update(null,new UpdateWrapper<InsuranceApply>().lambda() |
| | | .set(InsuranceApply::getUnionApplyTbdStatus,Constants.THREE) |
| | | .set(InsuranceApply::getStatus,Constants.InsuranceApplyStatus.WTB_DONE.getKey()) |
| | | .set(InsuranceApply::getFee,price.multiply(new BigDecimal(applyDetails.size())).multiply(new BigDecimal(maxDays))) |
| | | .set(InsuranceApply::getCurrentFee,currentFee.multiply(new BigDecimal(applyDetails.size()))) |
| | |
| | | .set(InsuranceApply::getEndTime,unionApplyBXDDTO.getEndTime()) |
| | | .set(InsuranceApply::getEditDate,new Date()) |
| | | .set(InsuranceApply::getEditor,user.getId()) |
| | | .set(InsuranceApply::getCode,unionApplyBXDDTO.getCode()) |
| | | .eq(InsuranceApply::getId,insuranceApply.getId())); |
| | | //更新投保单明细金额 |
| | | applyDetailJoinMapper.update(null,new UpdateWrapper<ApplyDetail>().lambda() |
| | |
| | | |
| | | unionApplyMapper.update(null,new UpdateWrapper<UnionApply>() |
| | | .lambda() |
| | | .set(UnionApply::getStatus,Constants.UnionApplyStatus.FINISH) |
| | | .set(UnionApply::getStatus,Constants.UnionApplyStatus.FINISH.getKey()) |
| | | .set(UnionApply::getEditDate,new Date()) |
| | | .set(UnionApply::getEditor,user.getId()) |
| | | .set(UnionApply::getStartTime,unionApplyBXDDTO.getStartTime()) |
| | | .set(UnionApply::getEndTime,unionApplyBXDDTO.getEndTime()) |
| | | .set(UnionApply::getCode,unionApplyBXDDTO.getCode()) |
| | | .set(UnionApply::getFee,sumFee) |
| | | .set(UnionApply::getCurrentFee,sumCurrFee) |
| | | .eq(UnionApply::getId,unionApply.getId()) |