chore(changelog): #5479 看板列表同槽位跨段换车按派车组拆分-修改接口-管理后台
一些检查失败了
changelog-filename-gate / validate (push) Failing after 1s
一些检查失败了
changelog-filename-gate / validate (push) Failing after 1s
这个提交包含在:
父节点
093a9913b4
当前提交
3b47e02a39
@ -0,0 +1,63 @@
|
|||||||
|
---
|
||||||
|
schema: "hl-changelog/v2"
|
||||||
|
ticket: "5479"
|
||||||
|
title: "看板列表同槽位跨段换车 assignmentSlots 按派车组拆分"
|
||||||
|
consumer: "admin"
|
||||||
|
change_type: "修改接口"
|
||||||
|
backend_status: "deployed"
|
||||||
|
gateway_status: "verified"
|
||||||
|
frontend_status: "pending"
|
||||||
|
frontend_owner: ""
|
||||||
|
frontend_ref: ""
|
||||||
|
target_release: ""
|
||||||
|
verified_at: "2026-08-04"
|
||||||
|
status_note: "看板列表 assignmentSlots 修复:同槽位跨段换车(同 slot 多 assignment_group_id)时由仅返回首段改为按派车组返回多段(每段含各自区间/车辆/司机/司机手机号);slotSummary 各段区间合计覆盖全槽;单段槽位行为不变。前端若按单条槽位渲染需适配多段展示。"
|
||||||
|
updated_at: "2026-08-04"
|
||||||
|
base: "dev-v3"
|
||||||
|
---
|
||||||
|
|
||||||
|
# 【修改接口·管理后台】看板列表同槽位跨段换车 assignmentSlots 按派车组拆分 (#5479)
|
||||||
|
|
||||||
|
> **PR**: #5484 | **服务**: fleet | **更新时间**: 2026-08-04
|
||||||
|
|
||||||
|
## 1. 接口背景
|
||||||
|
|
||||||
|
车务看板列表(`GET /admin/fleet/board/orders`)的 `assignmentSlots[]` 原实现按稳定槽位(`assignment_slot_id`)聚合,同槽位跨段换车(同一槽位内前后两段使用不同车辆/司机,如 7 天行程前 3 天蒙A-H7777/阿拉坦 + 后 4 天蒙A-T1557/朝鲁门)时后段被折叠,列表只显示首段车辆/司机,与 matrix/grid 分段结果不一致。本次修复为按派车组(`assignment_group_id`)拆分,每段独立返回。
|
||||||
|
|
||||||
|
## 变更接口清单
|
||||||
|
|
||||||
|
| # | 接口名 | 方法 | 路径 | 变更类型 | 说明 |
|
||||||
|
|---|--------|------|------|----------|------|
|
||||||
|
| 1 | 车务看板列表 | GET | `/admin/fleet/board/orders` | 修改 | `assignmentSlots[]` 同槽跨段换车时由 1 条变为多段(每段独立 assignmentId/assignmentGroupId/区间/车辆/司机) |
|
||||||
|
|
||||||
|
## 2. 行为变化
|
||||||
|
|
||||||
|
| 场景 | 原来 | 现在 |
|
||||||
|
|------|------|------|
|
||||||
|
| 同槽位跨段换车(同 slot 多 group,如 08-10~12 H7777/阿拉坦 + 08-13~16 T1557/朝鲁门) | `assignmentSlots` 仅 1 条(首段车辆/司机,区间覆盖全槽 7 天) | 按派车组返回 2 段:段1 slotSummary 08-10~08-12/3天/H7777/阿拉坦;段2 slotSummary 08-13~08-16/4天/T1557/朝鲁门(各自 `assignmentGroupId`/`assignmentId`) |
|
||||||
|
| 单段槽位(同一槽位单派车组,绝大多数) | 1 条 | 1 条(不变) |
|
||||||
|
| canceled 历史段 | 不展示(整槽全 canceled 时展示 canceled 视图) | 不独立成段(整槽全 canceled 时行为不变) |
|
||||||
|
| 槽位区间覆盖 | 单条区间=全槽 | 各段区间合计覆盖全槽(不因拆分缩短) |
|
||||||
|
|
||||||
|
## 3. 接口详情
|
||||||
|
|
||||||
|
- **方法/路径**:`GET /admin/fleet/board/orders?teamNo=&page=&pageSize=`
|
||||||
|
- **响应**:`records[].assignmentSlots[]` 现可为多条(同槽跨段);每条结构不变(`assignmentId`/`assignmentGroupId`/`assignmentSlotId`/`slotSummary{assignmentSlotId, slotIndex, totalSlots, serviceStartDate, serviceEndDate, serviceDays, requiredVehicleType, ...}`/`vehiclePlate`/`vehicleModel`/`driverName`/`driverPhone`(掩码)/`assignmentStatus` 等),其中 `slotSummary.serviceStartDate/serviceEndDate/serviceDays` 为该段自身区间;`slotIndex/totalSlots` 为槽位维度(跨段时同一槽位多条共享相同 slotIndex/totalSlots)
|
||||||
|
- **不变**:顶层 record 仍按 requirementId 聚合一条,代表槽位取排序首条;分页/筛选/排序不变
|
||||||
|
|
||||||
|
## 4. 前端需要做什么
|
||||||
|
|
||||||
|
看板列表若按 `assignmentSlots` 渲染车辆/司机卡片:**需支持同一槽位(相同 `assignmentSlotId`/`slotIndex`)多条段卡片**(展示各自区间、车牌、司机);跨段换车场景现可正确展示后段,勿再按首条截断。单段槽位展示无变化。`slotSummary.serviceStartDate/serviceEndDate/serviceDays` 为段区间(多段合计为全槽)。
|
||||||
|
|
||||||
|
## 5. 后端测试、部署与验证
|
||||||
|
|
||||||
|
- 单元测试:新增同槽跨段换车拆分用例(H7777/阿拉坦 3 天 + T1557/朝鲁门 4 天 → 2 段各自区间/车辆/司机正确);更新同槽多组状态冲突、最终不用车混合、全最终不用车 3 个既有用例为按段拆分语义;AssignmentServiceTest 360 + Board* 107 用例全通过。
|
||||||
|
- 模块验证:`mvn -pl hl-fleet-service -am verify` 3078 用例 0 失败(Testcontainers 集成测试本机无 Docker 环境失败,基线同失败非本次引入)。
|
||||||
|
- 部署:TEST hl-fleet-service rolling 完成(task_id=1226b3fd,双实例 UP)。
|
||||||
|
- 验证(TEST 2026-08-04):订单 2081633366993494017(teamNo=26-2830)`assignmentSlots` 由修复前 1 条(仅 H7777/阿拉坦)变为 2 段:08-10~12 蒙A-H7777/丰田汉兰达/阿拉坦/135****5019 + 08-13~16 蒙A-T1557/丰田普拉多/朝鲁门/199****1557(均 assigned);DB fleet_assignment 7 行 2 组(340035264187600896/340023199221813248)与两段一一对应;单段槽位回归(26-1427 订单 3 槽位各 1 条)正常。
|
||||||
|
|
||||||
|
## 关联 / 联系人
|
||||||
|
|
||||||
|
### 联系人
|
||||||
|
|
||||||
|
- **后端负责人**: @wx
|
||||||
正在加载...
x
在新工单中引用
屏蔽一个用户