feat: 正式结算与收票登记适配金蝶推送新分录口径(结算单维度传参、汇率/汇率日期)

This commit is contained in:
刘泉佳
2026-09-24 19:42:36 +08:00
parent e923e07947
commit e4095c6e60
2 changed files with 5 additions and 6 deletions
@@ -497,19 +497,18 @@ public class FormalSettlementServiceImpl extends BaseServiceImpl<FormalSettlemen
if ("receivable".equals(settlement.getSettlementType())) { if ("receivable".equals(settlement.getSettlementType())) {
// 应收结算:财务应收单防重键(awrp_src_code):正式结算单号_结算明细单据号下划线拼接 // 应收结算:财务应收单防重键(awrp_src_code):正式结算单号_结算明细单据号下划线拼接
String arBillSrcCode = kingdeeArBillSyncSupport.arBillSrcCode(settlement, details); String arBillSrcCode = kingdeeArBillSyncSupport.arBillSrcCode(settlement, details);
List<KingdeeApBillSyncSupport.BfiEntryGroup> entryGroups = kingdeeArBillSyncSupport.resolveArEntryGroups(details, context); List<KingdeeApBillSyncSupport.BfiEntryGroup> entryGroups = kingdeeArBillSyncSupport.resolveArEntryGroups(settlement, details, context);
KingdeeApBillSyncSupport.BfiApBillPushOutcome outcome = kingdeeArBillSyncSupport.pushArBill( KingdeeApBillSyncSupport.BfiApBillPushOutcome outcome = kingdeeArBillSyncSupport.pushArBill(
arBillSrcCode, settlement.getContractId(), settlement.getPayerName(), entryGroups, arBillSrcCode, settlement, entryGroups, settlement.getFormalSettlementNo(), context);
settlement.getFormalSettlementNo(), context);
billNo = outcome.billNo(); billNo = outcome.billNo();
changeDesc = "同步金蝶财务应收单" + billNo; changeDesc = "同步金蝶财务应收单" + billNo;
} else { } else {
// 应付结算:财务应付单防重键,付款申请「同步金蝶」(A103-1 应付下推)推送前按该键经 A102-4 预检本单应付单已生成 // 应付结算:财务应付单防重键,付款申请「同步金蝶」(A103-1 应付下推)推送前按该键经 A102-4 预检本单应付单已生成
// 付款申请 A103-1 下推前的前置 // 付款申请 A103-1 下推前的前置
String apBillSrcCode = kingdeeApBillSyncSupport.apBillSrcCode(settlement, details); String apBillSrcCode = kingdeeApBillSyncSupport.apBillSrcCode(settlement, details);
List<KingdeeApBillSyncSupport.BfiEntryGroup> entryGroups = kingdeeApBillSyncSupport.resolveEntryGroups(details, context); List<KingdeeApBillSyncSupport.BfiEntryGroup> entryGroups = kingdeeApBillSyncSupport.resolveEntryGroups(settlement, details, context);
KingdeeApBillSyncSupport.BfiApBillPushOutcome outcome = kingdeeApBillSyncSupport.pushApBill( KingdeeApBillSyncSupport.BfiApBillPushOutcome outcome = kingdeeApBillSyncSupport.pushApBill(
apBillSrcCode, settlement.getContractId(), entryGroups, settlement.getFormalSettlementNo(), context); apBillSrcCode, settlement, entryGroups, settlement.getFormalSettlementNo(), context);
billNo = outcome.billNo(); billNo = outcome.billNo();
changeDesc = "同步金蝶财务应付单" + billNo; changeDesc = "同步金蝶财务应付单" + billNo;
} }
@@ -719,7 +719,7 @@ public class InvoiceReceiptServiceImpl extends BaseServiceImpl<InvoiceReceiptMap
} }
log.info("收票登记[{}]开始 A303-2 推送金蝶收票单", receipt.getInvoiceNo()); log.info("收票登记[{}]开始 A303-2 推送金蝶收票单", receipt.getInvoiceNo());
ContractManage contract = kingdeeApBillSyncSupport.requireContract(plan.settlement().getContractId(), context); ContractManage contract = kingdeeApBillSyncSupport.requireContract(plan.settlement().getContractId(), context);
// 明细分录与应付单 A102-2 同源同口径:复用同一结算明细解析结果,逐结算货物费用行一条 // 明细分录与应付单 A102-2 同源同口径:复用同一结算明细解析结果,结算明细行+结算合计费用项各一条
List<KingdeeApBillSyncSupport.BfiEntryGroup> entryGroups = List<KingdeeApBillSyncSupport.BfiEntryGroup> entryGroups =
kingdeeApBillSyncSupport.resolveEntryGroups(plan.details(), context); kingdeeApBillSyncSupport.resolveEntryGroups(plan.details(), context);
billNo = kingdeeReceivedInvoiceSyncSupport.pushReceivedInvoice(receipt, plan.mirror(), contract, entryGroups, context); billNo = kingdeeReceivedInvoiceSyncSupport.pushReceivedInvoice(receipt, plan.mirror(), contract, entryGroups, context);