From a61509cc42fa73e70ca87e6b3ba109e61e0c965b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E6=B3=89=E4=BD=B3?= <1107186916@qq.com> Date: Wed, 21 Oct 2026 14:42:40 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E5=A4=9A=E7=BB=93?= =?UTF-8?q?=E7=AE=97=E5=8D=95=E5=90=88=E5=B9=B6=E4=BB=98=E6=AC=BE=E8=AF=A6?= =?UTF-8?q?=E6=83=85=E6=98=BE=E7=A4=BA=E6=95=B4=E5=8D=95=E9=87=91=E9=A2=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/FormalSettlementServiceImpl.java | 21 ++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/blade-service/blade-transport/src/main/java/org/springblade/transport/service/impl/FormalSettlementServiceImpl.java b/blade-service/blade-transport/src/main/java/org/springblade/transport/service/impl/FormalSettlementServiceImpl.java index 345a6a03..69ce83c7 100644 --- a/blade-service/blade-transport/src/main/java/org/springblade/transport/service/impl/FormalSettlementServiceImpl.java +++ b/blade-service/blade-transport/src/main/java/org/springblade/transport/service/impl/FormalSettlementServiceImpl.java @@ -85,6 +85,7 @@ import org.springblade.transport.pojo.entity.SettlementAdjustment; import org.springblade.transport.pojo.entity.SettlementProjectAdvanceWriteOff; import org.springblade.transport.pojo.entity.Waybill; import org.springblade.transport.pojo.vo.FormalSettlementVO; +import org.springblade.transport.pojo.vo.PaymentApplicationVO; import org.springblade.transport.pojo.vo.PreSettlementVO; import org.springblade.transport.pojo.vo.SettlementAdvancePaymentVO; import org.springblade.transport.pojo.vo.SettlementAdjustmentVO; @@ -327,13 +328,14 @@ public class FormalSettlementServiceImpl extends BaseServiceImpl relationApplicationIds = paymentApplicationSettlementMapper.selectList( + Map relationByApplicationId = paymentApplicationSettlementMapper.selectList( Wrappers.lambdaQuery() - .select(PaymentApplicationSettlement::getPaymentApplicationId) .eq(PaymentApplicationSettlement::getFormalSettlementId, id) .eq(PaymentApplicationSettlement::getIsDeleted, 0)).stream() - .map(PaymentApplicationSettlement::getPaymentApplicationId).filter(Objects::nonNull) - .collect(Collectors.toSet()); + .filter(relation -> relation.getPaymentApplicationId() != null) + .collect(Collectors.toMap(PaymentApplicationSettlement::getPaymentApplicationId, relation -> relation, + (first, second) -> first)); + Set relationApplicationIds = relationByApplicationId.keySet(); LambdaQueryWrapper paymentApplicationQuery = Wrappers.lambdaQuery(); paymentApplicationQuery.and(query -> { query.eq(PaymentApplication::getSettlementId, id); @@ -345,7 +347,16 @@ public class FormalSettlementServiceImpl extends BaseServiceImpl PaymentApplicationWrapper.build().entityVO(item)).toList()); + .map(item -> { + PaymentApplicationVO application = PaymentApplicationWrapper.build().entityVO(item); + // 多结算单合并付款时,付款申请金额为整单合计;详情按当前结算单关联行展示分摊金额 + PaymentApplicationSettlement relation = relationByApplicationId.get(item.getId()); + if (relation != null) { + application.setAppliedAmount(money(relation.getAppliedAmount())); + application.setPaidAmount(money(relation.getPaidAmount())); + } + return application; + }).toList()); vo.setAdjustments(settlementAdjustmentMapper.selectList(Wrappers.lambdaQuery() .eq(SettlementAdjustment::getFormalSettlementId, id) .orderByDesc(SettlementAdjustment::getCreateTime)).stream()