From fbee521ff4fbe4690c215abf5adaefa95755c39b 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, 4 Nov 2026 11:02:36 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E6=94=B6=E6=AC=BE=E7=BB=93=E7=AE=97?= =?UTF-8?q?=E5=8D=95=E5=88=97=E8=A1=A8=E4=B8=8D=E8=81=9A=E5=90=88=E5=B7=B2?= =?UTF-8?q?=E6=8C=87=E5=AE=9A=E5=BA=94=E4=BB=98=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/FormalSettlementServiceImpl.java | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 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 6dec9268..60b6a2ad 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 @@ -231,20 +231,24 @@ public class FormalSettlementServiceImpl extends BaseServiceImpl rows) { - if (Func.isEmpty(rows)) { + // 已指定应付仅付款结算单(先票后款 A302-6)有,收款结算单不参与聚合,避免无意义查询与字段下发 + List payableRows = rows.stream() + .filter(row -> "payable".equals(row.getSettlementType())) + .toList(); + if (Func.isEmpty(payableRows)) { return; } List relations = invoiceReceiptSettlementMapper.selectList( Wrappers.lambdaQuery() .in(InvoiceReceiptSettlement::getFormalSettlementId, - rows.stream().map(FormalSettlementVO::getId).filter(Objects::nonNull).toList())); + payableRows.stream().map(FormalSettlementVO::getId).filter(Objects::nonNull).toList())); if (relations.isEmpty()) { return; } @@ -263,7 +267,7 @@ public class FormalSettlementServiceImpl extends BaseServiceImpl new ArrayList<>()) .add(receipt); } - for (FormalSettlementVO vo : rows) { + for (FormalSettlementVO vo : payableRows) { List claimed = receiptsBySettlement.get(vo.getId()); if (Func.isEmpty(claimed)) { continue;