fix: 通知前端修正车务矩阵图例与直接派单
这个提交包含在:
父节点
642bed1e69
当前提交
a93d1f7fe6
@ -0,0 +1,89 @@
|
|||||||
|
# 【前端待处理·管理后台】#4933 车务矩阵图例与空闲格直接派单
|
||||||
|
|
||||||
|
## 目标前端
|
||||||
|
|
||||||
|
- 端类型:管理后台(Web)
|
||||||
|
- 目标仓库:`mmg/hl-ui`
|
||||||
|
- 仓库地址:<https://git.1814.love:8443/mmg/hl-ui.git>
|
||||||
|
- 联调/验收环境:<http://192.168.100.160:9527>
|
||||||
|
- 小程序:无需处理,本问题仅涉及管理后台车务矩阵页面
|
||||||
|
- H5:无需处理,本问题仅涉及管理后台车务矩阵页面
|
||||||
|
|
||||||
|
## 问题与结论
|
||||||
|
|
||||||
|
2026-07-21 在车务管理员角色访问 `/fleet/matrix` 时确认两处前端缺陷:
|
||||||
|
|
||||||
|
1. 页面图例仍显示“绿 海拉尔接/送机、橙 外地接/送机”,把地域误当成衔接状态;这与 #4933 已确认的后端语义不一致。
|
||||||
|
2. 点击车辆空闲格只弹出“请先从未派订单池拖拽或在订单详情发起派单”,阻断了矩阵页直接派单。矩阵页已有 `AssignModal` 和车辆预选能力,应直接进入本页派单流程。
|
||||||
|
|
||||||
|
本次不需要后端改接口。前端必须消费后端下发的衔接状态和样式,不能按“海拉尔/外地”自行推导。
|
||||||
|
|
||||||
|
## 图例适配要求
|
||||||
|
|
||||||
|
图例按 `connections[].status/style` 固定展示以下四种业务语义:
|
||||||
|
|
||||||
|
| `status` | `style` | 图例文案 | 展示要求 |
|
||||||
|
| --- | --- | --- | --- |
|
||||||
|
| `SAME_CITY_OK` | `GREEN` | 同城衔接正常 | 绿色实线/标记 |
|
||||||
|
| `DIFFERENT_CITY` | `DARK_RED` | 不同城 | 深红色实线/强提醒 |
|
||||||
|
| `SAME_CITY_TOO_SHORT` | `LIGHT_RED` | 同城间隔不足 | 淡红色实线/提醒 |
|
||||||
|
| `MISSING_TIME` | `RED_DASHED` | 缺少接送信息 | 红色虚线 |
|
||||||
|
|
||||||
|
- 删除“海拉尔接/送机”“外地接/送机”两项旧图例。
|
||||||
|
- 图例颜色、矩阵连线/标记和悬浮详情必须使用同一份状态映射。
|
||||||
|
- 悬浮详情优先展示后端 `label`、`reasonText`、`intervalMinutes`、`minIntervalMinutes`;不得覆盖后端文案或重新计算状态。
|
||||||
|
|
||||||
|
## 空闲格直接派单要求
|
||||||
|
|
||||||
|
用户点击车辆某日的空闲格后,应在当前矩阵页面完成派单:
|
||||||
|
|
||||||
|
1. 打开未派订单选择层(或复用现有选择组件),只列出当前筛选范围内可派订单。
|
||||||
|
2. 选中订单后打开现有 `AssignModal`。
|
||||||
|
3. 自动预选被点击车辆,并将点击日期带入派单日期上下文;仍允许用户在弹窗内调整司机、车辆和合法日期范围。
|
||||||
|
4. 按现有候选、预校验和创建派单接口完成校验与提交,不能绕过冲突、容量、常驻错配确认等后端门禁。
|
||||||
|
5. 成功后关闭弹窗并刷新矩阵、统计和未派订单数量;失败时保留用户已填内容并展示后端错误。
|
||||||
|
6. 当确实没有可派订单时才显示空态“暂无可派订单”,不得再提示用户去订单详情发起派单。
|
||||||
|
|
||||||
|
建议直接修正当前 `@idle-click="onIdleClick"` 分支:现实现只调用 `message.info`,但同页已经挂载 `AssignModal`、`activeOrder`、`preselectVehicle` 和 `assignMode`,应复用现有派单链路。
|
||||||
|
|
||||||
|
## 接口证据
|
||||||
|
|
||||||
|
矩阵响应已提供后端判定结果,核心字段位于车辆相邻订单衔接集合 `connections`:
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"status": "SAME_CITY_OK",
|
||||||
|
"label": "同城衔接正常",
|
||||||
|
"style": "GREEN",
|
||||||
|
"reasonCode": "SAME_CITY_INTERVAL_SUFFICIENT",
|
||||||
|
"reasonText": "同城前后订单衔接间隔满足配置阈值",
|
||||||
|
"intervalMinutes": 180,
|
||||||
|
"minIntervalMinutes": 120
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
后端允许值:
|
||||||
|
|
||||||
|
- `status`:`MISSING_TIME`、`DIFFERENT_CITY`、`SAME_CITY_TOO_SHORT`、`SAME_CITY_OK`
|
||||||
|
- `style`:`RED_DASHED`、`DARK_RED`、`LIGHT_RED`、`GREEN`
|
||||||
|
|
||||||
|
派单继续复用现有车务候选、预校验和创建派单接口,不新增接口。
|
||||||
|
|
||||||
|
## 验收清单
|
||||||
|
|
||||||
|
- [ ] `/fleet/matrix` 图例只展示四种后端衔接语义,不再出现地域型图例。
|
||||||
|
- [ ] 构造四种 `status/style` 数据,图例、矩阵标记和悬浮说明三者一致。
|
||||||
|
- [ ] 点击任意车辆空闲格可在当前页面选择未派订单并打开派单弹窗。
|
||||||
|
- [ ] 派单弹窗自动预选点击车辆及日期上下文。
|
||||||
|
- [ ] 正常派单成功后矩阵、统计与未派数刷新。
|
||||||
|
- [ ] 冲突或校验失败时展示后端错误且不产生半成品派单。
|
||||||
|
- [ ] 无可派订单时展示空态,不再引导去订单详情。
|
||||||
|
- [ ] 在 <http://192.168.100.160:9527> 以车务管理员角色完成页面、Network/API 响应和截图验收。
|
||||||
|
|
||||||
|
## 现场证据
|
||||||
|
|
||||||
|
- 页面:`/fleet/matrix`
|
||||||
|
- 角色:车务管理员
|
||||||
|
- 现象:错误地域图例;点击车辆空闲格连续出现阻断性提示
|
||||||
|
- 现场截图:由 #4933 验收反馈于 2026-07-21 提供
|
||||||
|
- 当前调试 Chrome 登录态已失效,自动复核跳转登录页;修复后需在上述固定验收环境重新登录并完成验收清单。
|
||||||
正在加载...
x
在新工单中引用
屏蔽一个用户