Commit 6e1a8dc343b7ef345acd3eb28914240248c24002

Authored by YunaiV
1 parent 9d11741a

✨ feat(im):删好友「同时清空聊天记录」选项(DTO 加 persistent 单边 TIP + clear 跨端透传 + clear=true 跳 T…

…IP 避免复活会话;silent re-add 补单边 TIP)
yudao-module-im/src/main/java/cn/iocoder/yudao/module/im/service/friend/ImFriendServiceImpl.java
... ... @@ -178,9 +178,11 @@ public class ImFriendServiceImpl implements ImFriendService {
178 178 // 1. 单边软删:仅 userId 视角的关系置 DISABLE;friendUserId 视角不动
179 179 deleteFriend0(userId, friendUserId);
180 180  
181   - // 2. 推 TIP「你已删除好友」走单边语义(persistent=false):
182   - // 不入库 + 仅推 userId 多端,对方完全不感知;clear=true 时前端会清对话连带这条 TIP 一起清
183   - privateMessageService.sendTipPrivateMessage(userId, friendUserId, FRIEND_DELETE_TIP_MESSAGE, false);
  181 + // 2. 仅 clear=false 时推 TIP「你已删除好友」(单边 persistent=false);
  182 + // clear=true / null 时跳过 —— 避免 TIP 晚于 FRIEND_DELETE 到达把刚清的会话复活
  183 + if (Boolean.FALSE.equals(clear)) {
  184 + privateMessageService.sendTipPrivateMessage(userId, friendUserId, FRIEND_DELETE_TIP_MESSAGE, false);
  185 + }
184 186  
185 187 // 3. 推 FRIEND_DELETE 给 userId 多端做同步(friendUserId 不感知);clear 透传让多端清理动作一致
186 188 FriendDeleteNotification payload = ((FriendDeleteNotification) new FriendDeleteNotification()
... ...