1.9 KiB
1.9 KiB
房务先抢单、定制师后开聊天「会话不通」已修(前端知悉,无需改动)
模块:站内信聊天(房务订单会话)/ 管理后台 类型:后端 bug 修复(PR #4492 已合 dev-v3 + 测试服实测生效)—— 前端无需改动,透明修复 日期:2026-06-28
背景 / 修了什么
房务订单会话此前有个反序断链(最常见的生产顺序中招):
- 序A(原本 OK):定制师先开聊天(抢单前)→ 房务后抢单 → 抢单时补齐会话 → 聊天正常。
- 序B(原本断、最常见):房务先抢单 → 定制师后点「联系房务」开聊天 → 因为定制师不知道房务是谁、不传对端,后端只挂了个占位对端(peer=0)→ 定制师发的消息房务永远收不到、房务读消息被拒(281002)、④未读消息待办永不触发。
现已修复:定制师开房务会话时,后端自动按订单反查当前接单房务作为真实对端,建出双方真实会话成员行。无论「定制师先开」还是「房务先抢」,聊天都正常连通。
测试服实测(序B):房务先抢单 → 定制师 open-house(不传对端)→ 后端解析到房务 → 双方成员行建出 → 定制师发消息 → 房务 unread_count=1 → 房务读消息 200(不再 281002)→ ④未读消息待办触发。
前端
无需改动。POST /admin/chat/open-house 入参/出参结构不变;前端传不传对端 peerAdminId 都可(不传/传占位时由后端反查解析)。原本在「房务先抢单」顺序下聊不通的问题现已透明修复。
影响接口
POST /admin/chat/open-house(行为增强:peer 缺省/占位时后端反查当前房务 claimer,出参peerAdminId/peerName/peerRole现会带真实房务)- 跨服务:order-v3
chat-summary-batch内部接口响应补claimerId(前端不感知)