From 243d5be580203465974961b20abd00d32dcd1bea 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, 23 Sep 2026 19:00:02 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E6=94=B6=E7=A5=A8?= =?UTF-8?q?=E5=8D=95=E6=8E=A8=E9=80=81=E9=87=91=E8=9D=B6=E9=98=B2=E9=87=8D?= =?UTF-8?q?=E9=94=AE=E4=B8=8D=E5=8C=B9=E9=85=8D=E5=AF=BC=E8=87=B4=E6=8C=87?= =?UTF-8?q?=E5=AE=9A=E5=BA=94=E4=BB=98=E5=92=8C=E5=B9=82=E7=AD=89=E9=A2=84?= =?UTF-8?q?=E6=A3=80=E5=A4=B1=E8=B4=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit A303-2保存收票单时awrp_src_code使用receipt.getId(),但A302-6指定应付 和A801-3幂等预检误用receipt.getInvoiceNo(),导致: 1. A302-6指定应付传入发票号而非收票登记ID,金蝶报收票单不存在 2. A801-3预检用发票号匹配金蝶awrp_src_code(收票登记ID),永远匹配不到 已存在的收票单,重推时重复调A303-2被金蝶拒绝(已审核不允许修改) 修复:统一使用receipt.getId()作为收票单防重键 - assignApBill入参改为receipt.getId()(含补偿方法) - queryKingdeeReceivedInvoiceRows传入receipt.getId() - kingdeeRows.get()的key改为receipt.getId() - 更正assignApBill方法注释 --- .../service/impl/InvoiceReceiptServiceImpl.java | 12 ++++++------ .../support/KingdeeReceivedInvoiceSyncSupport.java | 6 +++--- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/blade-service/blade-transport/src/main/java/org/springblade/transport/service/impl/InvoiceReceiptServiceImpl.java b/blade-service/blade-transport/src/main/java/org/springblade/transport/service/impl/InvoiceReceiptServiceImpl.java index 13bcd4b3..1476a9f6 100644 --- a/blade-service/blade-transport/src/main/java/org/springblade/transport/service/impl/InvoiceReceiptServiceImpl.java +++ b/blade-service/blade-transport/src/main/java/org/springblade/transport/service/impl/InvoiceReceiptServiceImpl.java @@ -664,7 +664,7 @@ public class InvoiceReceiptServiceImpl extends BaseServiceImpl new LinkedHashSet<>()).add(plan.receipt().getInvoiceNo()); + invoiceNosByBuyer.computeIfAbsent(Func.toStrWithEmpty(plan.mirror().getReceiverName(), ""), + key -> new LinkedHashSet<>()).add(String.valueOf(plan.receipt().getId())); } Map rows = new LinkedHashMap<>(); LocalDateTime windowEnd = LocalDateTime.now(); @@ -956,7 +956,7 @@ public class InvoiceReceiptServiceImpl extends BaseServiceImpl