余额: 保游Data直接是余额串非Data.Balance,后端已修,前端无需改刷新即对(实测198304.4)。
新增 POST /v3/admin/insurance/orders/{id}/sync-status 主动对账,可给出单中订单加刷新按钮;
另有定时job每5分钟自动对账兜底。
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2.7 KiB
2.7 KiB
【行为修复+新增端点·管理后台】保险账户余额显示修复(不再¥0)+ 保险订单「刷新出单状态」端点
端:hl-ui(保险管理 → 余额展示 / 保险订单列表·详情)| 服务:hl-order-service-v3 insurance | PR #3827 已合并 dev-v3 + 部署测试服双实例 + 实测 | 2026-06-15
1. 保险账户余额显示修复(后端 bug,前端无需改)
- 现象:保险余额一直显示 ¥0。
- 根因:保游
/Pay/GetUserBalance返回{"IsSuccess":true,"Data":"198304.40"}——Data直接就是余额字符串,后端原代码却取Data.Balance(当嵌套对象),取不到返 0。 - 已修:后端按 Data 文本直取(兼容旧嵌套格式)。
GET /v3/admin/insurance/balance现返真实余额(实测 198304.4)。 - 前端无需任何改动,刷新即正确显示。
2. 🆕 新增「刷新出单状态」端点(可选给保险订单加按钮)
异步出单(保游 80099 受理)的保险订单会先处于「出单中(INSURING)」,等保游出单后才变「已承保」。新增一个主动对账端点,可让运营在订单页**手动点「刷新出单状态」**立即拉保游最新状态翻态(不用干等回调):
| 用途 | 方法 + 路径 | 入参/出参 |
|---|---|---|
| 刷新/同步出单状态 | POST /v3/admin/insurance/orders/{id}/sync-status |
path id=保险订单ID;返回 Result<InsuranceOrderDetailVO>(刷新后的最新详情,含 status/statusLabel/policyNo);错误码 INSURANCE_ORDER_NOT_FOUND |
- 建议:保险订单列表/详情,对「出单中」状态的单加一个「刷新状态」按钮,调本端点;返回的 detail 直接刷新该行/该详情。
- 行为:后端会查保游订单详情对账——保游已出单→翻「已承保」并回填保单号;已退保→「已退保」;仍待出单→保持「出单中」(不会误翻)。仅对账,不会重复出单。
- 网关
/v3/admin/**已覆盖,无需后端/网关其它改动。
3. 说明(无需前端关心,仅背景)
- 后端已加定时对账 job(每 5 分钟自动扫「出单中」单查保游翻态),即使没人点按钮、保游回调也没到,出单中的单也会在保游出单后自动变已承保。手动端点只是让运营能立即刷新、不用等 5 分钟。
- 保游异步出单回调(DES 密钥)也已在测试环境配好作双保险。
验收
余额展示页应显示真实余额(非 ¥0)。保险订单「出单中」的单,点「刷新状态」(接 sync-status)后:保游已出单则变「已承保」+ 显示保单号;保游仍在出则保持「出单中」。