docs(changelog-v2): 站内信会话 spec 跳转改按peerRole反推 + §6后端增强(订单简介条产品名/人数+requirementId)
这个提交包含在:
父节点
c9be57e4b2
当前提交
0277561bc3
@ -65,16 +65,26 @@ Authorization: Bearer {adminToken}
|
||||
- 时间:`lastMessageAt`
|
||||
- 点击行 → 打开该会话线程(用 `conversationKey` 调线程接口 `GET /admin/message/chat/messages`,已有)
|
||||
|
||||
### 3.3 跳转按钮(按**当前登录员工角色**定目标页 —— wx 已确认)
|
||||
每行加一个「跳转到业务页」按钮,目标页 = **当前登录员工自己的角色**(前端已知当前用户角色,**直接用,不用 peerRole 反推**):
|
||||
### 3.3 跳转按钮(按**你在该会话里的身份**定目标页 —— wx 2026-06-25 修正)
|
||||
|
||||
| 当前员工 | 会话 bizModule | 跳转目标 | 路由(按截图,前端核对实际路由) |
|
||||
|---------|---------------|---------|------|
|
||||
| 房务 | HOUSE | **配房页**(房务管家配房) | `/housekeeper/orders`(带 `bizId` 定位/打开该订单配房详情,见截图 Image #4) |
|
||||
| 车务 | FLEET | **配车页**(车务管家派车) | 车务配车页(带 `bizId`,路由前端定) |
|
||||
| 定制师 | HOUSE/FLEET | **需求页**(定制师订单详情) | `/order-v2/detail/{bizId}`(行程安排→提交房型需求,见截图 Image #5) |
|
||||
> ⚠️ 修正:**不能按登录账号的全局角色**(如「超级管理员」同时是房务也是定制师,没法定向)。要按 **你在这条会话里是哪一方** = `peerRole` 反推(对方是谁、你就是另一方)。
|
||||
|
||||
> 跳转只需 `bizId`(订单ID)+ 当前员工角色 + `bizModule`,这些前端都拿得到。后端不提供跳转 URL(避免后端耦合前端路由)。
|
||||
| 对方角色 `peerRole` | 你在会话里的身份 | 跳转目标 | 路由(按截图,前端核对实际路由) |
|
||||
|---------|---------|---------|------|
|
||||
| `HOUSE`(对方是房务) | 你是**定制师** | **订单详情/需求页** | `/order-v2/detail/{bizId}`(见 Image #5) |
|
||||
| `FLEET`(对方是车务) | 你是**定制师** | **订单详情/需求页** | `/order-v2/detail/{bizId}` |
|
||||
| `CUSTOMIZER`(对方是定制师)+ `bizModule=HOUSE` | 你是**房务** | **配房页** | `/housekeeper/orders`(带 `bizId`+`requirementId` 自动开配房详情,见 Image #4) |
|
||||
| `CUSTOMIZER`(对方是定制师)+ `bizModule=FLEET` | 你是**车务** | **配车页** | 车务配车页(带 `bizId`,路由前端定,best-effort) |
|
||||
|
||||
判定逻辑(伪码):
|
||||
```
|
||||
if peerRole == 'CUSTOMIZER': // 对方是定制师 → 我是业务方
|
||||
bizModule == 'HOUSE' ? 配房页 : 配车页
|
||||
else: // 对方是房务/车务 → 我是定制师
|
||||
订单详情 /order-v2/detail/{bizId}
|
||||
```
|
||||
|
||||
> 跳转只需 `bizId`+`peerRole`+`bizModule`(+ 房务侧 `requirementId` 自动开详情),均在会话列表 VO 里。后端不提供跳转 URL(避免耦合前端路由)。`requirementId` 见 §6 后端增强。
|
||||
|
||||
---
|
||||
|
||||
@ -91,6 +101,24 @@ Authorization: Bearer {adminToken}
|
||||
|
||||
## 5 注意
|
||||
|
||||
1. `orderNo`/订单维度字段是软依赖 order-v3,测试环境用无真实订单的 bizId(如 88888)时为 null,属正常;真实订单会有团号。
|
||||
1. `orderNo`/订单维度字段是软依赖 order-v3,测试环境用无真实订单的 bizId(如 88888)/订单已被删时为 null,属正常;真实存在的订单会有团号(实证:库凡巧 HL20260625134754752 团号/客户名都正常)。
|
||||
2. 跳转目标页路由以前端实际为准(本文路由摘自截图 Image #4 `/housekeeper/orders`、Image #5 `/order-v2/detail/{id}`)。
|
||||
3. 有疑问找后端(王骁/wx)对字段。
|
||||
|
||||
---
|
||||
|
||||
## 6 后端增强(会话列表 VO 新增字段,订单简介条 + 房务跳转,2026-06-25)
|
||||
|
||||
> 需求:① 从站内信会话列表打开对话时,对话顶部「订单简介条」(关于 **产品名** · 客户·人数 · 团号)也要有(此前仅从订单页进才有,见 Image #8);② 房务跳转要能自动打开配房详情(需 `requirementId`)。
|
||||
> 后端在 `/admin/message/chat/conversations`(及 internal `by-biz`)的会话 VO 上新增 4 个字段,均由现成 order-v3 enrich 补齐(order_main 已有产品名/人数,hotel_requirement 已有 requirementId),软依赖降级为 null。
|
||||
|
||||
| 新增字段 | 类型 | 来源 | 用途 |
|
||||
|---------|------|------|------|
|
||||
| `productName` | String | order_main | 订单简介条「产品名」(如 游牧的森林-短途版);仅 HOUSE 会话有 |
|
||||
| `adultCount` | Integer | order_main | 简介条人数「N 大」 |
|
||||
| `childCount` | Integer | order_main | 简介条人数「N 小」(前端按需拼「2大1小」) |
|
||||
| `requirementId` | Long | hotel_requirement | 房务跳转配房页时定位/自动打开该订单配房详情(无房务需求时 null) |
|
||||
|
||||
- 订单简介条 = `productName` + `customerName`(已有)+ `adultCount`/`childCount` + `orderNo`(已有,团号)。打开会话时前端用会话行这几个字段渲染顶部简介条,无需再查订单页。
|
||||
- 房务跳转:`/housekeeper/orders?orderId={bizId}&requirementId={requirementId}` 前端据此自动开配房详情(之前只 orderId 落到列表页)。
|
||||
- 上线后本节标「已上线」,PR 号补此处。
|
||||
|
||||
正在加载...
x
在新工单中引用
屏蔽一个用户