conversation create

This commit is contained in:
wangchuxiao
2023-05-04 17:27:29 +08:00
parent cfa543802e
commit 640313386b
3 changed files with 53 additions and 36 deletions
+12 -3
View File
@@ -66,9 +66,8 @@ func Start(client discoveryregistry.SvcDiscoveryRegistry, server *grpc.Server) e
}
type groupServer struct {
GroupDatabase controller.GroupDatabase
User *rpcclient.UserClient
//Notification *notification.Check
GroupDatabase controller.GroupDatabase
User *rpcclient.UserClient
Notification *notification.GroupNotificationSender
conversationRpcClient *rpcclient.ConversationClient
}
@@ -308,10 +307,14 @@ func (s *groupServer) InviteUserToGroup(ctx context.Context, req *pbGroup.Invite
}
}
}
if group.GroupType == constant.SuperGroup {
if err := s.GroupDatabase.CreateSuperGroupMember(ctx, req.GroupID, req.InvitedUserIDs); err != nil {
return nil, err
}
if err := s.conversationRpcClient.GroupChatFirstCreateConversation(ctx, req.GroupID, req.InvitedUserIDs); err != nil {
return nil, err
}
for _, userID := range req.InvitedUserIDs {
s.Notification.SuperGroupNotification(ctx, userID, userID)
}
@@ -336,6 +339,9 @@ func (s *groupServer) InviteUserToGroup(ctx context.Context, req *pbGroup.Invite
if err := s.GroupDatabase.CreateGroup(ctx, nil, groupMembers); err != nil {
return nil, err
}
if err := s.conversationRpcClient.GroupChatFirstCreateConversation(ctx, req.GroupID, req.InvitedUserIDs); err != nil {
return nil, err
}
s.Notification.MemberInvitedNotification(ctx, req.GroupID, req.Reason, req.InvitedUserIDs)
}
return resp, nil
@@ -669,6 +675,9 @@ func (s *groupServer) JoinGroup(ctx context.Context, req *pbGroup.JoinGroupReq)
if err := s.GroupDatabase.CreateGroup(ctx, nil, []*relationTb.GroupMemberModel{groupMember}); err != nil {
return nil, err
}
if err := s.conversationRpcClient.GroupChatFirstCreateConversation(ctx, req.GroupID, []string{req.InviterUserID}); err != nil {
return nil, err
}
s.Notification.MemberEnterDirectlyNotification(ctx, req.GroupID, req.InviterUserID)
return resp, nil
}