78 行
3.9 KiB
Markdown
78 行
3.9 KiB
Markdown
# 准驾车型 / 民族 / 保险公司 / 性别 改数据字典下拉 — 修改接口 — 管理后台
|
||
|
||
> 变更类型:🟡 增强(字段改字典下拉,字段名/类型不变)
|
||
> 端类型:管理后台
|
||
> 日期: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=未知 |
|
||
|
||
**响应示例**(准驾车型节选):
|
||
|
||
```json
|
||
{
|
||
"code": 200, "success": true,
|
||
"data": [
|
||
{"dictValue": "A1", "dictLabel": "A1(大型客车)", "sortOrder": 10, "status": "ACTIVE"},
|
||
{"dictValue": "C1", "dictLabel": "C1(小型汽车)", "sortOrder": 60, "status": "ACTIVE"}
|
||
]
|
||
}
|
||
```
|
||
|
||
---
|
||
|
||
## 4. 前端迁移清单
|
||
|
||
1. **准驾车型**:司机驾照表单的准驾车型改下拉,选项 `GET /admin/dict/data/driving_license_class`;提交 `licenseClass`(或 `license.type`)= 选中 `dictValue`(A1 等代码)。
|
||
2. **民族**:改下拉,选项 `GET /admin/dict/data/nation`;提交 `nation` = 选中 `dictValue`(中文)。
|
||
3. **保险公司**:车辆 `insurer`、司机保险 `company` 都改下拉,选项 `GET /admin/dict/data/insurance_company`;提交选中 `dictValue`(中文)。
|
||
4. **性别**:下拉用 `GET /admin/dict/data/gender`,含 **0=未知**;展示已有性别值时用该字典把 0/1/2 映射为 未知/男/女。
|
||
5. **存量兼容**:历史值与字典 value 一致(A1、蒙古族、中国人保财险、1/2…),回显正常;遇字典里没有的历史脏值,下拉做「未匹配则原样显示」兜底。
|
||
6. **可后台增减**:准驾车型/民族/保险公司都能在「系统管理 → 字典管理」增减,前端无需改代码。
|
||
|
||
---
|
||
|
||
## 5. 关联
|
||
|
||
| 项目 | 信息 |
|
||
|---|---|
|
||
| PR | https://git.1814.love:8443/wx/HL/pulls/3599 |
|
||
| 部署 | 已部署测试服并实测:准驾 16 / 民族 56 / 保险 10 / 性别 3(含 0=未知),经网关 9443 |
|
||
| 字典维护 | 系统管理 → 字典管理,type=`driving_license_class` / `nation` / `insurance_company` / `gender` |
|
||
| 后端负责人 | wx |
|