public async Task <bool> RegisterUser(UsuarioPessoaCommand command)
        {
            var usuario = await _usuarioService.BuscarUsuario(command.Email);

            if (usuario != null)
            {
                throw new Exception("Email já existe em nossa base. Por favor, informe outro Email ou contate a equipe tecnica!");
            }

            var register = new Usuario()
            {
                Id             = Guid.NewGuid(),
                UserName       = command.Nome,
                Email          = command.Email,
                EmailConfirmed = false,
                IsEnabled      = true,
            };

            byte[] passwordHash, passwordSalt;
            CreatePasswordHash(command.Senha, out passwordHash, out passwordSalt);

            register.PasswordHash = Convert.ToBase64String(passwordHash);
            register.PasswordSalt = Convert.ToBase64String(passwordSalt);

            var model = _Mapper.Map <Usuario, UsuarioViewModel>(await _usuarioService.RegisterUser(register));

            return(true);
        }
Example #2
0
        public async Task <bool> EditarUsuario(UsuarioPessoaCommand command)
        {
            var usuario = await _usuarioService.BuscarUsuario(command.Email);

            if (usuario == null)
            {
                throw new Exception("Usuário não encontrado. Por favor, informe outro Email ou contate a equipe tecnica!");
            }

            var usuarioEditado = new Usuario()
            {
                Id           = usuario.Id,
                UserName     = command.Nome,
                Email        = usuario.Email,
                PasswordHash = usuario.PasswordHash,
                PasswordSalt = usuario.PasswordSalt
            };

            byte[] passwordHash, passwordSalt;
            CreatePasswordHash(command.Senha, out passwordHash, out passwordSalt);

            if (usuario.PasswordHash != Convert.ToBase64String(passwordHash) &&
                usuario.PasswordSalt != Convert.ToBase64String(passwordSalt))
            {
                usuarioEditado.PasswordHash = Convert.ToBase64String(passwordHash);
                usuarioEditado.PasswordSalt = Convert.ToBase64String(passwordSalt);
            }

            var model = await _usuarioService.EditarUsuario(usuarioEditado);

            return(model);
        }
 public UsuarioPessoaCommandContract(UsuarioPessoaCommand command)
 {
     AddNotifications(new Contract()
                      .Requires()
                      .IsNotNullOrEmpty(command.Nome, nameof(command.Nome), string.Format(REQUIRED_FIELD_MESSAGE, nameof(command.Nome)))
                      .AreEquals(command.Senha, command.ConfirmacaoSenha, nameof(command.Senha), string.Format(PASSWORD_FIELD_MESSAGE))
                      .IsEmailOrEmpty(command.Email, nameof(command.Email), string.Format(REQUIRED_FIELD_MESSAGE_VALID, nameof(command.Email)))
                      .IsNotNullOrEmpty(command.Email, nameof(command.Email), string.Format(REQUIRED_FIELD_MESSAGE, nameof(command.Email))));
 }
 public async Task <IActionResult> CadastrarNovoUsuario([FromBody] UsuarioPessoaCommand command)
 {
     try
     {
         var resultRequired = new UsuarioPessoaCommandContract(command);
         if (resultRequired.Invalid)
         {
             return(await Response(null, resultRequired.Notifications));
         }
         else
         {
             return(await Response(await _usuarioService.RegisterUser(command), null));
         }
     }
     catch (Exception ex)
     {
         return(await Response(null, new List <Notification>() { new Notification(MESSAGE_ERRO_REGISTRAR_USUARIO, ex.Message) }));
     }
 }
Example #5
0
        public async Task EditarUsuario()
        {
            ConnectionStrings.BancoDadosConnection = bancoDadosConnection;

            _repository = new UsuarioRepository();
            _service    = new UsuarioService(_repository);
            _appService = new UsuarioAppService(AutoMapperConfiguration.RegisterMappings().CreateMapper(), _service, _jswtService);
            _controller = new UsuarioController(_appService);

            var editarPessoa = new UsuarioPessoaCommand()
            {
                Nome             = "Bruno Souza",
                Email            = "*****@*****.**",
                Senha            = "bwdesouza@2",
                ConfirmacaoSenha = "bwdesouza@2"
            };

            var result = await _controller.EditarUsuario(editarPessoa);

            Assert.IsNotNull(result);
            Assert.IsTrue(true);
        }
Example #6
0
        public async Task RegistrarUsuarioTest()
        {
            ConnectionStrings.BancoDadosConnection = bancoDadosConnection;

            _repository = new UsuarioRepository();
            _service    = new UsuarioService(_repository);
            _appService = new UsuarioAppService(AutoMapperConfiguration.RegisterMappings().CreateMapper(), _service, _jswtService);
            _controller = new UsuarioController(_appService);

            var pessoa = new UsuarioPessoaCommand()
            {
                Nome             = "Carlos Santana Nunes",
                Email            = "*****@*****.**",
                Senha            = "santana100",
                ConfirmacaoSenha = "santana100"
            };

            var result = await _controller.RegistrarUsuario(pessoa);

            Assert.IsNotNull(result);
            Assert.IsTrue(true);
        }