旁路 · 提额

调整客户额度。两类:风控定价提额/降额(自动,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=2adjustLimitByType(fcs) 提额:160✗ 空对象→永不触发
6降额执行response.limitReduceCode=1adjustLimitByType(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 / queryAllActivateAdjustLimitList4ncquery
11额度变更记录查询queryLastLimitChangeLogINonfinancialService

接口落地

#业务步骤服务真实接口现状说明
1风控定价提额/降额BNSRiskPriceBusiness.applyRiskPrice真实风控调用 iRiskClient.riskPrice(→res) 整段注释,response 空对象 → 调额分支永不触发,只落占位风控记录
2调额执行FCSIAdjustService.adjustCustLimit/adjustLimitByType → 改 FcsCustLmt接口活跃(被 applyRiskPrice 调,但定价侧 response 空不触发;运营/其它入口可调)
3付费提额FCS→PMTIFinancialService.payForRaiseLimitcreateOrder(TxnType.RP) → 事件桥扣款走 RP 还款扣款路径(BeforePaymentPlutusPublisher),扣款成功后调额
4调额列表查询FCS/BNSweeklyAdjustLimitList4nc/queryAllActivateAdjustLimitList4nc前端 05-提额复借重授信 展示
5额度变更记录FCSINonfinancialService.queryLastLimitChangeLog查变更日志

缺口小结

  • 提额定价是断的(核心缺口):RiskPriceBusiness.applyRiskPrice 的真实风控定价调用 iRiskClient.riskPrice(→res)整段注释(todo)response 为空对象 → 提额/降额(adjustLimitByType)永不触发,只落占位风控记录 + 当日去重。与 02-授信 风控决策注释、03-借款 互斥注释一脉相承——判断类能力(含提额定价)系统性注释,源头是 res 未接通
  • 执行侧齐备adjustLimitByType 改 FcsCustLmt(接口活)、payForRaiseLimit 付费提额走 RP 扣款事件桥(早期版误写 BeforePaymentPublisher,实为 RP 路径 BeforePaymentPlutusPublisher)。
  • 调额列表/变更记录查询本地齐备。
  • 人脸提额(前端 faceRaiseLmt4nc)后端编排归此域,最终调 adjustLimitByType 执行;其定价同样依赖风控(断)。