From 25f2378a17967e4661d4560dff6494a7868a134b Mon Sep 17 00:00:00 2001 From: tianyongbao Date: Thu, 12 Feb 2026 19:32:06 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=88=86=E6=9C=9F=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E5=8A=9F=E8=83=BD=E4=BC=98=E5=8C=96=E6=98=BE=E7=A4=BA=E6=98=8E?= =?UTF-8?q?=E7=BB=86=E6=95=B0=E6=8D=AE=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/StatisticAnalysisImpl.java | 28 ++++++++++++++++--- 1 file changed, 24 insertions(+), 4 deletions(-) diff --git a/intc-modules/intc-invest/src/main/java/com/intc/invest/service/impl/StatisticAnalysisImpl.java b/intc-modules/intc-invest/src/main/java/com/intc/invest/service/impl/StatisticAnalysisImpl.java index 12b5fd0..c08d005 100644 --- a/intc-modules/intc-invest/src/main/java/com/intc/invest/service/impl/StatisticAnalysisImpl.java +++ b/intc-modules/intc-invest/src/main/java/com/intc/invest/service/impl/StatisticAnalysisImpl.java @@ -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> 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()+";
"; + + // 创建明细项 + Map 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 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);