diff --git a/changelogs-v2/2026-08/06_5592_需求变更后一键按新需求重派(删除旧派车后自动推荐车辆+司机)-新增接口-管理后台.md b/changelogs-v2/2026-08/06_5592_需求变更后一键按新需求重派(删除旧派车后自动推荐车辆+司机)-新增接口-管理后台.md new file mode 100644 index 0000000..211cd8c --- /dev/null +++ b/changelogs-v2/2026-08/06_5592_需求变更后一键按新需求重派(删除旧派车后自动推荐车辆+司机)-新增接口-管理后台.md @@ -0,0 +1,67 @@ +--- +schema: "hl-changelog/v2" +ticket: "5592" +title: "需求变更后一键按新需求重派(删除旧派车后自动推荐车辆+司机)" +consumer: "admin" +author: "wx(GIT)" +change_type: "新增接口" +backend_status: "deployed" +gateway_status: "verified" +frontend_status: "pending" +frontend_owner: "" +frontend_ref: "" +target_release: "" +verified_at: "" +status_note: "后端完成:PR #5597 已合并 dev-v3(99baa37a8)并部署 TEST;网关验证 3/3(推荐车/司机+备选、只读确认无写操作、605012)。wx 口径:系统只做推荐填充,所有写操作车务手动点击(确认走既有派车接口)。前端需在派车弹窗接入一键重派入口(新接口仅返回推荐数据)。" +updated_at: "2026-08-06" +base: "dev-v3" +generated: "2026-08-06T14:48:09+08:00" +--- + +# 需求变更后一键按新需求重派(删除旧派车后自动推荐车辆+司机) + +> 后端完成:PR #5597 已合并 dev-v3 并部署 TEST,网关验证 3/3 通过。 + +## 关联 / 联系人 + +### 链接 + +- **Issue**: [#5592](https://git.1814.love:8443/wx/HL/issues/5592) +- **PR**: [#5597](https://git.1814.love:8443/wx/HL/pulls/5597) +- **Merge commit**: [99baa37a8](https://git.1814.love:8443/wx/HL/commit/99baa37a8) + +### 联系人 + +- **后端负责人**: @wx + +## 背景与口径(wx 2026-08-06 工单评论明确) + +定制师改需求后车务手动删旧配置太麻烦 → 要"一键按新需求重派"。**关键约束**:系统不得自动取消/改派/重派任何派车——所有写操作必须车务手动点击;系统只做推荐/填充。**不是**自动标记待调整方案。 + +## 变更接口 + +| 方法 | 路径 | 来源 | +|---|---|---| +| `POST` | `/admin/fleet/assignments/slots/{slotId}/auto-recommend` | `AssignmentController`(fleet) | + +**只读接口,不产生任何写操作**:按槽位车型/座位/日期/人数复用既有候选查询,推荐可用·车型匹配·座位充足的车辆 + 可用司机(常驻匹配优先)。 + +**请求**:无 Body(仅 PathVar slotId,空缺待派槽位)。 +**响应**(`SlotAutoRecommendRespVO`): +- `recommendedVehicle`:推荐车辆(vehicleId/plate/modelName/seats/passengerCapacity/vehicleTypeName/fleetTeamName/residentMatch) +- `recommendedDriver`:推荐司机(driverId/name/maskedPhone/years/rating/driverStatus/residentMatch) +- `vehicleAlternatives` / `driverAlternatives`:备选列表(各前 5) +- `recommendNote`:推荐说明;`noRecommendation`:无可用推荐时 true +- **错误码**:605012 槽位不存在 + +## 前端/调用方动作 + +1. 派车页(需求变更后):车务删除旧派车(既有 `DELETE /slots/{slotId}`)后,空缺槽位展示【一键重派】入口 +2. 点击调用 `auto-recommend` → 展示推荐车辆+司机与备选(可切换) +3. 车务确认后走**既有派车接口**(candidates + create/assign 流程)提交——**系统绝不自动写**,确认必须车务手动点击 + +## 验证证据 + +- 定向测试:AssignmentServiceTest +3(推荐 top 匹配车/司机与备选;无可用候选返回 noRecommendation;槽位不存在 605012;**只读断言**:insert/update 均未调用);回归 421 用例全绿 +- 网关验证(TEST):HL20260806115413191(mpv 7 座 6 人,unassigned 槽 343603476254822400)→ 推荐 蒙A-G8888 别克GL8 7 座 + 司机 巴雅尔(8 年)+ 备选 5+5 + note"车型匹配·座位充足·档期可用";**DB 复核槽位仍 unassigned(无写操作)**;不存在槽位 → 605012 +- 兼容性结论:新增只读接口,无既有行为变更;verify 3170 用例全绿