public async Task <ActionResult <ResultViewModel> > AlterarVeiculoAsync([FromBody] VeiculoViewModel veiculo) { try { if (!ModelState.IsValid) { return(BadRequest(new ResultViewModel(ModelError.GetErrorModelState(ModelState, _notificador)))); } var veiculoDTO = _mapper.Map <Veiculo>(veiculo); var retornoVeiculo = await _veiculoService.AlterarVeiculoAsync(veiculoDTO); if (retornoVeiculo == null) { return(BadRequest(new ResultViewModel(_notificador.ObterNotificacoes()))); } var veiculoViewModel = _mapper.Map <VeiculoViewModel>(retornoVeiculo); ResultViewModel resultViewModel = new ResultViewModel(veiculoViewModel); return(Ok(resultViewModel)); } catch (Exception ex) { return(StatusCode(StatusCodes.Status500InternalServerError, "Ocorreu um erro interno no servidor: " + ex.Message)); } }