From 9e2319c8fd8dff0fa6e2b7ab7c01c9444dec470d Mon Sep 17 00:00:00 2001 From: away <1819625428@qq.com> Date: Thu, 27 May 2021 19:19:15 +0800 Subject: [PATCH] Check the friend relationship before agreeing to add a friend --- src/rpc/friend/friend/add_friend_response.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/rpc/friend/friend/add_friend_response.go b/src/rpc/friend/friend/add_friend_response.go index b7c1638e7..ab5fa65cd 100644 --- a/src/rpc/friend/friend/add_friend_response.go +++ b/src/rpc/friend/friend/add_friend_response.go @@ -28,7 +28,12 @@ func (s *friendServer) AddedFriend(ctx context.Context, req *pbFriend.AddedFrien } log.Info(req.Token, req.OperationID, "rpc add friend response success return,userid=%s,flag=%d", req.Uid, req.Flag) //Change the status of the friend request form - if req.Flag == 1 { + if req.Flag == constant.FriendFlag { + //Establish friendship after find friend relationship not exists + _, err := im_mysql_model.FindFriendRelationshipFromFriend(claims.UID, req.Uid) + if err == nil { + return &pbFriend.CommonResp{ErrorCode: 0, ErrorMsg: "You are already friends"}, nil + } //Establish two single friendship err = im_mysql_model.InsertToFriend(claims.UID, req.Uid, req.Flag) if err != nil {