hl-api-changelog/changelogs-v2/2026-08/07_5666_矩阵派车司机回填与收费日-前端修复-管理后台.md
Mimingguang 3c2e093ef6
一些检查失败了
changelog-filename-gate / validate (push) Failing after 2s
chore(v2): #5662 implemented + #5666 前端实证无需改动
#5662 改派页清除草稿后补选择车辆/司机入口(hl-admin@c63ce28f)。
#5666 实查 HEAD 两症状已无活代码路径(c6b107b8/d97cc730 早已消除),
矩阵活路径已消费 suggestedDriverId、batch 不传部分收费日,判 not_required。
2026-08-08 09:48:25 +08:00

58 行
4.1 KiB
Markdown

此文件含有模棱两可的 Unicode 字符

此文件含有可能会与其他字符混淆的 Unicode 字符。 如果您是想特意这样的,可以安全地忽略该警告。 使用 Escape 按钮显示他们。

---
schema: "hl-changelog/v2"
ticket: "5666"
title: "矩阵派车:司机未回填 + 部分日期派车价¥0前端两问题"
consumer: "admin"
author: "wx"
change_type: "前端修复"
backend_status: "deployed"
gateway_status: "verified"
frontend_status: "not_required"
frontend_owner: ""
frontend_ref: ""
target_release: ""
verified_at: ""
status_note: ""
updated_at: "2026-08-08"
base: "origin/dev-v3"
generated: "2026-08-07"
---
# 矩阵派车:司机未回填 + 部分日期派车价¥0前端修复
后端契约已实测**全部正常**#5666 后端侧分流确认),两个症状均为前端问题。
## 问题1矩阵派车选车辆后常驻司机没回填
- **现象**矩阵派单从车辆日格如蒙A-T7777发起,车辆回填了,但司机栏"待选择"(常驻司机没带出)。
- **后端正常**`candidates` 对该车正确返回 `suggestedDriverId`(常驻司机)+ `RESIDENT_AVAILABLE`,一二轮一致。
- **前端根因**:前端自动代入常驻司机**仅在 `vehicleSuggestionIntent` 武装时消费**;矩阵 `openAssign(order,{vehicle})` 非 batchMode + activeDailyPlanCell 分支时不武装该 intentAssignModal.vue else 分支直接 `selVehicle=preselectVehicle`),导致 `suggestedDriverId` **无人消费** → 司机栏空。
- **前端修**:矩阵派车场景也要消费 `suggestedDriverId` 回填常驻司机(常驻司机 RESIDENT_AVAILABLE 时自动带出;被拉黑/不可用时提示并留空)。
## 问题2部分日期派车价 ¥0
- **现象**:矩阵派车 8/21=¥1000 但 8/22-23=¥0。
- **后端正常**:该车型日历价 8/15-31 全量 ¥1000已配
- **前端根因**:前端矩阵场景 `chargeableServiceDates` 只传了 [8/21](部分收费日)→ 8/21 收费 1000、8/22-23 按 FREE0
- **前端修**:矩阵派车收费日应传全服务日(或按需求),不要只传部分导致其余日期 FREE=¥0。
## 验收
- [ ] 矩阵派车选车辆后常驻司机自动回填suggestedDriverId 被消费)
- [ ] 派车价各服务日正确不部分¥0
- [ ] 后端契约不变(仅前端修)
## 关联
- 后端工单 #5666(后端契约正常,另做 candidates 空数组口径小加固)
- 接口 `POST /admin/fleet/assignments/candidates`(返回 suggestedDriverId/RESIDENT_AVAILABLE
## 前端核查2026-08-08 mmg 实查,HEAD 已无活代码路径,前端零改动)
逐行核实当前 HEADv2.1),两个症状的根因对应的是旧版单派流程,现已由更早提交消除,**前端无需改动**
**问题1矩阵司机未回填**:矩阵 `openAssign(order,{vehicle})` 活路径走 `AssignModal.vue` `batchMode && activeDailyPlanCell` 分支3109-3125`isInitialVehiclePreselection` 命中时经 `restoreSelection({autoSelectResidentDriver:true})` 武装 intent;`useVehicleDriverPicker.js:726` `if (autoSelectResidentDriver===true && selVehicle && !selDriver)` 消费 `suggestedDriverId`RESIDENT_AVAILABLE 自动带出、不可用/黑名单留空并显 suggestedDriverMessage。changelog 所述「else 分支直接 selVehicle=preselectVehicle」对矩阵场景不可达。既有修复提交 c6b107b8(8/5)/d97cc730(8/6) 早于本 changelog。已有测试锁定useVehicleDriverPicker.spec 消费/NONE/占用/拉黑用例)。另:#5662 修复后矩阵发起的改派在抽屉内选车同样经 onPickVehicle 武装 intent 回填常驻司机。
**问题2部分日期派车价¥0**batch 矩阵流程**不向 candidates 传 chargeableServiceDates**`useVehicleDriverPicker.js:432-438` batchMode 守卫 + init watcher 在 batch 置空该 ref,后端按全部服务日收费预览,不会产生「子集收费、其余 FREE=¥0」。唯一仍携带部分收费日的是旧改派流程 `restoreLegacyVehicleFeeState`(从原派车快照恢复,保留原派车收费决策的既有语义),不在本单「矩阵派车」口径内,擅自改会改变账单。
**结论**:前端在 HEAD 已无这两个症状的活代码路径,判 not_required。若仍复现,请提供 HEAD 上的操作序列再排查。
## 联系人
- 后端/协调台wx