diff --git a/blade-service/blade-transport/src/main/java/org/springblade/transport/service/impl/ReceiptClaimRecordServiceImpl.java b/blade-service/blade-transport/src/main/java/org/springblade/transport/service/impl/ReceiptClaimRecordServiceImpl.java index 335cea3e..39a1d496 100644 --- a/blade-service/blade-transport/src/main/java/org/springblade/transport/service/impl/ReceiptClaimRecordServiceImpl.java +++ b/blade-service/blade-transport/src/main/java/org/springblade/transport/service/impl/ReceiptClaimRecordServiceImpl.java @@ -334,7 +334,9 @@ public class ReceiptClaimRecordServiceImpl extends BaseServiceImpl 0) ← 「认领 seq / e_corebillno = 第一张结算单id(分摊按结算单id升序,多张取最小) ⑥ 调 pushClaimResult: 成功 → push_status=pushed、push_fail_reason 清空、pushed_time=now、 - kingdee_bill_no=响应 number、kingdee_bill_status=pushed; + kingdee_bill_no=响应 number(**A301-3 成功响应 number 为空,取回执 keys.awrp_src_code 即来源编码占位**)、 + kingdee_bill_status=pushed; 级联刷新该流水名下全部未作废认领主单的 kingdee_bill_no/kingdee_bill_status 失败 → push_status=failed、push_fail_reason=金蝶错误文本汇总(认领数据不回滚) ⑦ 推送动作留痕(blade_receipt_flow_record,operation=push) @@ -164,7 +165,7 @@ claimed 累计有效认领 == unclaimed_amount(且 > 0) ← 「认领 - 扫描:`push_status = pushed` 且 `kingdee_bill_status IN (pushed, approved)` 的流水; - 匹配:金蝶收款单 `sourcebillnumber == 流水.awrp_src_code`(一流水一码,无歧义); -- 回写:`flow.kingdee_bill_no / kingdee_bill_status`(状态映射不变:A/B→pushed、C→approved、D→received、其他→failed),并级联刷新名下未作废认领主单的冗余字段; +- 回写:`flow.kingdee_bill_status` 按状态映射推进(A/B→pushed、C→approved、D→received、其他→failed);`kingdee_bill_no` 以金蝶真实收款单号**覆盖**推送时的来源编码占位,并级联刷新名下未作废认领主单的冗余字段; - 定时接入复用现有任务风格(`thirdParty.bfi.receiptClaimResult.*`,本期仍可手动触发)。 ### 4.6 作废(不变 + 两点明确)