2.9 KiB
2.9 KiB
【功能落地·车辆/司机】常驻司机 1:1 车侧权威 — primaryDriverId 真实可用 + 详情回显
变更类型:🟢 功能落地(原文档已描述、后端补实现;出入参字段不变) 端类型:管理后台 服务:hl-fleet-service PR:wx/HL#3602 日期:2026-06-08
⚠️ 关键说明
「常驻司机」primaryDriverId 之前文档已写、但后端是占位(详情 primaryDriverName 一直返 null)。本次真实落地:
- 常驻严格 1:1·车侧权威:一车一常驻司机、一司机一常驻车,权威落
fleet_vehicle.primary_driver_id。 - 与「派单 N:N」正交——常驻只是派单候选加权,实际派谁开哪台车仍可任意。
1. 前端能用什么了
| 场景 | 说明 |
|---|---|
车辆编辑(PUT /admin/fleet/vehicles/{id})设常驻 |
入参 primaryDriverId 传司机 ID = 设为常驻;传 null/不传 = 解绑常驻 |
| 设常驻冲突 | 选的司机已是别车常驻 → 返 605022「该司机已是其它车辆的常驻司机,请先解绑后再指定」(不自动转移,需先去那台车解绑) |
车辆详情(GET /admin/fleet/vehicles/{id})回显 |
primaryDriverId / primaryDriverName / primaryDriverPhone(脱敏)现在真实返回(无常驻则三者全 null),不再恒 null |
2. 出参示例(详情,有常驻司机)
{
"code": 0,
"data": {
"id": "<vehicleId>",
"plate": "蒙A-88888",
"primaryDriverId": "1234567890",
"primaryDriverName": "王师傅",
"primaryDriverPhone": "138****1234"
},
"msg": "成功"
}
无常驻时:primaryDriverId / primaryDriverName / primaryDriverPhone 均为 null。
3. 新增错误码
| code | msg | 触发场景 |
|---|---|---|
| 605022 | 该司机已是其它车辆的常驻司机,请先解绑后再指定 | 设常驻时所选司机已是别车常驻 |
4. 尚未包含(下一步)
「司机自带车审核通过 → 自动建车 + 自动设常驻本人 + 自动归个人所有」未包含——它依赖「自带车→自动建车」路径,该路径目前后端未实现(自带车审核当前只在司机档案记车牌字符串、未建车辆记录)。该路径落地后会自动完成上述联动,届时另发 changelog。当前车管可手动建车 + 手动设常驻。
5. 验证
hl-fleet-service211 单测全绿。- 已部署测试服(双实例 8087 + 8187 均 UP,Flyway 加列成功);运行态 OpenAPI 契约详情含
primaryDriverId/primaryDriverName/primaryDriverPhone、编辑入参含primaryDriverId。
6. 关联文档
| 文档 | 版本 |
|---|---|
| API-SPEC-FLEET | v1.5.18(§2.2 / §2.4 / §14.3 错误码 605022) |
| DATABASE-SCHEMA-FLEET | v1.5.15(fleet_vehicle.primary_driver_id + uk_primary_driver) |
| SRS-FLEET | v1.5(§9.15.4 常驻 1:1 车侧权威) |