fix: A303-1 开票申请推送放开来源单据字段
This commit is contained in:
+11
-11
@@ -580,9 +580,9 @@ public class InvoiceApplicationServiceImpl extends BaseServiceImpl<InvoiceApplic
|
||||
+ "]财务应收单未在金蝶生成,请先在正式付款单页面同步金蝶");
|
||||
}
|
||||
}
|
||||
// 上游来源单据号(awrp_src_con_no):首张关联结算单的金蝶应收单单据编号(金蝶确认传单据编号口径),
|
||||
// 以 A302-4 查询结果为准(存量本地单号缺失也能取到),多张结算单取第一张
|
||||
String firstArBillNo = existArNos.get(arSrcCodes.get(0));
|
||||
// 上游来源单据号(awrp_src_con_no):首张关联结算单的金蝶应收单防重键 awrp_src_code
|
||||
// (联调确认金蝶源单校验按防重键匹配,传单据编号会报「源单编号不存在」),多张结算单取第一张
|
||||
String firstArSrcCode = arSrcCodes.get(0);
|
||||
// 加载发票张次与商品行:每张发票张次对应一张金蝶开票申请单(按张次拆分开票)
|
||||
List<InvoiceApplicationSheet> sheets = sheetMapper.selectList(Wrappers.<InvoiceApplicationSheet>lambdaQuery()
|
||||
.eq(InvoiceApplicationSheet::getInvoiceApplicationId, id).orderByAsc(InvoiceApplicationSheet::getSheetNo));
|
||||
@@ -680,7 +680,7 @@ public class InvoiceApplicationServiceImpl extends BaseServiceImpl<InvoiceApplic
|
||||
+ "]无商品行,无法组装分录");
|
||||
}
|
||||
BfiInvoiceApplySaveDTO param = this.buildInvoiceApplyParam(entity, sheetBillNo, seller, salerAddr, salerBank,
|
||||
dept, customer, firstArBillNo, money(sheet.getInvoiceAmount()), items);
|
||||
dept, customer, firstArSrcCode, money(sheet.getInvoiceAmount()), items);
|
||||
log.info("金蝶开票申请推送:开票申请[{}]发票张[{}],billno=[{}],价税合计=[{}],分录{}条",
|
||||
entity.getApplicationNo(), sheet.getSheetNo(), sheetBillNo, sheet.getInvoiceAmount(), items.size());
|
||||
BfiBillSaveResultVO saveResult = bfiService.saveInvoiceApply(param);
|
||||
@@ -729,11 +729,11 @@ public class InvoiceApplicationServiceImpl extends BaseServiceImpl<InvoiceApplic
|
||||
* 组装 A303-1 单张开票申请单入参(字段映射见设计文档 6.3/6.4),
|
||||
* 购销方等主表公共字段随开票申请取数,价税合计与单据体分录取本张发票
|
||||
*
|
||||
* @param firstArBillNo 上游来源单据号:首张关联结算单的金蝶应收单单据编号(多张结算单取第一张)
|
||||
* @param firstArSrcCode 上游来源单据号:首张关联结算单的金蝶应收单防重键 awrp_src_code(多张结算单取第一张)
|
||||
*/
|
||||
private BfiInvoiceApplySaveDTO buildInvoiceApplyParam(InvoiceApplication entity, String billNo,
|
||||
CustomerArchive seller, String salerAddr, String salerBank, Dept dept, CustomerArchive customer,
|
||||
String firstArBillNo, BigDecimal sheetAmount, List<BfiInvoiceApplySaveEntryDTO> items) {
|
||||
String firstArSrcCode, BigDecimal sheetAmount, List<BfiInvoiceApplySaveEntryDTO> items) {
|
||||
BfiInvoiceApplySaveDTO param = new BfiInvoiceApplySaveDTO();
|
||||
// ==================== 以下为【必填】字段(BfiInvoiceApplySaveDTO 标注),非必填字段先注释保留 ====================
|
||||
// 【必填】组织.编码:申请部门 deptId → 金蝶组织编码
|
||||
@@ -780,8 +780,8 @@ public class InvoiceApplicationServiceImpl extends BaseServiceImpl<InvoiceApplic
|
||||
param.setTotalamount(sheetAmount);
|
||||
// 是否含税:金蝶要求统一按不含税口径送(联调反馈),固定 0 不含税
|
||||
param.setHsbz("0");
|
||||
// 特殊票种:金蝶要求映射(联调反馈)——本张发票商品行全部为货物运输(运费/货物运输)送 E04,其余(其他、非货物运输的运输类等)送 00 非特殊票种
|
||||
param.setSpecialtype(this.specialTypeOf(items));
|
||||
// todo 特殊票种:金蝶要求映射(联调反馈)——本张发票商品行全部为货物运输(运费/货物运输)送 E04,其余(其他、非货物运输的运输类等)送 00 非特殊票种
|
||||
// param.setSpecialtype(this.specialTypeOf(items));
|
||||
// 【必填】客户.编码:受票方客商档案客商编码
|
||||
param.setCustomnameidNumber(customer.getCustomerCode());
|
||||
// 【必填】项目.项目编码(联调期临时传金蝶测试档案值 999)
|
||||
@@ -794,9 +794,9 @@ public class InvoiceApplicationServiceImpl extends BaseServiceImpl<InvoiceApplic
|
||||
// 数据来源:固定 3
|
||||
// param.setBillsource("3");
|
||||
// 来源单据:ar_finarbill 财务应收单(金蝶联调确认开票申请须挂上游应收单)
|
||||
param.setAwrpSrcBt(KingdeeBfiConstant.BFI_AR_BILL_SRC_BT);
|
||||
// 上游单据号:首张关联结算单的金蝶应收单单据编号(金蝶确认传单据编号口径,A302-4 预检已确认存在)
|
||||
param.setAwrpSrcConNo(firstArBillNo);
|
||||
// param.setAwrpSrcBt(KingdeeBfiConstant.BFI_AR_BILL_SRC_BT);
|
||||
// 上游单据号:首张关联结算单的金蝶应收单防重键 awrp_src_code(联调确认金蝶按防重键匹配源单,A302-4 预检已确认存在)
|
||||
// param.setAwrpSrcConNo(firstArSrcCode);
|
||||
// 数据来源系统
|
||||
param.setSystemsource(bfiProperties.getSrcSys());
|
||||
|
||||
|
||||
+2
-2
@@ -4,7 +4,7 @@
|
||||
> 对接系统:金蝶云·星瀚(业财融合 BFI,经 iPaaS 网关)
|
||||
> 覆盖接口:A302-2 财务应收单保存、A302-4 财务应收单查询、A303-1 开票申请单新增、A303-4 开票申请单查询、A303-5 开票申请发票查询
|
||||
> 关联文档:`2026-09-20-应收结算与开票申请同步金蝶设计.md`(设计口径与遗留清单)、`2026-09-20-应付单与付款申请同步金蝶全链路业务流程(A102-2保存-A102-4查询-A103-1下推-A103-2回写).md`(应付侧对称链路)
|
||||
> 最后更新:2026-10-01(A303-1 上游来源单据放开传值:awrp_src_bt=ar_finarbill + awrp_src_con_no=首张结算单金蝶应收单编号;2026-09-21 按当前代码梳理,销方名称/销方税号/税收分类编码随单据取数)
|
||||
> 最后更新:2026-10-08(联调纠偏:A303-1 awrp_src_con_no 改传首张结算单金蝶应收单防重键 awrp_src_code,传单据编号会报「源单编号不存在」;2026-10-01 上游来源单据放开传值 awrp_src_bt=ar_finarbill;2026-09-21 按当前代码梳理,销方名称/销方税号/税收分类编码随单据取数)
|
||||
|
||||
---
|
||||
|
||||
@@ -156,7 +156,7 @@ kingdeeSyncStatus:unsynced ──A302-2成功──> synced(终态)
|
||||
| customnameid_number | 客户.编码 | 是 | 受票方客商档案客商编码(未维护报错) | 客商档案「客商编号」 |
|
||||
| awrp_project_number | 项目.项目编码 | 是 | 联调期 999 | — |
|
||||
| billsource | 数据来源 | 是 | 固定 3 | 无 |
|
||||
| awrp_src_bt / awrp_src_con_no | 上游来源单据/单号 | 是 | ar_finarbill / 首张关联结算单的金蝶应收单**单据编号**(金蝶联调确认传单据编号,取 A302-4 预检查询结果为准,多张取第一张) | 环节一回写的「金蝶单据编号」 |
|
||||
| awrp_src_bt / awrp_src_con_no | 上游来源单据/单号 | 是 | ar_finarbill / 首张关联结算单的金蝶应收单**防重键 awrp_src_code**(联调确认金蝶按防重键匹配源单,2026-10-08 纠偏:传单据编号报「源单编号不存在」;多张取第一张) | `结算单号_结算明细单据号拼接`(与 A302-2 防重键同源) |
|
||||
| systemsource | 系统来源 | 否 | thirdParty.bfi.srcSys(默认 WLTMS) | 无(后端配置) |
|
||||
|
||||
分录(sim_original_bill_item,逐「开票内容」商品行一条,按发票张次+张内行号平铺):取数口径即商品行落库值,**不回查开票项目主数据、不按开票明细→费用行展开分摊**(实现见 `InvoiceApplicationServiceImpl.resolveInvoiceApplyEntries`,仅查张次与商品行两张表):
|
||||
|
||||
Reference in New Issue
Block a user