public async Task <IActionResult> RegisterAddExistig(UserForRegisterExistingDTO userForRegisterDTO) { var creator = await _userRepository.GetUserById(userForRegisterDTO.UserId); var users = await _userRepository.GetUsersByRole(Model.UserRole.Resident); if (!users.Any(p => p.Email == userForRegisterDTO.Email)) { return(Unauthorized("Nie znaleziono użytkownika")); } var userFromRepo = await _buildingRepository.RegisterFlat(userForRegisterDTO); if (userFromRepo == null) { return(Forbid("Wystąpił błąd. Użytkownik nie został dodany.")); } else { var messageSubject = "Home Community App - Mieszkanie zostało dodane do konta"; var messageContent = $"Użytkownik {creator.FirstName} {creator.LastName} dodał mieszkanie do danego konta."; _mailService.SendMail(messageSubject, messageContent, "", "Home Community App"); } return(Ok( new { Result = "Użytkownik został dodany" })); }
public async Task <Flat> RegisterFlat(UserForRegisterExistingDTO userForRegisterDTO) { var user = await _context.Users.FirstOrDefaultAsync(p => p.Email == userForRegisterDTO.Email); var flat = await _context.Flats.FirstOrDefaultAsync(p => p.Id == userForRegisterDTO.FlatId); user.UserFlats.Add(new UserFlat() { Flat = flat }); await _context.SaveChangesAsync(); return(flat); }