3.9 KiB
3.9 KiB
准驾车型 / 民族 / 保险公司 / 性别 改数据字典下拉 — 修改接口 — 管理后台
变更类型:🟡 增强(字段改字典下拉,字段名/类型不变) 端类型:管理后台 日期:2026-06-08 服务:hl-fleet-service + hl-user-service(字典种子)
1. 背景
车务(车辆 / 司机档案)几个「标准受控词表」字段过去是自由文本手填,本次改为数据字典驱动,前端应改为下拉选择框,选项从字典接口拉取:
- 准驾车型、民族、保险公司 是新建字典;
- 性别 复用平台已有
gender字典(后端这次放开校验、开始接受「未知」)。
字段名、类型、提交格式全不变,前端只是把输入控件换成下拉。
2. 变更清单
| 字段 | 出现位置 | 旧控件 | 新控件(字典 type) | 提交值 |
|---|---|---|---|---|
准驾车型 licenseClass/type |
司机驾照信息 | 文本框 | 下拉 driving_license_class |
dictValue(A1/A2/B1…国标代码) |
民族 nation |
司机基本信息 | 文本框 | 下拉 nation |
dictValue(中文,如 蒙古族) |
保险公司 insurer(车)/ company(司机) |
车辆 / 司机保险 | 文本框 | 下拉 insurance_company |
dictValue(中文,如 中国人保财险) |
性别 gender |
司机基本信息 | 文本框/单选 | 下拉 gender(平台已有) |
dictValue(1=男/2=女/0=未知) |
⚠️ 性别新增「0=未知」:后端原来只认 1/2,本次放开为 1/2/0,与平台 gender 字典对齐。前端下拉请用全部 3 项。导入 Excel 的「性别」列现支持
男/女/未知(也兼容已是1/2/0)。
3. 字典怎么取(通用接口,已有)
GET /admin/dict/data/{dictType}(Bearer Token),用 dictValue 作选项值、dictLabel 作显示文案,按 sortOrder 升序。
| dictType | 项数 | 示例 |
|---|---|---|
driving_license_class |
16 | A1=A1(大型客车)/ C1=C1(小型汽车)… |
nation |
56 | 汉族 / 蒙古族 / 回族 …(value=label=中文) |
insurance_company |
10 | 中国人保财险 / 中国平安财险 …(value=label=中文,末项「其他」) |
gender |
3 | 1=男 / 2=女 / 0=未知 |
响应示例(准驾车型节选):
{
"code": 200, "success": true,
"data": [
{"dictValue": "A1", "dictLabel": "A1(大型客车)", "sortOrder": 10, "status": "ACTIVE"},
{"dictValue": "C1", "dictLabel": "C1(小型汽车)", "sortOrder": 60, "status": "ACTIVE"}
]
}
4. 前端迁移清单
- 准驾车型:司机驾照表单的准驾车型改下拉,选项
GET /admin/dict/data/driving_license_class;提交licenseClass(或license.type)= 选中dictValue(A1 等代码)。 - 民族:改下拉,选项
GET /admin/dict/data/nation;提交nation= 选中dictValue(中文)。 - 保险公司:车辆
insurer、司机保险company都改下拉,选项GET /admin/dict/data/insurance_company;提交选中dictValue(中文)。 - 性别:下拉用
GET /admin/dict/data/gender,含 0=未知;展示已有性别值时用该字典把 0/1/2 映射为 未知/男/女。 - 存量兼容:历史值与字典 value 一致(A1、蒙古族、中国人保财险、1/2…),回显正常;遇字典里没有的历史脏值,下拉做「未匹配则原样显示」兜底。
- 可后台增减:准驾车型/民族/保险公司都能在「系统管理 → 字典管理」增减,前端无需改代码。
5. 关联
| 项目 | 信息 |
|---|---|
| PR | wx/HL#3599 |
| 部署 | 已部署测试服并实测:准驾 16 / 民族 56 / 保险 10 / 性别 3(含 0=未知),经网关 9443 |
| 字典维护 | 系统管理 → 字典管理,type=driving_license_class / nation / insurance_company / gender |
| 后端负责人 | wx |