mirror of
https://github.com/openimsdk/open-im-server.git
synced 2025-04-24 02:16:16 +08:00
group
This commit is contained in:
parent
efa8d9297a
commit
f6d63cca46
@ -192,63 +192,63 @@ func (g *groupDatabase) FindGroupMember(ctx context.Context, groupIDs []string,
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (g *groupDatabase) PageGroupMember(ctx context.Context, groupIDs []string, userIDs []string, roleLevels []int32, pageNumber, showNumber int32) (total uint32, totalGroupMembers []*relationTb.GroupMemberModel, err error) {
|
func (g *groupDatabase) PageGroupMember(ctx context.Context, groupIDs []string, userIDs []string, roleLevels []int32, pageNumber, showNumber int32) (total uint32, totalGroupMembers []*relationTb.GroupMemberModel, err error) {
|
||||||
if len(roleLevels) == 0 {
|
//if len(roleLevels) == 0 {
|
||||||
if pageNumber == 0 || showNumber == 0 {
|
// if pageNumber == 0 || showNumber == 0 {
|
||||||
if len(groupIDs) == 0 {
|
// if len(groupIDs) == 0 {
|
||||||
for _, userID := range userIDs {
|
// for _, userID := range userIDs {
|
||||||
groupIDs, err := g.cache.GetJoinedGroupIDs(ctx, userID)
|
// groupIDs, err := g.cache.GetJoinedGroupIDs(ctx, userID)
|
||||||
if err != nil {
|
// if err != nil {
|
||||||
return 0, nil, err
|
// return 0, nil, err
|
||||||
}
|
// }
|
||||||
for _, groupID := range groupIDs {
|
// for _, groupID := range groupIDs {
|
||||||
groupMembers, err := g.cache.GetGroupMembersInfo(ctx, groupID, []string{userID})
|
// groupMembers, err := g.cache.GetGroupMembersInfo(ctx, groupID, []string{userID})
|
||||||
if err != nil {
|
// if err != nil {
|
||||||
return 0, nil, err
|
// return 0, nil, err
|
||||||
}
|
// }
|
||||||
totalGroupMembers = append(totalGroupMembers, groupMembers...)
|
// totalGroupMembers = append(totalGroupMembers, groupMembers...)
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
return uint32(len(totalGroupMembers)), totalGroupMembers, nil
|
// return uint32(len(totalGroupMembers)), totalGroupMembers, nil
|
||||||
}
|
// }
|
||||||
for _, groupID := range groupIDs {
|
// for _, groupID := range groupIDs {
|
||||||
groupMembers, err := g.cache.GetGroupMembersInfo(ctx, groupID, userIDs)
|
// groupMembers, err := g.cache.GetGroupMembersInfo(ctx, groupID, userIDs)
|
||||||
if err != nil {
|
// if err != nil {
|
||||||
return 0, nil, err
|
// return 0, nil, err
|
||||||
}
|
// }
|
||||||
totalGroupMembers = append(totalGroupMembers, groupMembers...)
|
// totalGroupMembers = append(totalGroupMembers, groupMembers...)
|
||||||
}
|
// }
|
||||||
return uint32(len(totalGroupMembers)), totalGroupMembers, nil
|
// return uint32(len(totalGroupMembers)), totalGroupMembers, nil
|
||||||
} else {
|
// } else {
|
||||||
if len(groupIDs) == 0 {
|
// if len(groupIDs) == 0 {
|
||||||
for _, userID := range userIDs {
|
// for _, userID := range userIDs {
|
||||||
groupIDs, err := g.cache.GetJoinedGroupIDs(ctx, userID)
|
// groupIDs, err := g.cache.GetJoinedGroupIDs(ctx, userID)
|
||||||
if err != nil {
|
// if err != nil {
|
||||||
return 0, nil, err
|
// return 0, nil, err
|
||||||
}
|
// }
|
||||||
groupIDs = utils.Paginate(groupIDs, int(pageNumber), int(showNumber))
|
// groupIDs = utils.Paginate(groupIDs, int(pageNumber), int(showNumber))
|
||||||
for _, groupID := range groupIDs {
|
// for _, groupID := range groupIDs {
|
||||||
groupMembers, err := g.cache.GetGroupMembersInfo(ctx, groupID, []string{userID})
|
// groupMembers, err := g.cache.GetGroupMembersInfo(ctx, groupID, []string{userID})
|
||||||
if err != nil {
|
// if err != nil {
|
||||||
return 0, nil, err
|
// return 0, nil, err
|
||||||
}
|
// }
|
||||||
totalGroupMembers = append(totalGroupMembers, groupMembers...)
|
// totalGroupMembers = append(totalGroupMembers, groupMembers...)
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
return uint32(len(groupIDs)), totalGroupMembers, nil
|
// return uint32(len(groupIDs)), totalGroupMembers, nil
|
||||||
}
|
// }
|
||||||
var totalAll uint32
|
// var totalAll uint32
|
||||||
for _, groupID := range groupIDs {
|
// for _, groupID := range groupIDs {
|
||||||
total, groupMembers, err := g.cache.GetGroupMembersPage(ctx, groupID, userIDs, pageNumber, showNumber)
|
// total, groupMembers, err := g.cache.GetGroupMembersPage(ctx, groupID, userIDs, pageNumber, showNumber)
|
||||||
if err != nil {
|
// if err != nil {
|
||||||
return 0, nil, err
|
// return 0, nil, err
|
||||||
}
|
// }
|
||||||
totalAll += total
|
// totalAll += total
|
||||||
totalGroupMembers = append(totalGroupMembers, groupMembers...)
|
// totalGroupMembers = append(totalGroupMembers, groupMembers...)
|
||||||
}
|
// }
|
||||||
return totalAll, totalGroupMembers, nil
|
// return totalAll, totalGroupMembers, nil
|
||||||
}
|
// }
|
||||||
}
|
//}
|
||||||
return g.groupMemberDB.SearchMember(ctx, "", groupIDs, userIDs, roleLevels, pageNumber, showNumber)
|
return g.groupMemberDB.SearchMember(ctx, "", groupIDs, userIDs, roleLevels, pageNumber, showNumber)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user