public ActionResult <ApiResponse <AdicionarUsuarioCommandOutput, Notificacao> > UsuarioInserir([FromBody] AdicionarUsuarioCommand command) { try { if (Request.Headers["ChaveAPI"].ToString() != _ChaveAPI) { return(StatusCode(StatusCodes.Status401Unauthorized, new ApiResponse <object, Notificacao>("Acesso negado", new List <Notificacao>() { new Notificacao("Chave da API", "ChaveAPI não corresponde com a chave esperada") }))); } if (command == null) { return(StatusCode(StatusCodes.Status400BadRequest, new ApiResponse <object, Notificacao>("Parâmentros inválidos", new List <Notificacao>() { new Notificacao("Parâmetros de entrada", "Parâmetros de entrada estão nulos") }))); } if (!command.ValidarCommand()) { return(StatusCode(StatusCodes.Status400BadRequest, new ApiResponse <object, Notificacao>("Parâmentros inválidos", command.Notificacoes))); } var result = _handler.Handler(command); if (result.Sucesso) { return(StatusCode(StatusCodes.Status200OK, new ApiResponse <object, Notificacao>(result.Mensagem, result.Dados))); } else { return(StatusCode(StatusCodes.Status400BadRequest, new ApiResponse <object, Notificacao>(result.Mensagem, result.Erros))); } } catch (Exception e) { return(StatusCode(StatusCodes.Status500InternalServerError, new ApiResponse <object, Notificacao>("Erro", new List <Notificacao>() { new Notificacao("Erro", e.Message) }))); } }
public async Task <IResult> AtualizarAsync(UsuarioForUpdateViewModel usuarioForUpdateVireModel) { var alterarUsuarioCommand = _mapper.Map <AlterarUsuarioCommand>(usuarioForUpdateVireModel); var usuarioHandle = new UsuarioHandler(_mapper, _repository, _cryptographyService); var result = await usuarioHandle.Handler(alterarUsuarioCommand); return(result); }
public async Task <IResult> InserirAsync(UsuarioForCreationViewModel usuarioForCreationViewModel) { var cadastrarUsuarioCommand = _mapper.Map <CadastrarUsuarioCommand>(usuarioForCreationViewModel); var usuarioHandle = new UsuarioHandler(_mapper, _repository, _cryptographyService); var result = await usuarioHandle.Handler(cadastrarUsuarioCommand); return(result); }
public async Task ShouldInvalidateCadastrarUsuarioCommandWhenAlreadyUsuarioWithSameName() { var usuario = new Usuario { Id = 1, Nome = "Teste", Sigla = "FFF", Status = StatusDeCadastro.Normal, SetorId = 1, Login = "******", Senha = "teste" }; _repositoryMock.Setup(r => r.Usuario.GetUsuarioByNomeAsync("Teste")).Returns(Task.FromResult(usuario)); var command = new CadastrarUsuarioCommand( usuario.Nome, usuario.Sigla, usuario.SetorId, usuario.Status, usuario.Login, usuario.Senha ); var result = await _usuarioHandler.Handler(command); Assert.AreEqual("Já existe um usuário com mesmo nome cadastrado", ((CommandResult)result).Message); }