旁路 · 提额
调整客户额度。两类:风控定价提额/降额(自动,
RiskPriceBusiness.applyRiskPrice)与 付费提额(客户付费换额度,payForRaiseLimit)。图例与服务名映射见 00-总览。真实分支见下方「分支清单」。
时序
sequenceDiagram autonumber actor C as 客户 participant App as 客户端 H5 participant BNS as BNS 业务编排 participant FCS as FCS 账务 participant PMT as PMT 支付 participant EXT as 外部三方(Paystack/Monnify) participant RES as res(缺失·未推送) Note over BNS,RES: 风控定价提额/降额(applyRiskPrice, bns) BNS->>BNS: 查授信(BnsApplyMainCredit applyStatus=E), 未授信→跳过 BNS->>BNS: 当日去重(BnsRiskResultRecord RISK_PRICE_NODE), 已请求→跳过 BNS->>RES: iRiskClient.riskPrice 风控定价 Note over RES: ✗ 调用整段注释(todo res), response 为空对象 Note over BNS: 落 BnsRiskResultRecord(approvalResult/Reason 占位) opt 定价返回 limitChang(空对象→永不触发) BNS->>FCS: adjustLimitByType(reduceCode=2 提额 / 1 降额) 改 FcsCustLmt end Note over C,EXT: 付费提额(payForRaiseLimit, fcs) C->>App: 申请付费提额 App->>FCS: payForRaiseLimit → getBeforePaymentProcess(TxnType RP).execute → save(payStatus=U) FCS->>PMT: RP 还款事件桥(BeforePaymentPlutusPublisher)扣款 PMT->>EXT: 扣款 EXT-->>PMT: 结果 PMT->>FCS: 回流, 扣款成功后调额
分支清单(穷举提额全部分支)
出处 RiskPriceBusiness(bns)/ FinancialBusiness(fcs)。状态 ✓活跃 / ✗注释空转。
| # | 分支 | 触发条件 | 处理 | 出处 | 状态 |
|---|---|---|---|---|---|
| 1 | 风控定价-未授信 | applyStatus≠E | 跳过 | RiskPriceBusiness:125 | ✓ |
| 2 | 风控定价-当日去重 | 当日已有 RISK_PRICE_NODE 记录 | 跳过(每日一次) | :135 | ✓ |
| 3 | 风控定价-真实定价 | — | iRiskClient.riskPrice(→res) | :141 | ✗ 整段注释(todo),response 空对象 |
| 4 | 风控结果落库 | — | 落 BnsRiskResultRecord(approvalResult/Reason 占位) | :146 | ✓(占位) |
| 5 | 提额执行 | response.limitReduceCode=2 | adjustLimitByType(fcs) 提额 | :160 | ✗ 空对象→永不触发 |
| 6 | 降额执行 | response.limitReduceCode=1 | adjustLimitByType(fcs) 降额 | :171 | ✗ 空对象→永不触发 |
| 7 | 付费提额 | 客户申请 | payForRaiseLimit → getBeforePaymentProcess(RP).execute → save(payStatus=U) | FinancialBusiness:299 | ✓ |
| 8 | 付费扣款派发 | 付费单生成 | RP 还款事件桥(BeforePaymentPlutusPublisher) | 见 05-还款 | ✓ |
| 9 | 调额执行(fcs) | adjustLimitByType 被调 | 改 FcsCustLmt.lmtAmt(按 reduceCode 提/降) | IAdjustService | ✓(接口活,定价侧不触发) |
| 10 | 调额列表查询 | 前端展示 | weeklyAdjustLimitList4nc / queryAllActivateAdjustLimitList4nc | query | ✓ |
| 11 | 额度变更记录 | 查询 | queryLastLimitChangeLog | INonfinancialService | ✓ |
接口落地
| # | 业务步骤 | 服务 | 真实接口 | 现状 | 说明 |
|---|---|---|---|---|---|
| 1 | 风控定价提额/降额 | BNS | RiskPriceBusiness.applyRiskPrice | ✗ | 真实风控调用 iRiskClient.riskPrice(→res) 整段注释,response 空对象 → 调额分支永不触发,只落占位风控记录 |
| 2 | 调额执行 | FCS | IAdjustService.adjustCustLimit/adjustLimitByType → 改 FcsCustLmt | ✓ | 接口活跃(被 applyRiskPrice 调,但定价侧 response 空不触发;运营/其它入口可调) |
| 3 | 付费提额 | FCS→PMT | IFinancialService.payForRaiseLimit → createOrder(TxnType.RP) → 事件桥扣款 | ✓ | 走 RP 还款扣款路径(BeforePaymentPlutusPublisher),扣款成功后调额 |
| 4 | 调额列表查询 | FCS/BNS | weeklyAdjustLimitList4nc/queryAllActivateAdjustLimitList4nc | ✓ | 前端 05-提额复借重授信 展示 |
| 5 | 额度变更记录 | FCS | INonfinancialService.queryLastLimitChangeLog | ✓ | 查变更日志 |
缺口小结
- 提额定价是断的(核心缺口):
RiskPriceBusiness.applyRiskPrice的真实风控定价调用iRiskClient.riskPrice(→res)整段注释(todo),response为空对象 → 提额/降额(adjustLimitByType)永不触发,只落占位风控记录 + 当日去重。与 02-授信 风控决策注释、03-借款 互斥注释一脉相承——判断类能力(含提额定价)系统性注释,源头是 res 未接通。 - 执行侧齐备:
adjustLimitByType改 FcsCustLmt(接口活)、payForRaiseLimit付费提额走 RP 扣款事件桥(早期版误写BeforePaymentPublisher,实为 RP 路径BeforePaymentPlutusPublisher)。 - 调额列表/变更记录查询本地齐备。
- 人脸提额(前端
faceRaiseLmt4nc)后端编排归此域,最终调 adjustLimitByType 执行;其定价同样依赖风控(断)。