public async Task <ApiResponse> Handle(UpdateUserRequest request, CancellationToken cancellationToken)
        {
            var user = await _userRepository.GetByIdAsync(request.Id);

            if (user == null)
            {
                AddError("Usuário não encontrado.");
                return(Response);
            }

            var userEmail = await _userRepository.GetByEmailAsync(request.Email);

            if (userEmail != null)
            {
                if (userEmail.Id != user.Id)
                {
                    AddError("Já existe outro usuário com esse email.");
                    return(Response);
                }
            }

            user.Update(request.Email, request.Name, PasswordUtil.GeneratePassword(request.Password), request.BirthDate.Date, request.Cpf, request.Phone);

            _userRepository.Update(user);

            return(await PersistDataAsync(_unitOfWork));
        }
예제 #2
0
 public static void SeedUsers(this ModelBuilder modelBuilder)
 {
     modelBuilder.Entity <Domain.Entities.User>().HasData(
         new Domain.Entities.User("*****@*****.**", "User USend", PasswordUtil.GeneratePassword("Password123#"), DateTime.Now, "43118341017", "11999999999")
     {
         Id = 1
     }
         );
 }
        public async Task <ApiResponse> Handle(CreateUserRequest request, CancellationToken cancellationToken)
        {
            if (await _userRepository.HasUserWithEmail(request.Email))
            {
                AddError("Já existe usuário com esse email.");
                return(Response);
            }

            var user = new Domain.Entities.User(request.Email, request.Name, PasswordUtil.GeneratePassword(request.Password), request.BirthDate.Date, request.Cpf, request.Phone);

            _userRepository.Insert(user);

            return(await PersistDataAsync(_unitOfWork));
        }
예제 #4
0
        public void Ensure_Generated_Password_Has_Specified_Length(int length)
        {
            var genPassword = PasswordUtil.GeneratePassword(length);

            Assert.Equal(length, genPassword.Length);
        }