4.0 KiB
4.0 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-batch3slot | 多槽位(3 槽)派单提交 batchCreate 请求体缺顶层必填字段且丢槽,派单未创建 | admin | wx(GIT) | 前端缺陷 | not_required | not_required | pending | mmg | 前端缺陷:3 槽位派单排车页点「下一步·发送给司机」,POST /admin/fleet/assignments/batch 请求体仅 {items:[2 个]}——缺 orderId/requirementId/startDate/endDate/holdMode/requestId 顶层必填字段,且 3 槽只发出 2 个 items(丢 1 槽)。后端返回 200 但未创建派单(看板 3 槽仍待派车)。2 槽位(26-6040)请求体完整、派单成功。后端无问题,待前端修复 3 槽位 batchCreate 请求体构造。 | 2026-08-08 | dev-v3 | 2026-08-08T22:10:00+08:00 |
多槽位(3 槽)派单提交 batchCreate 请求体缺顶层必填字段且丢槽,派单未创建
前端缺陷,待前端修复。后端接口与逻辑无问题。
关联 / 联系人
联系人
- 前端负责人: @mmg
- 后端负责人: @wx(已确认后端无问题)
现象(TEST 实测,2026-08-08)
订单 26-4254(id=2086056645539885057,跨月 8/30-9/1,18 人,用车需求 SUV×1 + 商务车×1 + 大巴×1 共 3 槽位):
- 排车页 3 个槽位逐日全部应用完成(页面显示「已完成 3/3 个最终方案槽位」,槽1 蒙A-E2E01 道尔吉 / 槽2 蒙A-E5555 阿木古愣 / 槽3 蒙C08E08 宝音德力格尔,各 3 天已确认)。
- 勾上 8/30 接机「参与」(消除「至少一辆用车必须参与接机」警告)后,点底部「下一步 · 发送给司机(3 辆)」。
- 抓包:
POST /admin/fleet/assignments/batch请求体为——
{
"items": [
{"orderId":"2086056645539885057","vehicleId":"2085284111341023234","driverId":"2065272150012444674","assignmentGroupId":"2086057368872779778","serviceDates":["2026-08-30","2026-08-31","2026-09-01"]},
{"orderId":"2086056645539885057","vehicleId":"2064998142394183681","driverId":"2065272145633591298","assignmentGroupId":"2086057368876974082","serviceDates":["2026-08-30","2026-08-31","2026-09-01"]}
]
}
两个错误:
- 顶层缺必填字段:无
orderId/requirementId/startDate/endDate/holdMode/requestId(这些字段只在每个 item 里出现了 orderId/assignmentGroupId,顶层全缺)。 - 丢槽:3 个槽位只发出 2 个 items(丢了 1 个槽)。
- 结果:后端返回 200,但看板 3 槽位仍全部「待派车」(activeAssignments=0),派单未创建。
对比(正常)
订单 26-6040(2 槽位)同样操作:batchCreate 请求体含完整顶层字段(orderId/requirementId/startDate/endDate/holdMode/requestId)+ 2 个 items,返回 200 且派单正常创建(holding)。
期望
3 槽位(多槽位)派单提交时,batchCreate 请求体应:
- 顶层携带完整必填字段:
orderId/requirementId/startDate/endDate/holdMode/requestId; items包含全部槽位(3 槽发 3 个 item),不丢槽;- 每个 item 的
fleetItemIndex/vehicleId/driverId/serviceDates与各槽位选择一致。
复现路径
派单看板 → 26-4254 → 派车派人 → 下一步 → 3 个槽位分别「统一选择车辆/司机」选好车+司机应用到槽位(3/3)→ 勾 8/30 接机「参与」→ 点「下一步 · 发送给司机(3 辆)」→ 抓 batchCreate 请求体。
备注
- 单槽位派单(AssignModal 单体 createAssignment,走
useAssignFlow.handleSubmit,payload 含完整字段)正常;问题在多槽位排车页的批量提交路径。 - 后端 batchCreate 接口对缺顶层字段的请求返回 200 而非 400 参数校验,建议后端顺带评估是否应 fail-fast(另案,不阻塞本前端修复)。