---
schema: "hl-changelog/v2"
ticket: "5667"
title: "矩阵派车未派订单清单补 requirementId 关联（修复批量派单缺需求 ID 拦截）"
consumer: "admin"
change_type: "修改接口"
author: "wx(GIT)"
backend_status: "deployed"
gateway_status: "verified"
frontend_status: "not_required"
frontend_owner: ""
frontend_ref: ""
target_release: ""
verified_at: ""
status_note: "后端完成：PR #5671 已合并 dev-v3 并部署 TEST（21:03 滚动 DONE）。网关验证 5 项全 PASS：矩阵 unassigned-orders 响应补返 requirementId，订单 26-6179 池/看板详情/order 库三方一致，用池内 requirementId 端到端提交批量派单 200 成功。前端无需配合（选择器本就读取该字段，此前响应缺失导致拿不到）。"
updated_at: "2026-08-07"
base: "dev-v3"
generated: "2026-08-07T21:10:00+08:00"
---

# 矩阵派车未派订单清单补 requirementId 关联（修复批量派单缺需求 ID 拦截）

> **服务**: hl-fleet-service
> **PR**: [#5671](https://git.1814.love:8443/wx/HL/pulls/5671)
> **Issue**: [#5667](https://git.1814.love:8443/wx/HL/issues/5667)
> **日期**: 2026-08-07
> **影响**: 🟢 **缺陷修复**，响应**新增字段**（additive，无破坏性变更）。前端无需改代码。

## 背景

#5667（P1）wx 实测：矩阵派单（订单 26-6179 林晓芸 8/21-8/23），从矩阵车辆蒙A-T7777日格发起→选好司机（乌云毕力格）→提交批量派单时报「缺少当前用车需求 ID，无法提交批量派单」，卡住无法派单。

**根因**：矩阵未派订单清单接口（`GET /admin/fleet/matrix/unassigned-orders`）响应未携带 requirementId；前端日格选择器把缺失字段归一成空串，与订单详情合并时空值覆盖了详情返回的有效 requirementId，批量派单提交前的前端校验拿不到需求 ID 被拦。

## 修复内容

- `GET /admin/fleet/matrix/unassigned-orders` 响应每行**新增 `requirementId` 字段**（字符串序列化）：
  - 口径与看板一致——优先订单侧当前生效用车需求 ID，订单上下文缺失时兜底派单行快照 requirement_id；
  - 矩阵日格/未派池发起的批量派单可正确携带当前需求 ID 提交（`POST /admin/fleet/assignments/batch` 本就把 requirementId 作必填，无需改动）。

## 变更接口

| 方法 | 路径 | 变更 |
|---|---|---|
| GET | /admin/fleet/matrix/unassigned-orders | 响应每行新增 requirementId（当前生效用车需求 ID） |

## 验证证据

- 全量 `mvn -pl hl-fleet-service -am verify`：3262 Tests 业务断言全绿；MatrixServiceTest 65/65（+2 回归：无上下文时兜底派单行快照 requirementId、订单上下文当前需求优先）；MatrixControllerTest 4/4；FleetRedLineArchTest 12/12；spotless 通过。ReleaseEMixedBinaryHarnessTest（进程 harness 时序）与 ReconciliationInsuranceCostFenceMysqlTest（Testcontainers 3306 端口被并行会话占用）全量内环境性失败，单独重跑 23/23、2/2 全绿，与本改动无关。
- 部署 TEST：21:03 滚动 DONE。
- 网关真实复现（订单 26-6179，蒙A-T7777 + 乌云毕力格，8/21-8/23）5 项全 PASS：未派池行携带 requirementId=2085662146464530434（修复前无此字段）；全池无缺失；池/看板详情/order 库三方一致；用池内 requirementId 提交批量派单（dailyPlan 逐日、跨常驻确认）200 成功；DB 终态全程单行 holding 覆盖 8/21-23 且 requirement_id 关联正确。

## 前端配合

无需配合。矩阵日格发起与未派池拖拽发起的选择器本就读取行 requirementId 并随批量派单提交；后端补齐字段后原链路自然恢复，无新增消费逻辑。
