diff --git a/pkg/common/constant/constant.go b/pkg/common/constant/constant.go index ef33b9867..2e5432b48 100644 --- a/pkg/common/constant/constant.go +++ b/pkg/common/constant/constant.go @@ -291,8 +291,9 @@ const ( GroupResponseAgree = 1 GroupResponseRefuse = -1 - FriendResponseAgree = 1 - FriendResponseRefuse = -1 + FriendResponseNotHandle = 0 + FriendResponseAgree = 1 + FriendResponseRefuse = -1 Male = 1 Female = 2 diff --git a/pkg/common/db/controller/friend.go b/pkg/common/db/controller/friend.go index 0dbf10276..4d549efcf 100644 --- a/pkg/common/db/controller/friend.go +++ b/pkg/common/db/controller/friend.go @@ -238,7 +238,7 @@ func (f *friendDatabase) AgreeFriendRequest( } fr2, err := f.friendRequest.NewTx(tx).Take(ctx, friendRequest.ToUserID, friendRequest.FromUserID) - if err == nil { + if err == nil && fr2.HandleResult == constant.FriendResponseNotHandle { fr2.HandlerUserID = mcontext.GetOpUserID(ctx) fr2.HandleResult = constant.FriendResponseAgree fr2.HandleTime = now