旁路 · 优惠券减免
还款时用优惠券抵扣应还利息。查券/用券走 mkt 营销中台(外部,不在代码库)+ 前端算减免;fcs 侧的减免试算
couponDerateCalc注释。图例与服务名映射见 00-总览。真实分支见下方「分支清单」。
时序
sequenceDiagram autonumber actor C as 客户 participant App as 客户端 H5 participant GW as blc-service(网关/BFF) participant MKT as mkt 营销中台(外部) participant FCS as FCS 账务 participant Bridge as Bridge(缺失系统) C->>App: 还款时查可用券 App->>GW: coupon/v1/queryCouponList4nc GW->>MKT: 路由 /mkt/coupon/queryCouponList(营销中台) Note over MKT: ✗ mkt 营销中台不在 12 仓库(bns 无 CouponBusiness 实现) MKT-->>App: 可用券列表 Note over App: 前端算减免 discountAmt(A 固定/R 百分比, 最后一期, 减免≤利息) C->>App: 还款选用券 App->>GW: plutus/v1/generatePlutusWebOrder4nc(带 couponId) Note over FCS: fcs 减免试算 couponDerateCalc 整段注释(AdjustBusiness) FCS->>Bridge: iCouponClient.couponQueryList Note over Bridge: ✗ 整文件注释, TANK_BRIDGE_SERVICE 不在代码库
分支清单(穷举优惠券全部分支)
出处 middle-gateway 路由 / fcs AdjustBusiness。状态 ✓活跃 / ✗注释 / △外部。
| # | 分支 | 触发条件 | 处理 | 出处 | 状态 |
|---|---|---|---|---|---|
| 1 | 查可用券 | 还款时 | coupon/v1/queryCouponList4nc → 路由 mkt 营销中台 | blcServiceApi.txt:328/38 | △ 走 mkt 外部(活,不在代码库) |
| 2 | 前端算减免 | 选券 | discountAmt:A 固定 / R 百分比,最后一期,减免≤利息 | 前端 04-还款 | ✓ |
| 3 | 还款带券 | 还款 | generatePlutusWebOrder4nc 带 couponId | 见 05-还款 | ✓ |
| 4 | 是否已用券 | 校验 | queryIsUsedCoupon4nc / createCoupon(coupon/v1) | coupon/v1 | △ 走 mkt |
| 5 | fcs 减免试算 | couponDerateCalc | AdjustBusiness.couponDerateCalc | AdjustBusiness:301/824 | ✗ 整段注释 |
| 6 | fcs 查券(bridge) | iCouponClient | ICouponClient.couponQueryList → bridge | 见 14-服务依赖 | ✗ 整文件注释 |
缺口小结
- 校正:优惠券非”完全不可用”(早期版误判)。查券/用券实际经 mkt 营销中台(
/mkt/coupon/queryCouponList,外部,不在 12 仓库;bns 无 CouponBusiness 实现)+ 前端算减免(discountAmt,见 04-还款),还款带 couponId——这条前端侧是活的。 - fcs 侧减免试算断:
AdjustBusiness.couponDerateCalc(含iCouponClient→bridge)整段注释(IAdjustService:75 + AdjustBusiness:301/824)。即 fcs 不参与优惠券减免试算。 - mkt 营销中台是新外部节点(与 bridge 同类,不在代码库)——优惠券能力依赖它。减免最终如何入账(前端算 + mkt/pmt 处理 vs fcs 销账)待确认。
- 模式与授信/借款一致:判断/营销类能力外挂外部(mkt/bridge),fcs 本地实现注释。