Exemplo n.º 1
0
        public async Task AddAwaitedUserAsync(AwaitedUser awaitedUser, User user, User contact)
        {
            _context.AwaitedUsers.Add(awaitedUser);

            contact.AwaitedContacts.Add(awaitedUser);
            contact.Contacts.Add(user);
            _context.Users.Update(contact);
            await _context.SaveChangesAsync();
        }
Exemplo n.º 2
0
        public async Task <ContactDto> AddContact(string userLogin, string contactLogin, string key, string iv)
        {
            var user = await _userRepository.GetAsync(userLogin);

            var contact = await _userRepository.GetAsync(contactLogin);

            if (contact == null)
            {
                throw new Exception($"Nie znaleziono użytkownika z loginem {contactLogin}");
            }

            user.Contacts.Add(contact);
            await _userRepository.UpdateAsync(user);

            var awaitedUser = new AwaitedUser(user.Login, key, iv);
            await _userRepository.AddAwaitedUserAsync(awaitedUser, user, contact);

            var chat = new Conversation(user, contact);
            await _chatRepository.Add(chat);

            return(_mapper.Map <ContactDto>(contact));
        }