Exemple #1
0
        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"
            }));
        }
Exemple #2
0
        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);
        }