|
|
@ -185,13 +185,23 @@ 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 roleLevels == nil && pageNumber == 0 && showNumber == 0 {
|
|
|
|
if roleLevels == nil {
|
|
|
|
for _, groupID := range groupIDs {
|
|
|
|
if pageNumber == 0 || showNumber == 0 {
|
|
|
|
groupMembers, err := g.cache.GetAllGroupMembersInfo(ctx, groupID)
|
|
|
|
for _, groupID := range groupIDs {
|
|
|
|
if err != nil {
|
|
|
|
groupMembers, err := g.cache.GetAllGroupMembersInfo(ctx, groupID)
|
|
|
|
return 0, nil, err
|
|
|
|
if err != nil {
|
|
|
|
|
|
|
|
return 0, nil, err
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
totalGroupMembers = append(totalGroupMembers, groupMembers...)
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
for _, groupID := range groupIDs {
|
|
|
|
|
|
|
|
groupMembers, err := g.cache.GetGroupMembersPage(ctx, groupID, pageNumber, showNumber)
|
|
|
|
|
|
|
|
if err != nil {
|
|
|
|
|
|
|
|
return 0, nil, err
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
totalGroupMembers = append(totalGroupMembers, groupMembers...)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
totalGroupMembers = append(totalGroupMembers, groupMembers...)
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -230,8 +240,16 @@ func (g *groupDatabase) MapGroupMemberUserID(ctx context.Context, groupIDs []str
|
|
|
|
return g.cache.GetGroupMemberHashMap(ctx, groupIDs)
|
|
|
|
return g.cache.GetGroupMemberHashMap(ctx, groupIDs)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
func (g *groupDatabase) MapGroupMemberNum(ctx context.Context, groupIDs []string) (map[string]uint32, error) {
|
|
|
|
func (g *groupDatabase) MapGroupMemberNum(ctx context.Context, groupIDs []string) (m map[string]uint32, err error) {
|
|
|
|
return g.groupMemberDB.MapGroupMemberNum(ctx, groupIDs)
|
|
|
|
m = make(map[string]uint32)
|
|
|
|
|
|
|
|
for _, groupID := range groupIDs {
|
|
|
|
|
|
|
|
num, err := g.cache.GetGroupMemberNum(ctx, groupID)
|
|
|
|
|
|
|
|
if err != nil {
|
|
|
|
|
|
|
|
return nil, err
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
m[groupID] = uint32(num)
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
return m, nil
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
func (g *groupDatabase) TransferGroupOwner(ctx context.Context, groupID string, oldOwnerUserID, newOwnerUserID string, roleLevel int32) error {
|
|
|
|
func (g *groupDatabase) TransferGroupOwner(ctx context.Context, groupID string, oldOwnerUserID, newOwnerUserID string, roleLevel int32) error {
|
|
|
|