fix: 分期管理功能优化显示明细数据。

This commit is contained in:
tianyongbao
2026-02-12 19:32:06 +08:00
parent 0f6f8e645b
commit 25f2378a17

View File

@@ -1,5 +1,6 @@
package com.intc.invest.service.impl;
import com.alibaba.fastjson2.JSON;
import com.intc.common.core.utils.DateUtils;
import com.intc.common.core.utils.StringUtils;
import com.intc.common.security.utils.DictUtils;
@@ -1146,7 +1147,7 @@ public class StatisticAnalysisImpl implements IStatisticAnalysisService {
for (String staticsTime :staticsTimeList
) {
String details="";
List<Map<String, Object>> detailItems = new ArrayList<>();
double actualCreditBillDay=0;
for (InstallmentHistoryDetailVo vo:detailList
) {
@@ -1154,13 +1155,23 @@ public class StatisticAnalysisImpl implements IStatisticAnalysisService {
if(staticsTime.equals(dayString)){
actualCreditBillDay+=vo.getCurrentAmount();
details+=vo.getBankCardLendName()+""+dateFormat.format(vo.getRepaymentDate())+"应还款总额"+vo.getCurrentAmount()+",其中本金"+vo.getPrincipal()+",利息"+vo.getInterest()+"<br/>";
// 创建明细项
Map<String, Object> detailItem = new HashMap<>();
detailItem.put("id", vo.getId());
detailItem.put("bankCardLendName", vo.getBankCardLendName());
detailItem.put("repaymentDate", dateFormat.format(vo.getRepaymentDate()));
detailItem.put("currentAmount", vo.getCurrentAmount());
detailItem.put("principal", vo.getPrincipal());
detailItem.put("interest", vo.getInterest());
detailItems.add(detailItem);
}
}
InstallmentHistoryDetailVo analysisVo=new InstallmentHistoryDetailVo();
analysisVo.setCurrentAmount(actualCreditBillDay);
analysisVo.setRemark(staticsTime);
analysisVo.setBankCardLendName(details);
// 将明细列表转为JSON字符串存储
analysisVo.setBankCardLendName(JSON.toJSONString(detailItems));
installmentHistoryDetailList.add(analysisVo);
}
@@ -1234,7 +1245,16 @@ public class StatisticAnalysisImpl implements IStatisticAnalysisService {
Map<String, Object> datamap = new HashMap<>();
datamap.put("time", vo.getRemark());
datamap.put("value", decimalFormat.format(vo.getCurrentAmount()));
datamap.put("detail", vo.getBankCardLendName());
// 解析明细JSON字符串
if (StringUtils.isNotEmpty(vo.getBankCardLendName())) {
try {
Object detailListObj = JSON.parse(vo.getBankCardLendName());
datamap.put("detailList", detailListObj);
} catch (Exception e) {
// 如果解析失败,保持原来的字符串格式
datamap.put("detail", vo.getBankCardLendName());
}
}
tableHistoryDetailList.add(datamap);
}
Collections.reverse(installmentHistoryDetailList);