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

4.1 KiB

schema, ticket, title, consumer, author, change_type, backend_status, gateway_status, frontend_status, frontend_owner, frontend_ref, target_release, verified_at, status_note, updated_at, base, generated
schema ticket title consumer author change_type backend_status gateway_status frontend_status frontend_owner frontend_ref target_release verified_at status_note updated_at base generated
hl-changelog/v2 5666 矩阵派车:司机未回填 + 部分日期派车价¥0前端两问题 admin wx 前端修复 deployed verified not_required 2026-08-08 origin/dev-v3 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-3125isInitialVehiclePreselection 命中时经 restoreSelection({autoSelectResidentDriver:true}) 武装 intent;useVehicleDriverPicker.js:726 if (autoSelectResidentDriver===true && selVehicle && !selDriver) 消费 suggestedDriverIdRESIDENT_AVAILABLE 自动带出、不可用/黑名单留空并显 suggestedDriverMessage。changelog 所述「else 分支直接 selVehicle=preselectVehicle」对矩阵场景不可达。既有修复提交 c6b107b8(8/5)/d97cc730(8/6) 早于本 changelog。已有测试锁定useVehicleDriverPicker.spec 消费/NONE/占用/拉黑用例)。另:#5662 修复后矩阵发起的改派在抽屉内选车同样经 onPickVehicle 武装 intent 回填常驻司机。

问题2部分日期派车价¥0batch 矩阵流程不向 candidates 传 chargeableServiceDatesuseVehicleDriverPicker.js:432-438 batchMode 守卫 + init watcher 在 batch 置空该 ref,后端按全部服务日收费预览,不会产生「子集收费、其余 FREE=¥0」。唯一仍携带部分收费日的是旧改派流程 restoreLegacyVehicleFeeState(从原派车快照恢复,保留原派车收费决策的既有语义),不在本单「矩阵派车」口径内,擅自改会改变账单。

结论:前端在 HEAD 已无这两个症状的活代码路径,判 not_required。若仍复现,请提供 HEAD 上的操作序列再排查。

联系人

  • 后端/协调台wx