diff --git a/internal/group/api.go b/internal/group/api.go index 0b905ddd1..8727ff214 100644 --- a/internal/group/api.go +++ b/internal/group/api.go @@ -16,10 +16,12 @@ package group import ( "context" + "errors" "time" "github.com/openimsdk/openim-sdk-core/v3/pkg/utils" "github.com/openimsdk/tools/errs" + "gorm.io/gorm" "github.com/openimsdk/tools/utils/datautil" @@ -177,6 +179,17 @@ func (g *Group) GetJoinedGroupList(ctx context.Context) ([]*model_struct.LocalGr } func (g *Group) GetJoinedGroupListPage(ctx context.Context, offset, count int32) ([]*model_struct.LocalGroup, error) { + res, err := g.getJoinedGroupListPage(ctx, offset, count) + if err != nil { + if errs.ErrRecordNotFound.Is(err) || errors.Is(err, gorm.ErrRecordNotFound) { + return []*model_struct.LocalGroup{}, nil + } + return nil, err + } + return res, nil +} + +func (g *Group) getJoinedGroupListPage(ctx context.Context, offset, count int32) ([]*model_struct.LocalGroup, error) { dataFetcher := datafetcher.NewDataFetcher( g.db, g.groupTableName(), diff --git a/internal/relation/api.go b/internal/relation/api.go index ded611339..a2aa5e655 100644 --- a/internal/relation/api.go +++ b/internal/relation/api.go @@ -2,10 +2,13 @@ package relation import ( "context" + "errors" "github.com/openimsdk/openim-sdk-core/v3/pkg/utils" "github.com/openimsdk/protocol/relation" + "github.com/openimsdk/tools/errs" "github.com/openimsdk/tools/utils/datautil" + "gorm.io/gorm" "github.com/openimsdk/openim-sdk-core/v3/pkg/constant" "github.com/openimsdk/openim-sdk-core/v3/pkg/datafetcher" @@ -186,6 +189,17 @@ func (r *Relation) GetFriendList(ctx context.Context, filterBlack bool) ([]*mode } func (r *Relation) GetFriendListPage(ctx context.Context, offset, count int32, filterBlack bool) ([]*model_struct.LocalFriend, error) { + res, err := r.getFriendListPage(ctx, offset, count, filterBlack) + if err != nil { + if errs.ErrRecordNotFound.Is(err) || errors.Is(err, gorm.ErrRecordNotFound) { + return []*model_struct.LocalFriend{}, nil + } + return nil, err + } + return res, nil +} + +func (r *Relation) getFriendListPage(ctx context.Context, offset, count int32, filterBlack bool) ([]*model_struct.LocalFriend, error) { dataFetcher := datafetcher.NewDataFetcher( r.db, r.friendListTableName(),