hl-api-changelog/changelogs-v2/2026-08/09_frontend_车辆接续派车通知多司机分tab与按日改派汇总-前端缺陷-管理后台.md
API Changelog Bot b2ac18ff52
一些检查失败了
changelog-filename-gate / validate (push) Failing after 1s
docs(fleet): 接续通知分tab reopen-口径B需展示全部接续司机tab(含已确认段)
2026-08-09 14:44:48 +08:00

7.6 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 frontend-fleet-continuity-notify-tabs 车辆接续场景:派车通知需按司机分多 tab接入 render-batch+ 按日改派槽位汇总显示接续 admin wx(GIT) 前端缺陷 not_required not_required pending mmg d7f78a17 车辆接续(一槽多天不同车/司机)派车通知需按司机分 tab。mmg 已在 d7f78a17 接入 render-batch 分 tab,但实测只显示【未确认】段改派 8/23 道尔吉时只有道尔吉 tab,已确认的王信 8/24-25 被 slotChangeRows 的『终态段不产生行』过滤掉了)。车务口径 B接续单派车通知要展示【全部接续司机】tab含已确认段,不只未确认段——故 reopen 待补充。 2026-08-09 dev-v3 2026-08-09T11:20:00+08:00

车辆接续场景:派车通知按司机分多 tab + 按日改派槽位汇总显示接续

前端改造,后端能力已具备、无需改后端。待前端接入。

场景(车辆接续)

一个车辆槽位在多天内由不同车辆/司机接续服务。例:订单 26-64368/23~8/25 三天),按天改派后:

  • 8/23蒙A-E2E01 道尔吉
  • 8/24~8/25蒙A-E2E99 王信

即同一槽位 8/23 是道尔吉、8/24-25 是王信——一个槽位对应多个司机/多辆车(接续)

问题 1派车通知只显示单 tab,接续的其他司机没通知预览

现象:待确认页「司机待确认通知」微信消息预览只有一个 tab道尔吉,接续的王信8/24-25没有 tab、看不到也给不了他的派车通知。

期望:派车通知预览按司机分多个 tab,一个 tab 一个司机,每个 tab 显示该司机所负责天数/车辆的派车通知;发送时按选中司机取对应的 renderedBody。

后端已支持——直接用 render-batch 批量渲染接口

POST https://api.test.1814.love:9443/admin/fleet/message-templates/{templateId}/render-batch

接口注释原文:"多槽位/多司机预览按槽位逐项渲染同一模板,返回与请求 items 同序的结果列表;前端预览区按司机分 tab,发送时按选中司机取对应 renderedBody。"

请求体(真实调用,订单 26-6436 orderId=2086270156475936769,模板 id=2073978002412105729「排车待确认-标准」):

{
  "items": [
    {"orderId":"2086270156475936769","vehicleId":"2085284111341023234","driverId":"2065272150012444674","serviceDates":["2026-08-23"]},
    {"orderId":"2086270156475936769","vehicleId":"2085539421276286978","driverId":"2067084362829979650","serviceDates":["2026-08-24","2026-08-25"]}
  ]
}
  • items[] 每项 = 一个司机/接续段的预览入参orderId/vehicleId/driverId/assignmentGroupId/serviceDates 等,同单渲染,1~20 项;1 项时等价单渲染(无 tab
  • vehicleId蒙A-E2E01=2085284111341023234 / 蒙A-E2E99=2085539421276286978;driverId道尔吉=2065272150012444674 / 王信=2067084362829979650。

响应(真实返回,code=200

{"code":200,"message":"成功","data":{"items":[
  {"success":true,"renderedBody":"呼伦旅行—订车单\n...\n道尔吉,您好,请确认以下订车信息\n团号26-6436\n日期2026-08-23 至 2026-08-25\n人数2人成人2\n车辆蒙A-E2E01 丰田普拉多7座\n..."},
  {"success":true,"renderedBody":"呼伦旅行—订车单\n...\n王信,您好,请确认以下订车信息\n团号26-6436\n日期2026-08-23 至 2026-08-25\n人数2人成人2\n车辆蒙A-E2E99 丰田普拉多7座\n...行程详情https://web.test.1814.love:9443/s/tlMa2xQ..."}
]}}
  • items[] 与请求同序,每项独立 success + renderedBody;单项失败不阻断其他项。

⚠️ 实测发现的后端问题(另见后端工单)两个司机渲染的「日期」都是「2026-08-23 至 2026-08-25」订单全程没按各自 serviceDates 分段——道尔吉只负责 8/23serviceDates=[8/23])却显示全程,王信负责 8/24-25 也显示全程。司机会搞不清自己负责哪几天。需后端 render-batch 渲染的日期按 serviceDates 分段。

前端现状src/api/fleet/message-template.js 只封装了单渲染 POST /render,没有 render-batch;待确认页预览仍调单渲染,只渲染第一个司机。

前端要改

  1. message-template.js 增加 renderBatch(templateId, items) 封装POST /fleet/message-templates/{templateId}/render-batch)。
  2. 待确认页派车通知预览:从 board/orders/{orderId}dailyVehiclePlanassignmentId/司机分组得到各接续段(每段的 vehicleId/driverId/serviceDates,调 render-batch 传入多 item;预览区按司机分 tab 展示各 item 的 renderedBody;发送时按选中司机取对应 renderedBody。

问题 2按日改派顶部槽位汇总只显示第一天,未反映接续

现象按日改派表格里每天已正确显示各车各司机8/23 道尔吉、8/24-25 王信),但顶部槽位表格「当前车辆/当前司机」只显示第一天的蒙A-E2E01 道尔吉),看不出这是接续单。

期望:接续槽位的顶部「当前车辆/当前司机」汇总应体现接续(如显示「多车接续」/分段列出各段车与司机,或标注「接续:道尔吉(8/23)+王信(8/24-25)」),让车务一眼看出该槽位是多车多司机接续。

数据源board/orders/{orderId}dailyVehiclePlan(按 serviceDate 各天 vehiclePlate/driverName/assignmentId——前端按 assignmentId 分组即可识别接续并分段展示。

复现路径

派单看板 → 已派车订单(如 26-6436→ 改派 → 下一步 → 按天改派 → 选中 8/23 改派给另一车/司机(形成接续)→ 待确认页看派车通知预览(只有单 tab;排车页看顶部槽位汇总只显示第一天

备注

  • 后端 change 接口的 serviceDates(按天改派限定日期集,其余天保留)已支持拆接续;render-batch 已支持多司机预览。后端两处均无需改
  • 关联改派回显缺陷08_frontend_改派选完车司机槽位列不回显——都是接续/改派场景的前端展示问题,可一并处理。

补充2026-08-09 车务口径 B,reopen 原因)

mmg 已在 d7f78a17 接入 render-batch 分 tab,但实测订单 26-6436,改派 8/23 道尔吉、8/24-25 王信)只显示道尔吉 1 个 tab——因为 slotChangeRowsAssignModal.vue:1306的过滤规则是「终态段不产生行」,已确认的王信 8/24-25 段被过滤,只有未确认的道尔吉段生成 tab。

车务口径 B接续单派车通知要展示【全部接续司机】tab含已确认段,不只未确认段。

  • 期望:改派/接续场景待确认页,派车通知按该槽位【全部接续司机】分 tab如道尔吉 8/23 + 王信 8/24-25 两个 tab,含已确认段;车务可复制任意 tab 话术分别发给对应司机(已确认段是否重发由车务决定,但预览要能看到全部)。
  • 需调整slotChangeRows(或派车通知预览专用的段数据源)不要过滤已确认终态段,把该槽位全部接续执行段都喂给 render-batch 分 tab。
  • 接口:仍用 POST /admin/fleet/message-templates/{templateId}/render-batch,items 传全部接续段(每段 vehicleId/driverId/serviceDates,后端渲染无问题已实证能渲染任意段