fix(admin-insurance): 保险产品列表 isOverseas 筛选生效 (HL #1491)
这个提交包含在:
父节点
c5ec83e692
当前提交
ceb6bbbe4c
@ -0,0 +1,47 @@
|
||||
# admin 保险产品列表 isOverseas 筛选生效(境外/境内分类不再失效)
|
||||
|
||||
**日期**: 2026-04-27
|
||||
**PR**: #1491 (Closes #1490)
|
||||
**影响端**: 管理后台 admin
|
||||
|
||||
## 行为变化
|
||||
|
||||
`GET /admin/insurance/products?isOverseas=true|false` 现在真的会按 `isOverseas` 字段过滤,之前接口参数声明了但后端**完全忽略**,导致前端任何选择都返回全量。
|
||||
|
||||
接口签名无变化,只是「之前空跑、现在生效」。
|
||||
|
||||
## 涉及接口
|
||||
|
||||
- `GET /admin/insurance/products?page&pageSize&isOverseas` — 查询参数 `isOverseas` 现在生效
|
||||
|
||||
## 验收实证(测试服 2026-04-27 部署后)
|
||||
|
||||
```
|
||||
# 全量
|
||||
GET /admin/insurance/products?page=1&pageSize=20
|
||||
→ 境内 + 境外都返回
|
||||
|
||||
# 仅境外
|
||||
GET /admin/insurance/products?page=1&pageSize=20&isOverseas=true
|
||||
→ 仅 isOverseas=true 的产品
|
||||
|
||||
# 仅境内
|
||||
GET /admin/insurance/products?page=1&pageSize=20&isOverseas=false
|
||||
→ 仅 isOverseas=false 的产品
|
||||
```
|
||||
|
||||
## 为什么改这个
|
||||
|
||||
蒋雨莲(运营)反馈:保险产品列表的「产品类型」下拉切到「境外」后列表无变化、依旧境内境外都有。
|
||||
|
||||
排查发现 `AdminInsuranceController.listProducts()` 接收了 `@RequestParam Boolean isOverseas` 但调 Service 时根本没传下去,Service / Mapper 链路全是无参的 —— 经典「哑参数 BUG」。
|
||||
|
||||
后端补全参数透传,并在 Mapper 用 `eqIfPresent`(null 不拼条件,保持向后兼容)。
|
||||
|
||||
## 前端建议
|
||||
|
||||
**前端无需改动**。保险产品列表页的「产品类型」筛选 / `searchForm.isOverseas` / `/api/insurance.js` 都已经在传 `isOverseas`,本次后端补完链路后下拉切换会立即看到列表条数变化。
|
||||
|
||||
## mp 端 / C 端
|
||||
|
||||
不影响(保险产品列表是后台管理功能,不暴露给小程序)。
|
||||
正在加载...
x
在新工单中引用
屏蔽一个用户