hl-api-changelog/changelogs-v2/2026-08/12_5895_排车页槽位卡头车型大类标签修复-修复-管理后台.md
Mimingguang 03f4599f91
一些检查失败了
changelog-filename-gate / validate (push) Failing after 2s
docs(changelogs-v2): 回写 #5895 前端 not_required
前端零消费 vehicleCategoryLabel/vehicleCategoryKey(排车页卡头字段,#5904 新增
尚未接入),后端别名取值修复对前端透明,实证 not_required。
2026-08-12 12:24:32 +08:00

3.2 KiB

schema, ticket, title, consumer, change_type, author, backend_status, gateway_status, frontend_status, frontend_owner, frontend_ref, target_release, verified_at, status_note, updated_at, base
schema ticket title consumer change_type author backend_status gateway_status frontend_status frontend_owner frontend_ref target_release verified_at status_note updated_at base
hl-changelog/v2 5895 排车页槽位卡头车型大类标签修复——type_key 别名 normalize 成中文标签 admin 修复 wx(GIT) deployed not_required not_required mmg 2026-08-12 后端已修复并部署测试服,API 实测通过。排车页「车辆槽位 N」卡片头在 PR #5904 新增的 vehicleCategoryLabel 字段实测返回别名 suv2应显示 SUV因为 fleet_vehicle_type.type_key 存的是别名,而 VehicleCategoryNormalizer.categoryLabel() 只认规范 key suv/mpv/bus/sedan,直接传入会原样返回别名。修复=先 normalize() 成规范 key 再取中文标签。实测订单 26-3698蒙A-H7777 type_key=suv2vehicleCategoryKey 由 suv2 → suv、vehicleCategoryLabel 由 suv2 → SUV。 2026-08-12 dev-v3

排车页槽位卡头车型大类标签修复——type_key 别名 normalize 成中文标签(#5895

服务: hl-fleet-service PR: #5904槽位头车型大类字段新增+ #5907别名标签修复,本条 日期: 2026-08-12 背景: 用户要求排车页「车辆槽位 N」卡片头显示车型大类名多个和车牌一样分割显示。#5904 加了 vehicleCategoryKey/vehicleCategoryLabel 字段,但实测发现已派车辆的大类标签返回了别名 suv2 而非中文「SUV」。


修复内容(对前端透明,无接口契约变化)

根因fleet_vehicle_type.type_key 存的是别名(如 suv2mpv2),BoardOrderService.toVehicleSlotVO 直接把它传给 VehicleCategoryNormalizer.categoryLabel(),而该方法只认规范 key suv/mpv/bus/sedan,未匹配时原样返回别名 → 前端拿到 suv2

修复:先 VehicleCategoryNormalizer.normalize(info.getCategoryKey()) 归一别名到规范 key,再取 categoryLabel();归一失败null时保留原值兜底。

String categoryKey = VehicleCategoryNormalizer.normalize(info.getCategoryKey());
vehicleCategoryKey = categoryKey == null ? info.getCategoryKey() : categoryKey;
vehicleCategoryLabel = VehicleCategoryNormalizer.categoryLabel(vehicleCategoryKey);

字段口径(#5904 原有,本条不改)

  • 未派:vehicleCategoryKey/Label = 需求车型大类(如 suv/SUV
  • 已派:vehicleCategoryKey/Label = 实际车辆车型大类 normalize 后的规范 key + 中文标签

验证证据(测试服 API 实测,订单 26-3698 / 2086270138171994114

GET /admin/fleet/board/orders/2086270138171994114vehicleSlots[0]

字段 修复前 修复后
vehicleCategoryKey suv2 suv
vehicleCategoryLabel suv2 SUV

DB 佐证:fleet_vehicle 蒙A-H7777 的 vehicle_type_id 对应 fleet_vehicle_type.type_key=suv2(别名,非规范 key,确认是别名 → normalize 路径生效。

测试

  • 新增用例 BoardOrderServiceTest.queryOrderDetail_vehicleSlots_vehicleCategoryAliasKeyNormalized:已派槽位 type_key=suv2 别名 → normalize 成 SUV
  • BoardOrderServiceTest 125/125 绿。