From 1ae79fe77a8e613e1b2e490f67b0939a972e7d66 Mon Sep 17 00:00:00 2001 From: wh_zcy Date: Fri, 9 Sep 2022 15:31:43 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A5=BD=E5=8F=8B=E5=8F=8C=E5=90=91=E5=88=A0?= =?UTF-8?q?=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/friend/api_del.go | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/modules/friend/api_del.go b/modules/friend/api_del.go index 2a6da6285..f1bcbad0e 100644 --- a/modules/friend/api_del.go +++ b/modules/friend/api_del.go @@ -28,10 +28,28 @@ func (this *apiComp) Del(session comm.IUserSession, req *pb.FriendDelReq) (code return } - friendIds := utils.DeleteString(self.FriendIds, req.FriendId) + // 从好友列表中删除 + selfFriendIds := utils.DeleteString(self.FriendIds, req.FriendId) if err := this.moduleFriend.modelFriend.Change(self.Uid, map[string]interface{}{ - "friendIds": friendIds, + "friendIds": selfFriendIds, + }); err != nil { + log.Errorf("Del friend err:%v", err) + code = pb.ErrorCode_FriendApplyError + return + } + + target := this.moduleFriend.modelFriend.GetFriend(req.FriendId) + if target == nil { + code = pb.ErrorCode_FriendNotSelf + return + } + + // 将自己从对方好友列表中移除 + targetFriendIds := utils.DeleteString(target.FriendIds, session.GetUserId()) + + if err := this.moduleFriend.modelFriend.Change(req.FriendId, map[string]interface{}{ + "friendIds": targetFriendIds, }); err != nil { log.Errorf("Del friend err:%v", err) code = pb.ErrorCode_FriendApplyError