|
@@ -107,6 +107,9 @@ public class RepalBillServiceImpl extends ServiceImpl<RepalBillMapper, RepalBill
|
|
|
@Autowired
|
|
|
private RepalDynamicService repalDynamicService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private RepalVipService repalVipService;
|
|
|
+
|
|
|
|
|
|
@Override
|
|
|
public RepalBillInfoVO getRepalBillPage(GetRepalBillPageDTO dto) {
|
|
@@ -608,4 +611,72 @@ public class RepalBillServiceImpl extends ServiceImpl<RepalBillMapper, RepalBill
|
|
|
}
|
|
|
return voPage;
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public RepalManageBillDetailVO querManageBillDetail(Long repalBillId) {
|
|
|
+ //不校验权限,默认看到列表的时候已经通过
|
|
|
+ RepalBill repalBill = this.getById(repalBillId);
|
|
|
+ RepalManageBillDetailVO vo = new RepalManageBillDetailVO();
|
|
|
+ BeanUtils.copyProperties(repalBill, vo);
|
|
|
+
|
|
|
+ vo.setRepalBillId(repalBill.getId());
|
|
|
+ RepalCustomer repalCustomer = repalCustomerService.getById(repalBill.getCustomerId());
|
|
|
+ vo.setCompanyId(repalCustomer.getCompanyId());
|
|
|
+ vo.setCustProperty(repalCustomer.getCustProperty());
|
|
|
+ List<String> nameList = repalResponsiblePersonService.getResponsiblePersonName(vo.getRepalBillId());
|
|
|
+ vo.setResponsiblePersonName(nameList);
|
|
|
+ vo.setTotalMoneyStr(repalBill.getTotalMoney().stripTrailingZeros().toPlainString());
|
|
|
+ vo.setReceiptStr(repalBill.getReceipt().stripTrailingZeros().toPlainString());
|
|
|
+ vo.setReceivableStr(repalBill.getReceivable().stripTrailingZeros().toPlainString());
|
|
|
+ vo.setOverdueDay(Math.abs(LocalDate.now().toEpochDay()-repalBill.getEndDate().toEpochDay()));
|
|
|
+ // 评分趋势
|
|
|
+ vo.setDiagnosisScoreTrend(DiagnosisUtil.getDiagnosisScoreTrend(repalBill.getPreDiagnosisScore(), repalBill.getDiagnosisScore(), repalBill.getPreDiagnosisGrade(), repalBill.getDiagnosisGrade()));
|
|
|
+ if (Objects.nonNull(repalBill.getDiagnosisScore())) {
|
|
|
+ vo.setDiagnosisGradeDesc(DiagnosisUtil.getGradeConclusion(repalBill.getDiagnosisScore()));
|
|
|
+ vo.setDiagnosisScore(repalBill.getDiagnosisScore().stripTrailingZeros().toPlainString());
|
|
|
+ }
|
|
|
+
|
|
|
+ // companyId
|
|
|
+ if (StrUtil.isNotBlank(vo.getCompanyId())) {
|
|
|
+ // 财产数量
|
|
|
+ ApiDataResult<List<FinanceDynamicNumVO>> financeResult = dataMiddlewareService.getFinanceDynamicNumV8List(new GetFinanceDynamicNumDTO().setCompanyIdList(Collections.singletonList(vo.getCompanyId())));
|
|
|
+ if (Objects.nonNull(financeResult) && CollUtil.isNotEmpty(financeResult.getData())) {
|
|
|
+ vo.setAssetsNum(financeResult.getData().get(0).getFinanceDynamicNum());
|
|
|
+ }
|
|
|
+ // 风险数量
|
|
|
+ ApiDataResult<List<CompanyRiskNumVO>> riskResult = dataMiddlewareService.getCompanyRiskNumList(new GetCompanyRiskNumDTO(Collections.singletonList(vo.getCompanyId())));
|
|
|
+ if (Objects.nonNull(riskResult) && CollUtil.isNotEmpty(riskResult.getData())) {
|
|
|
+ vo.setRiskNum(riskResult.getData().get(0).getRiskNum());
|
|
|
+ }
|
|
|
+ // 失信限高标签
|
|
|
+ ApiDataResult<List<CreditPunishmentLabelListVO>> labelResult = dataMiddlewareService.getCreditPunishmentLabelList(new GetCreditPunishmentLabelDTO(Collections.singletonList(vo.getCompanyId())));
|
|
|
+ if (Objects.nonNull(labelResult) && CollUtil.isNotEmpty(labelResult.getData())) {
|
|
|
+ vo.setLabelList(labelResult.getData().get(0).getLabelList());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //查询套餐剩余qingk
|
|
|
+ RepalVip repalVip = repalVipService.getOne(Wrappers.lambdaQuery(RepalVip.class).eq(RepalVip::getRepalGroupId,repalCustomer.getRepalGroupId()),false);
|
|
|
+ RepalVipVO repalVipVO = new RepalVipVO();
|
|
|
+ if(ObjectUtil.isNotNull(repalVip)){
|
|
|
+ BeanUtils.copyProperties(repalVip,repalVipVO);
|
|
|
+ }
|
|
|
+ vo.setRepalVip(repalVipVO);
|
|
|
+ //查询催款动态列表
|
|
|
+ List<RepalDynamic> dynamics = repalDynamicService.list(Wrappers.lambdaQuery(RepalDynamic.class).eq(RepalDynamic::getRepalBillId,repalBillId).orderByDesc(RepalDynamic::getId));
|
|
|
+ if(CollUtil.isNotEmpty(dynamics)){
|
|
|
+ List<RepalDynamicVO> repalDynamicVOs = new ArrayList<>(dynamics.size());
|
|
|
+ vo.setRepalDynamics(repalDynamicVOs);
|
|
|
+ Map<Long,RepalGroupMember> memberMap = repalGroupMemberService.list(Wrappers.lambdaQuery(RepalGroupMember.class).in(RepalGroupMember::getUserId,dynamics.stream().map(RepalDynamic::getMemberId).distinct().collect(Collectors.toList()))).stream().collect(Collectors.toMap(RepalGroupMember::getUserId,Function.identity()));
|
|
|
+ for(RepalDynamic dynamic:dynamics){
|
|
|
+ RepalDynamicVO repalDynamicVO = new RepalDynamicVO();
|
|
|
+ repalDynamicVOs.add(repalDynamicVO);
|
|
|
+ BeanUtils.copyProperties(dynamic,repalDynamicVO);
|
|
|
+ if(memberMap.containsKey(dynamic.getMemberId())){
|
|
|
+ RepalGroupMember repalGroupMember = memberMap.get(dynamic.getMemberId());
|
|
|
+ repalDynamicVO.setMemberUserName(repalGroupMember.getMemberUserName());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return vo;
|
|
|
+ }
|
|
|
}
|