From 87c95dc479163bd1ff33d959b46c60454c496558 Mon Sep 17 00:00:00 2001 From: mx <1289317512@qq.com> Date: Tue, 19 Nov 2024 14:40:08 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BA=BA=E5=91=98=E6=88=90=E4=BA=A4=E7=BB=9F?= =?UTF-8?q?=E8=AE=A1=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../business/service/impl/HomeServiceImpl.java | 13 +++++++++---- .../mapper/business/PsContractInfoMapper.xml | 1 + 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/pusong-modules/pusong-business/src/main/java/com/pusong/business/service/impl/HomeServiceImpl.java b/pusong-modules/pusong-business/src/main/java/com/pusong/business/service/impl/HomeServiceImpl.java index 693bec5..2a9184a 100644 --- a/pusong-modules/pusong-business/src/main/java/com/pusong/business/service/impl/HomeServiceImpl.java +++ b/pusong-modules/pusong-business/src/main/java/com/pusong/business/service/impl/HomeServiceImpl.java @@ -528,6 +528,7 @@ public class HomeServiceImpl implements HomeService { //记录合同编码,防止重复 Map repeatContractCode = new HashMap<>(); Set< String> repeatContractCodeBusiness = new HashSet<>(); + Set payIdSet = new HashSet<>(); for (UserContractAmountInfo obj : list) { Long userId = obj.getUserId(); UserAmountInfoVo vo = resMap.get(userId); @@ -542,11 +543,15 @@ public class HomeServiceImpl implements HomeService { if(obj.getContractCode() != null && obj.getContractCode().length() > 0){ vo.addContractNum(); } - if (obj.getPayedMoney() != null){ - vo.addPayedSumAmount(obj.getPayedMoney()); + if (!payIdSet.contains(obj.getPayId())){ + if (obj.getPayedMoney() != null){ + vo.addPayedSumAmount(obj.getPayedMoney()); + } + payIdSet.add(obj.getPayId()); } - if(repeatContractCode.get(obj.getContractCode())==null){ + + if(repeatContractCode.get(obj.getContractCode()) == null){ repeatContractCode.put(obj.getContractCode(), obj.getContractCode()); if (obj.getContractAmount() != null) { vo.addSumAmount(obj.getContractAmount()); @@ -599,7 +604,7 @@ public class HomeServiceImpl implements HomeService { for (UserAmountInfoVo v : listData) { if(!v.getSumAmount().equals(BigDecimal.ZERO)) { v.setAmountPer(v.getSumAmount().multiply(new BigDecimal("100.0")).divide(sumAmount, 2, RoundingMode.HALF_UP).toPlainString() + "%"); - }else { + } else { v.setAmountPer("0.00%"); } } diff --git a/pusong-modules/pusong-business/src/main/resources/mapper/business/PsContractInfoMapper.xml b/pusong-modules/pusong-business/src/main/resources/mapper/business/PsContractInfoMapper.xml index d9fe379..01447a9 100644 --- a/pusong-modules/pusong-business/src/main/resources/mapper/business/PsContractInfoMapper.xml +++ b/pusong-modules/pusong-business/src/main/resources/mapper/business/PsContractInfoMapper.xml @@ -129,6 +129,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" u.nick_name as nickName, info.contract_code as contractCode, info.contract_amount as contractAmount, + pay.id as payId, pay.money as payedMoney, bus.id as busId, bus.business_type as businessType,