diff --git a/changelogs-v2/2026-08/07_5667_矩阵未派订单清单补requirementId关联-修改接口-管理后台.md b/changelogs-v2/2026-08/07_5667_矩阵未派订单清单补requirementId关联-修改接口-管理后台.md new file mode 100644 index 0000000..f328e67 --- /dev/null +++ b/changelogs-v2/2026-08/07_5667_矩阵未派订单清单补requirementId关联-修改接口-管理后台.md @@ -0,0 +1,55 @@ +--- +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 并随批量派单提交;后端补齐字段后原链路自然恢复,无新增消费逻辑。