【行为变更·管理后台】个人车常驻司机绑定 → 司机侧车牌双向同步(仅自有车,公司车豁免) > 服务:hl-fleet-service(车务) > PR:#3929(合并 dev-v3) > 类型:后端数据一致性修复,**无接口契约变更**(无新端点 / 无入参出参结构变化) > 前端:**无需改动**,仅行为更准;本条为周知 ## ⚠️ 关键说明 - 车辆侧权威 1:1 = `fleet_vehicle.primary_driver_id`;司机侧 `fleet_driver.primary_vehicle_plate` 是**去规范化展示列**,用于司机列表「常驻车牌」筛选(`GET /admin/fleet/drivers/page?primaryVehiclePlate=`)。 - 此前个人车绑/解/换常驻时,司机侧这一列**不会跟着更新**,导致「按常驻车牌筛选司机」对个人车可能筛不到 / 筛错。本次补齐双向同步。 - **仅自有车(ownerType=personal)同步**;**公司车(调配车,非司机自有)一律不同步**,司机侧车牌保持其自有车牌不被公司调配车覆盖。 ## 1. 变更内容 | 场景 | 此前 | 现在 | |------|------|------| | 个人车绑定/改绑常驻司机 | 司机侧 `primary_vehicle_plate` 不更新 | 同步为该车车牌 | | 个人车解绑常驻 / 司机被换到别的车 | 司机侧车牌残留旧值 | 清空(仅当其当前车牌仍等于这台车,避免误清已改指向别处的司机) | | 同一次编辑同时改车牌 + 换常驻 | —(功能此前不存在) | 老司机按**旧**车牌清、新司机按**新**车牌设 | | 个人车 → 公司车切换 | — | 清掉原个人车常驻司机的展示车牌 | | 公司车绑定常驻 | — | **不同步**(豁免) | | 车辆批量导入 update 重绑个人车常驻 | 不同步 | 同步(与表单编辑同口径) | 覆盖 6 个绑定触点:新增车辆、车辆编辑、车辆导入 update、删司机解绑、司机侧改绑常驻车(`PUT /admin/fleet/drivers/{driverId}/resident-vehicle`)。 ## 2. 测试服实测(api.test.1814.love:9443,真 admin token) - 绑定个人车 蒙C03E03 → 司机朝克图:`fleet_driver.primary_vehicle_plate = 蒙C03E03` ✓ - 解绑:司机侧车牌清空 ✓ - 绑定公司车 蒙C02E02 → 司机:司机侧车牌**保持空**(豁免)✓ - 单元 + H2 集成测试:875 passed / 0 failed(含 7 个新增场景用例) ## 3. 前端动作 无。司机列表「按常驻车牌筛选」对个人车现在准确,前端无需改造。