From d4f83f6d6e0110d4347a58b358884010a205a855 Mon Sep 17 00:00:00 2001 From: API Changelog Bot Date: Thu, 11 Jun 2026 15:33:49 +0800 Subject: [PATCH] =?UTF-8?q?changelog:=20=E8=BD=A6=E5=8A=A1=E5=8F=B8?= =?UTF-8?q?=E6=9C=BA/=E8=BD=A6=E8=BE=86=E5=88=97=E8=A1=A8=E6=97=A5?= =?UTF-8?q?=E6=9C=9F=E7=AD=9B=E9=80=89=E6=8A=A5=E9=94=99=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?+=E8=BD=A6=E5=9E=8B=E5=9B=BE=E6=A0=87=E9=95=BF=E5=BA=A6?= =?UTF-8?q?=E6=94=BE=E5=AE=BD64=20(PR=20#3694/#3695)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...RING出单中与标签对齐列表措辞-数据字典-管理后台.md | 64 +++++++++++++++++++ ...选报错修复与车型图标长度放宽-修改接口-管理后台.md | 45 +++++++++++++ 2 files changed, 109 insertions(+) create mode 100644 changelogs-v2/2026-06/11_3692_保险状态字典补INSURING出单中与标签对齐列表措辞-数据字典-管理后台.md create mode 100644 changelogs-v2/2026-06/11_3694_司机车辆列表日期筛选报错修复与车型图标长度放宽-修改接口-管理后台.md diff --git a/changelogs-v2/2026-06/11_3692_保险状态字典补INSURING出单中与标签对齐列表措辞-数据字典-管理后台.md b/changelogs-v2/2026-06/11_3692_保险状态字典补INSURING出单中与标签对齐列表措辞-数据字典-管理后台.md new file mode 100644 index 0000000..6e227b9 --- /dev/null +++ b/changelogs-v2/2026-06/11_3692_保险状态字典补INSURING出单中与标签对齐列表措辞-数据字典-管理后台.md @@ -0,0 +1,64 @@ +--- +date: 2026-06-11 +type: dict-data +module: hl-user-service/sys_dict + insurance +priority: medium +status: merged-deployed +restart_service: hl-user-service(已部署并实测通过) +端类型: 管理后台 +breaking_change: false +gitea_pr: 3692 +--- + +# 保险状态字典 `insurance_status` 补 INSURING(出单中) + 标签对齐列表措辞 + +> 关联:保游 4.2 异步出单整改(changelog `10_3642`)引入 INSURING 状态后,字典一直没补;本次为纯字典数据变更,**后端已部署测试服并实测通过,前端零代码改动**(下拉走字典接口自动生效)。 + +## ⚠️ 关键说明 + +1. **前端不用改代码**:保险订单管理页筛选下拉走 `GET /admin/dict/data/insurance_status`,刷新页面即可看到新选项(字典接口有 5 分钟 Redis 缓存,测试服已手动清过,立即生效)。 +2. **下拉标签措辞变了**:原字典标签(待投保/已投保/已取消/失败)与列表行 `statusLabel`(待出单/已承保/已退保/投保失败)是两套话术,本次统一为列表行同款措辞。若有截图/文案依赖旧措辞请同步。 +3. **筛选 INSURING 直接可用**:列表接口 `GET /v3/admin/insurance/list` 的 `status` 入参无白名单校验,传 `INSURING` 即筛出出单中保单。 + +## 1. 字典终态(共 5 项,按状态生命周期排序) + +| dict_value | dict_label(旧 → 新) | sort_order(旧 → 新) | 说明 | +|------------|----------------------|----------------------|------| +| PENDING | 待投保 → **待出单** | 2 → 1 | 已创建未发起投保 | +| **INSURING** | **出单中(新增)** | — → 2 | 保游 4.2 异步出单窗口期,等回调落定 | +| INSURED | 已投保 → **已承保** | 1 → 3 | 出单成功 | +| CANCELLED | 已取消 → **已退保** | 3 → 4 | 已撤单/退保 | +| FAILED | 失败 → **投保失败** | 4 → 5 | 出单失败(可手动重投) | + +## 2. 验证示例(测试服实测) + +```bash +curl -k "https://api.test.1814.love:9443/admin/dict/data/insurance_status" \ + -H "Authorization: Bearer {admin_token}" +``` + +响应(节选 data,字段同字典接口通用结构): + +```json +[ + { "dictValue": "PENDING", "dictLabel": "待出单", "sortOrder": 1 }, + { "dictValue": "INSURING", "dictLabel": "出单中", "sortOrder": 2 }, + { "dictValue": "INSURED", "dictLabel": "已承保", "sortOrder": 3 }, + { "dictValue": "CANCELLED", "dictLabel": "已退保", "sortOrder": 4 }, + { "dictValue": "FAILED", "dictLabel": "投保失败", "sortOrder": 5 } +] +``` + +筛选出单中保单: + +```bash +curl -k "https://api.test.1814.love:9443/v3/admin/insurance/list?status=INSURING&page=1&pageSize=10" \ + -H "Authorization: Bearer {admin_token}" +``` + +(前端按现有 `searchForm.status` 传参即可,无需任何调整。) + +## 3. 后端附带变更(与前端无关,备查) + +- 新增 Flyway `V20260611_002`(hl-user-service):整字典幂等补种 + 存量行收敛(原种子只在手工脚本 `sql/dict_business_enums.sql`,未纳入 Flyway,新环境会缺整个字典)。 +- `InsuranceQueryRequest.status` 的 Swagger 注释由过时值集(PENDING/EFFECTIVE/EXPIRED/CANCELLED)更正为真实值集(PENDING/INSURING/INSURED/CANCELLED/FAILED),v2/v3 双份,纯文档无行为变化。 diff --git a/changelogs-v2/2026-06/11_3694_司机车辆列表日期筛选报错修复与车型图标长度放宽-修改接口-管理后台.md b/changelogs-v2/2026-06/11_3694_司机车辆列表日期筛选报错修复与车型图标长度放宽-修改接口-管理后台.md new file mode 100644 index 0000000..3ea9317 --- /dev/null +++ b/changelogs-v2/2026-06/11_3694_司机车辆列表日期筛选报错修复与车型图标长度放宽-修改接口-管理后台.md @@ -0,0 +1,45 @@ +# 【修复·管理后台】车务:司机/车辆列表日期筛选参数报错修复 + 车型大类图标长度放宽 64 + +> 存放目录: changelogs-v2/2026-06/ +> 涉及服务: hl-fleet-service(8087) +> PR: #3694 + #3695(文档版本记录)(均已合并 dev-v3,**测试服已部署并 API 实测通过**) | 无关联工单(用户即时报修) | 日期: 2026-06-11 +> 影响范围: 管理后台**司机档案/车辆档案列表筛选** + **车型大类新增/编辑** + +## ⚠️ 关键说明(前端必看 2 点) + +1. **列表日期筛选现在能用了(之前一传就报错)**:司机列表 `licenseExpireBefore`/`insuranceAnnualEndBefore`、车辆列表 `insureDueBefore`/`inspectDueBefore` 四个 GET 日期参数,此前传 `2026-07-11` 这类标准格式直接报 `Failed to convert ... LocalDate`(后端缺日期绑定注解),现已修复。**格式仍是 `yyyy-MM-dd`,请求/响应形状零变化,前端无需改任何代码**,之前因报错被屏蔽的筛选交互可以放开。 +2. **车型大类 `icon` 上限 8→64 字符**:之前传图标组件名(如 `BusOutline`=10 字符)被 400「图标长度不能超过 8」拒(原按单 emoji 设计),现在最长 64,**组件名或 emoji 都可以**;超 64 报 400「图标长度不能超过 64」。 + +## 1. 日期筛选修复(4 个参数) + +| 接口 | 参数 | 说明 | +|------|------|------| +| `GET /admin/fleet/drivers/page` | `licenseExpireBefore` | 驾照到期日 ≤ 该日(含),yyyy-MM-dd | +| `GET /admin/fleet/drivers/page` | `insuranceAnnualEndBefore` | 年保到期日 ≤ 该日(含),仅 annual 行命中 | +| `GET /admin/fleet/vehicles/page` | `insureDueBefore` | 保险到期日 ≤ 该日(含)——同根因一并修,此前同样报错 | +| `GET /admin/fleet/vehicles/page` | `inspectDueBefore` | 年检到期日 ≤ 该日(含)——同上 | + +测试服实测(用户原始报错 URL): + +``` +GET /admin/fleet/drivers/page?page=1&pageSize=24&season=active&insuranceAnnualEndBefore=2026-07-11&licenseExpireBefore=2026-08-10 +→ {"code":200,"message":"成功","data":{"records":[],"total":0,...}} + // 不再报 Failed to convert property value of type 'java.lang.String' to 'java.time.LocalDate' +``` + +## 2. 车型大类 icon 放宽 + +`POST /admin/fleet/vehicle-types` 与 `PUT /admin/fleet/vehicle-types/{typeId}` 入参 `icon`:≤8 → **≤64**(DB 列同步 `VARCHAR(8)→VARCHAR(64)`,Flyway `V20260611_004` 纯加宽,存量 emoji 图标无损)。 + +测试服实测(用户原始报错请求体): + +``` +PUT /admin/fleet/vehicle-types/2064609312168083458 +{"typeKey":"mpv","typeName":"商务车","icon":"BusOutline","description":"高级团","sortOrder":99} +→ {"code":200,"message":"成功","data":{"id":"2064609312168083458","typeKey":"mpv","typeName":"商务车","icon":"BusOutline","description":"高级团","sortOrder":99,...}} + // 列表回读 icon="BusOutline" 一致 +``` + +## 3. 文档版本 + +FLEET API → **v1.5.58** / FLEET DB → **v1.5.25**,文档站已同步:https://web.test.1814.love:9443/hl-docs/order-v3/api/API-SPEC-FLEET-V1.5.html