From 4d160309999a1e08e17c10179c9b189cd23e2cd7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E6=B3=89=E4=BD=B3?= <1107186916@qq.com> Date: Thu, 29 Oct 2026 11:04:10 +0800 Subject: [PATCH] =?UTF-8?q?docs:=20=E5=90=8C=E6=AD=A5=E4=BB=98=E6=AC=BE?= =?UTF-8?q?=E7=89=B9=E6=89=B9=E9=80=9A=E8=BF=87=E5=90=8E=E4=B8=8D=E6=8E=A8?= =?UTF-8?q?=E5=B1=A5=E7=BA=A6=E6=95=B0=E6=8D=AE=E7=9A=84=E5=8F=A3=E5=BE=84?= =?UTF-8?q?=E4=B8=8E=E9=AA=8C=E8=AF=81=E6=AD=A5=E9=AA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...四场景推送改造流程梳理(收款-付款-开票-收票).md | 23 +++++++++++-------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/doc/docs/hcs合同/2026-10-28-C108履约记录四场景推送改造流程梳理(收款-付款-开票-收票).md b/doc/docs/hcs合同/2026-10-28-C108履约记录四场景推送改造流程梳理(收款-付款-开票-收票).md index d60a406c..f47d8675 100644 --- a/doc/docs/hcs合同/2026-10-28-C108履约记录四场景推送改造流程梳理(收款-付款-开票-收票).md +++ b/doc/docs/hcs合同/2026-10-28-C108履约记录四场景推送改造流程梳理(收款-付款-开票-收票).md @@ -28,7 +28,7 @@ C108-1(履约记录新建)、C108-2(履约记录更新)两个接口需 | 场景 | 改造前 | 改造后 | |------|--------|--------| | 收款 | 已实现(C108-1),履约日期=最近认领日期 | 履约日期改为交易日期;组装逻辑收敛到通用组件 | -| 付款 | 审批通过即 C108-1 新建,实际付款后 C108-2 更新 | 未实际付款不推送;首次实际付款 C108-1 新建;分期付款推进 C108-2 更新 | +| 付款 | 审批通过即 C108-1 新建,特批通过后补推履约计划与履约记录,实际付款后 C108-2 更新 | **特批通过后不推任何履约数据**;未实际付款不推送;首次实际付款 C108-1 新建;分期付款推进 C108-2 更新 | | 开票 | 无(仅 C111 开票登记) | 新增:金蝶回写发票逐张推 C108-1,发票粒度幂等+重试 | | 收票 | 无(仅 C109 收票单) | 新增:每条结算分摊行推 C108-1,分摊行粒度幂等+重试,且限 C109 已推送 | @@ -87,14 +87,16 @@ C108-1(履约记录新建)、C108-2(履约记录更新)两个接口需 ### 4.2 履约付款记录(对应付款记录,金蝶实际付款了再推) ``` -付款申请审批通过(特批通过后) - → HCS 推送链:C106-3 特批(如需)→ C103-9 履约计划重推 - → C108 履约记录环节:paidAmount 为空/0 → 跳过(提示"金蝶未实际付款,待付款后推送履约记录")★改 - 整体状态照常置 synced +付款申请审批通过 + → 如需特批:发起 C106-3 挂起,特批通过后仅联动审批恢复 + 补推金蝶 + ★改:特批通过后不推履约计划与履约记录(履约数据统一在各业务环节推送) + → 审批通过即时推送链不产生履约付款记录(paidAmount 为空/0 跳过, + 提示"金蝶未实际付款,待付款后推送履约记录",整体状态照常置 synced) 金蝶实际付款 → 定时任务 A103-2 付款结果回写(applyPayApplyResult) → paidAmount 首次 >0 或金额变化 → hcs_sync_status 置 unsynced ★改(原仅在有 fdId 时置) → HcsPushTask 付款任务下轮扫描 → pushPayment + C103-9 履约计划重推(付款审批累加金额行,exe-stage 开关门禁) 无 hcs_perf_fd_id → C108-1 新建(申请金额 + 实际金额)→ fdId 回填 hcs_perf_fd_id 有 hcs_perf_fd_id → C108-2 更新(分期付款推进实际金额) ``` @@ -219,11 +221,12 @@ HcsPushTask 开票任务(每5分钟): **场景 2|履约付款记录(金蝶实际付款了再推)** 1. 付款申请审批通过并推金蝶(`POST /payment-application/sync-kingdee`);此时**不应**产生履约付款记录——日志出现 `金蝶未实际付款,待付款后推送履约记录`,HCS 侧无记录。 -2. 在金蝶完成实际付款后,手动回写:`POST /payment-application/sync-kingdee-result`。 -3. 数据库:`SELECT paid_amount, hcs_sync_status FROM blade_payment_application WHERE id=?` → paid_amount>0 且 hcs_sync_status=unsynced。 -4. 手动扫描:`POST /hcs/sync/payment` → 日志 `HCS履约记录新建成功`(C108-1)→ 数据库 `hcs_perf_fd_id` 回填。 -5. 分期付款(金蝶再次付款)→ 再触发回写 → 金额变化置 unsynced → 再扫描 → 日志 `HCS履约记录更新成功`(C108-2);HCS 侧 fd_fact_amount 与最新 paid_amount 一致。 -6. 反向验证:`paying` 状态下连续两轮回写但金额不变 → 不置 unsynced、不重复推送。 +2. 特批场景(高风险/黑名单收款方或额度超额):提交后发起 C106-3 挂起;特批通过(回调 `paymentLegal/result` 或人工确认 `POST /hcs/spec-pay/confirm`)后,核对**无任何履约计划重推与履约记录推送动作**(仅审批恢复 + 金蝶补推),HCS 侧仍无履约付款记录。 +3. 在金蝶完成实际付款后,手动回写:`POST /payment-application/sync-kingdee-result`。 +4. 数据库:`SELECT paid_amount, hcs_sync_status FROM blade_payment_application WHERE id=?` → paid_amount>0 且 hcs_sync_status=unsynced。 +5. 手动扫描:`POST /hcs/sync/payment` → 日志 `HCS履约记录新建成功`(C108-1)→ 数据库 `hcs_perf_fd_id` 回填。 +6. 分期付款(金蝶再次付款)→ 再触发回写 → 金额变化置 unsynced → 再扫描 → 日志 `HCS履约记录更新成功`(C108-2);HCS 侧 fd_fact_amount 与最新 paid_amount 一致。 +7. 反向验证:`paying` 状态下连续两轮回写但金额不变 → 不置 unsynced、不重复推送。 **场景 3|履约开票记录**