changelog: 车务司机/车辆列表日期筛选报错修复+车型图标长度放宽64 (PR #3694/#3695)
这个提交包含在:
父节点
51ddac08de
当前提交
d4f83f6d6e
@ -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 双份,纯文档无行为变化。
|
||||
@ -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
|
||||
正在加载...
x
在新工单中引用
屏蔽一个用户