mirror of
https://github.com/openimsdk/open-im-server.git
synced 2025-04-25 11:06:43 +08:00
group
This commit is contained in:
parent
de7d4fac85
commit
4706d830a2
@ -645,7 +645,7 @@ func (s *groupServer) JoinGroup(ctx context.Context, req *pbGroup.JoinGroupReq)
|
|||||||
groupMember.RoleLevel = constant.GroupOrdinaryUsers
|
groupMember.RoleLevel = constant.GroupOrdinaryUsers
|
||||||
groupMember.OperatorUserID = mcontext.GetOpUserID(ctx)
|
groupMember.OperatorUserID = mcontext.GetOpUserID(ctx)
|
||||||
groupMember.JoinSource = constant.JoinByInvitation
|
groupMember.JoinSource = constant.JoinByInvitation
|
||||||
groupMember.InviterUserID = mcontext.GetOpUserID(ctx)
|
groupMember.InviterUserID = req.InviterUserID
|
||||||
groupMember.JoinTime = time.Now()
|
groupMember.JoinTime = time.Now()
|
||||||
groupMember.MuteEndTime = time.Unix(0, 0)
|
groupMember.MuteEndTime = time.Unix(0, 0)
|
||||||
if err := CallbackBeforeMemberJoinGroup(ctx, groupMember, group.Ex); err != nil && err != errs.ErrCallbackContinue {
|
if err := CallbackBeforeMemberJoinGroup(ctx, groupMember, group.Ex); err != nil && err != errs.ErrCallbackContinue {
|
||||||
|
@ -105,27 +105,6 @@ func (g *groupDatabase) GetGroupIDsByGroupType(ctx context.Context, groupType in
|
|||||||
return g.groupDB.GetGroupIDsByGroupType(ctx, groupType)
|
return g.groupDB.GetGroupIDsByGroupType(ctx, groupType)
|
||||||
}
|
}
|
||||||
|
|
||||||
// func (g *groupDatabase) delGroupMemberCache(ctx context.Context, groupID string, userIDs []string) error {
|
|
||||||
// for _, userID := range userIDs {
|
|
||||||
// if err := g.cache.DelJoinedGroupID(ctx, userID); err != nil {
|
|
||||||
// return err
|
|
||||||
// }
|
|
||||||
// if err := g.cache.DelJoinedSuperGroupIDs(ctx, userID); err != nil {
|
|
||||||
// return err
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// if err := g.cache.DelGroupMemberIDs(ctx, groupID); err != nil {
|
|
||||||
// return err
|
|
||||||
// }
|
|
||||||
// if err := g.cache.DelGroupMemberNum(ctx, groupID); err != nil {
|
|
||||||
// return err
|
|
||||||
// }
|
|
||||||
// if err := g.cache.DelGroupMembersHash(ctx, groupID); err != nil {
|
|
||||||
// return err
|
|
||||||
// }
|
|
||||||
// return nil
|
|
||||||
// }
|
|
||||||
|
|
||||||
func (g *groupDatabase) FindGroupMemberUserID(ctx context.Context, groupID string) ([]string, error) {
|
func (g *groupDatabase) FindGroupMemberUserID(ctx context.Context, groupID string) ([]string, error) {
|
||||||
return g.cache.GetGroupMemberIDs(ctx, groupID)
|
return g.cache.GetGroupMemberIDs(ctx, groupID)
|
||||||
}
|
}
|
||||||
@ -142,7 +121,15 @@ func (g *groupDatabase) CreateGroup(ctx context.Context, groups []*relationTb.Gr
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return nil
|
m := make(map[string]struct{})
|
||||||
|
var cache = g.cache.NewCache()
|
||||||
|
for _, groupMember := range groupMembers {
|
||||||
|
if _, ok := m[groupMember.GroupID]; !ok {
|
||||||
|
m[groupMember.GroupID] = struct{}{}
|
||||||
|
cache = cache.DelGroupMemberIDs(groupMember.GroupID).DelGroupMembersHash(groupMember.GroupID).DelJoinedGroupID(groupMember.UserID).DelGroupsMemberNum(groupMember.GroupID)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return g.cache.ExecDel(ctx)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user