fix(group): move member count retrieval after member deletion for accurate updates (#3650)

This commit is contained in:
dsx137 2025-12-31 18:02:09 +08:00 committed by GitHub
parent 1a053275f8
commit 98b9343501
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -593,10 +593,6 @@ func (s *groupServer) KickGroupMember(ctx context.Context, req *pbgroup.KickGrou
} }
} }
} }
num, err := s.db.FindGroupMemberNum(ctx, req.GroupID)
if err != nil {
return nil, err
}
ownerUserIDs, err := s.db.GetGroupRoleLevelMemberIDs(ctx, req.GroupID, constant.GroupOwner) ownerUserIDs, err := s.db.GetGroupRoleLevelMemberIDs(ctx, req.GroupID, constant.GroupOwner)
if err != nil { if err != nil {
return nil, err return nil, err
@ -608,6 +604,10 @@ func (s *groupServer) KickGroupMember(ctx context.Context, req *pbgroup.KickGrou
if err := s.db.DeleteGroupMember(ctx, group.GroupID, req.KickedUserIDs); err != nil { if err := s.db.DeleteGroupMember(ctx, group.GroupID, req.KickedUserIDs); err != nil {
return nil, err return nil, err
} }
num, err := s.db.FindGroupMemberNum(ctx, req.GroupID)
if err != nil {
return nil, err
}
tips := &sdkws.MemberKickedTips{ tips := &sdkws.MemberKickedTips{
Group: &sdkws.GroupInfo{ Group: &sdkws.GroupInfo{
GroupID: group.GroupID, GroupID: group.GroupID,
@ -617,7 +617,7 @@ func (s *groupServer) KickGroupMember(ctx context.Context, req *pbgroup.KickGrou
FaceURL: group.FaceURL, FaceURL: group.FaceURL,
OwnerUserID: ownerUserID, OwnerUserID: ownerUserID,
CreateTime: group.CreateTime.UnixMilli(), CreateTime: group.CreateTime.UnixMilli(),
MemberCount: num - uint32(len(req.KickedUserIDs)), MemberCount: num,
Ex: group.Ex, Ex: group.Ex,
Status: group.Status, Status: group.Status,
CreatorUserID: group.CreatorUserID, CreatorUserID: group.CreatorUserID,