# 【新增接口·管理后台】保险管理——保险产品全量列表(不分页),修复方案弹窗 pageSize=200 报错

> 服务:hl-order-service-v3(8086/8186) | 分支:dev-v3 | PR:#3717 | 已部署测试服并实测通过(2026-06-12)
> 背景:保险方案新增弹窗的产品下拉调 `GET /v3/admin/insurance/products?page=1&pageSize=200` 被全局分页上限拦截,页面红 toast「每页条数最大为100」

## ⚠️ 关键说明

1. **`pageSize` 全平台上限是 100**(PageParam 全局校验,所有分页接口一致),传 >100 一律返 `code=400`「每页条数最大为100」。**请勿用大 pageSize 模拟全量拉取**。
2. 需要全部数据的下拉/选择器场景,改用本次新增的**不分页全量接口** `GET /v3/admin/insurance/products/all`。
3. 原分页接口 `/products` 行为完全不变,列表页继续用它。

## 1. 新增端点

`GET /v3/admin/insurance/products/all`

### 入参(query)

| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| isOverseas | boolean | 否 | true=仅境外 / false=仅境内 / 不传=全部(方案弹窗「产品类型」单选可直接映射此参数) |

### 请求示例

```bash
# 全部产品
curl -k "https://web.test.1814.love:9443/v3/admin/insurance/products/all" \
  -H "Authorization: Bearer {token}"

# 仅境内(方案弹窗选「境内」时)
curl -k "https://web.test.1814.love:9443/v3/admin/insurance/products/all?isOverseas=false" \
  -H "Authorization: Bearer {token}"
```

### 响应示例(测试服实测,当前全量 10 条/境内 8 条)

```json
{
  "code": 200,
  "message": "成功",
  "data": [
    {
      "insuranceProductId": "2054773831589232641",
      "productId": "2054773831589232641",
      "productName": "山河令（太保山东新）",
      "productCode": "4810725b34654e1e88a7509e5b241c3a"
      // ...其余字段与分页版 /products 的列表项完全一致(同一 InsuranceProductVO)
    }
  ]
}
```

| 出参 | 说明 |
|---|---|
| data | **直接是数组**(无 total/page 包装),元素结构与分页版列表项一致,前端可无缝复用渲染逻辑 |

## 2. 回归确认(测试服实测)

| 调用 | 结果 |
|---|---|
| `/products/all` | 200,返回全量 10 条 |
| `/products/all?isOverseas=false` | 200,返回境内 8 条 |
| `/products?page=1&pageSize=200` | 400「每页条数最大为100」(维持不变,前端请改调 all) |
| `/products?page=1&pageSize=100` | 200,分页正常 |
