Example #1
0
        public async Task <ServiceResult <UserChat> > RemoveUserFromChat(string chatId, string userId)
        {
            var chatEntity = await chatRepository.Get(chatId);

            if (chatEntity == null)
            {
                return(new ServiceResult <UserChat>($"No chat with id {chatId}"));
            }

            var user = await userManager.FindByIdAsync(userId);

            if (user == null)
            {
                return(new ServiceResult <UserChat>($"No user with id {userId}"));
            }

            var userChatEntity
                = await userChatRepository.Get(userId, chatId);

            if (userChatEntity == null)
            {
                return(new ServiceResult <UserChat>($"Something went wrong)"));
            }

            userChatRepository.Delete(userChatEntity);

            return(new ServiceResult <UserChat>(userChatEntity));
        }