43 #4573 配房询房即扣库存+单日确认requirementId+弹窗全态回显currentSelections(前端必改) 44 #4574 日历团数按团期折叠修复+某天下钻详情新端点 45 #4575 待办按订单聚合一行多类型标签+类型字典化(前端必改) 46 #4578 定制师联系房务未读角标unreadMessageCount+站内信标题团号·联系人 47 #4576 转单操作日志显示接收人真名+转单理由(知悉)
40 行
2.8 KiB
Markdown
40 行
2.8 KiB
Markdown
# 房务待办列表:按订单聚合(一单一行、行内多类型标签)+ 类型字典化(前端必改)
|
||
|
||
> 模块:房务管家 · 待处理(管理后台)
|
||
> 类型:返回结构调整(PR #4587 已合 dev-v3 + 测试服实测)
|
||
> 关联工单:#4575
|
||
> 日期:2026-06-28
|
||
|
||
## 背景
|
||
房务反馈「同一订单出现多行(『刚抢单待配房』一行 + 『定制师消息未读』一行)」,要求**一个订单只占一行**,把该订单的多个待办分类标签都显示在这一行。
|
||
|
||
## 返回结构变更(`GET /v3/admin/order/todos`)
|
||
|
||
`list[]` 粒度由「(订单 × 待办类型) 一行」改为 **「一个订单一行」**,每行新增类型标签数组:
|
||
|
||
| 字段 | 类型 | 说明 |
|
||
|------|------|------|
|
||
| `todoTypes` | Array | **本单当前 scope 下全部待办分类标签**(行内渲染多个标签) |
|
||
| `todoTypes[].typeCode` | String | 类型码(SWAP_HOTEL / REFUND / HOTEL_REPLY_TIMEOUT / REQUIREMENT_ADJUSTED / INVENTORY_CHECK_OVERDUE / PENDING_ARRANGE / UNREAD_CHAT …) |
|
||
| `todoTypes[].typeLabel` | String | **类型中文名(取数据字典 `house_todo_type`)**,前端直接展示 |
|
||
| `todoTypes[].urgency` | String | 该标签紧急度 |
|
||
| `todoTypes[].derived` | Boolean | true=派生项(刚抢单待配房/定制师消息未读,无 todoId 不可单独 RESOLVE);false=持久化项 |
|
||
| `todoTypes[].todoId` | Long | 持久化待办 ID(derived=false 时有,供 RESOLVE/查看) |
|
||
| `todoTypes[].unreadCount` | Integer | UNREAD_CHAT 标签的未读数 |
|
||
|
||
- 保留 `orderTodoCount` = `todoTypes.size()`(前端原「本单共 N 个待办」可继续用,或直接用 `todoTypes.length`)。
|
||
- 行级 `urgency` = 该订单内各标签的最高紧急度(排序仍按此 + 时间)。
|
||
- **分页/total 口径改为 distinct 订单数**(不再是待办行数)。前端分页器按此对齐。
|
||
- 「核房超期」(INVENTORY_CHECK_OVERDUE,酒店维度无 orderId) 仍独立成行。
|
||
|
||
## 前端必改
|
||
1. 每行渲染 `todoTypes[]` 多个分类标签(中文 `typeLabel`),不再一订单多行。
|
||
2. 操作入口按 `todoTypes[].derived`/`todoId` 区分:派生标签(刚抢单待配房/消息未读)走对应跳转、不可 RESOLVE;持久化标签带 todoId 可 RESOLVE/查看。
|
||
3. 分页 total 改读新的 distinct 订单口径。
|
||
|
||
## 顺带(前端自查)
|
||
顶部说明文案「共 N 件待办 · 换酒店/核房超期/退订/询房 · 完成订单前置工作后自动解除」是前端硬编码旧文案,且「共 N 件」此前按旧枚举子集求和导致显示 0。请按新流程更新文案,「共 N 件」改为对聚合后 list/stats 全量统计。
|
||
|
||
## 测试服实测
|
||
- 同订单「酒店超时未回复 + 刚抢单待配房」聚合为一行、todoTypes 2 个中文标签、orderTodoCount=2、total=distinct 订单数。
|