hl-api-changelog/changelogs-v2/2026-07/18_订单详情联系定制师聊天红点未实时刷新-前端待处理-管理后台.md

2.5 KiB

订单详情联系定制师聊天未读红点未实时刷新(前端待处理)

  • 日期2026-07-03
  • 端:管理后台
  • 页面:订单详情 / 房务详情弹窗中的「联系定制师」入口
  • 示例订单:HL20260703140009401
  • 订单 ID2072923329412427777
  • 当前结论:后端聊天消息已正常写入并可展示,问题在前端实时状态刷新。

现象

在订单详情页打开右侧聊天抽屉后,聊天消息可以正常收发;但关闭/停留在订单详情页时,「联系定制师」按钮旁的未读红点不会实时出现。

刷新页面后,未读红点/未读状态才会显示。

截图复现口径:

  • 订单:HL20260703140009401
  • 客户:wx定制师配房测试01
  • 右侧聊天抽屉内消息已出现并显示时间。
  • 订单详情弹窗里的「联系定制师」按钮没有实时红点。
  • 手动刷新页面后才有红点。

期望前端处理

前端需要在聊天消息状态变化后,实时同步刷新订单详情上的「联系定制师」入口状态:

  1. 收到新的定制师/客服聊天消息后,不依赖页面刷新,立即更新「联系定制师」按钮未读红点。
  2. 打开聊天并读完消息后,不依赖页面刷新,立即移除未读红点。
  3. 如果当前页面有订单详情弹窗、房务详情弹窗、右侧聊天抽屉等多处状态展示,需要共用同一份未读状态或在消息事件后主动刷新详情状态。

后端接口说明

本次无后端接口变更。

后端聊天消息链路已可用,前端应复用现有消息/未读状态来源:

  • 右侧聊天抽屉消息列表已能实时展示新消息。
  • 页面刷新后红点可出现,说明后端持久化和查询数据存在。
  • 当前缺口是前端在消息事件发生后,没有把未读状态同步到订单详情按钮。

建议实现

前端可任选其一:

  1. 在聊天 WebSocket/SSE/轮询消息事件回调里,按 orderId 更新订单详情本地状态中的未读标识。
  2. 关闭聊天抽屉或收到消息后,重新拉取订单详情/未读状态接口。
  3. 将聊天抽屉和订单详情按钮的未读状态收敛到同一个 store,避免抽屉消息已更新但按钮红点不更新。

验收标准

  • 在订单详情页停留不刷新页面时,新聊天消息到达后,「联系定制师」按钮立即出现红点。
  • 打开聊天读完消息后,「联系定制师」按钮红点立即消失。
  • 刷新页面前后红点状态一致。
  • 不影响「联系房务」等其他聊天入口状态。