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())) {
// 应收结算:财务应收单防重键(awrp_src_code):正式结算单号_结算明细单据号下划线拼接
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(
arBillSrcCode, settlement.getContractId(), settlement.getPayerName(), entryGroups,
settlement.getFormalSettlementNo(), context);
arBillSrcCode, settlement, entryGroups, settlement.getFormalSettlementNo(), context);
billNo = outcome.billNo();
changeDesc = "同步金蝶财务应收单" + billNo;
} else {
// 应付结算:财务应付单防重键,付款申请「同步金蝶」(A103-1 应付下推)推送前按该键经 A102-4 预检本单应付单已生成
// 付款申请 A103-1 下推前的前置
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(
apBillSrcCode, settlement.getContractId(), entryGroups, settlement.getFormalSettlementNo(), context);
apBillSrcCode, settlement, entryGroups, settlement.getFormalSettlementNo(), context);
billNo = outcome.billNo();
changeDesc = "同步金蝶财务应付单" + billNo;
}
@@ -719,7 +719,7 @@ public class InvoiceReceiptServiceImpl extends BaseServiceImpl<InvoiceReceiptMap
}
log.info("收票登记[{}]开始 A303-2 推送金蝶收票单", receipt.getInvoiceNo());
ContractManage contract = kingdeeApBillSyncSupport.requireContract(plan.settlement().getContractId(), context);
// 明细分录与应付单 A102-2 同源同口径:复用同一结算明细解析结果,逐结算货物费用行一条
// 明细分录与应付单 A102-2 同源同口径:复用同一结算明细解析结果,结算明细行+结算合计费用项各一条
List<KingdeeApBillSyncSupport.BfiEntryGroup> entryGroups =
kingdeeApBillSyncSupport.resolveEntryGroups(plan.details(), context);
billNo = kingdeeReceivedInvoiceSyncSupport.pushReceivedInvoice(receipt, plan.mirror(), contract, entryGroups, context);