private async Task <ResponsavelManobraViewModel> PopularManobristasCarros(ResponsavelManobraViewModel responsavelManobra)
        {
            responsavelManobra.Manobristas = _mapper.Map <IEnumerable <ManobristaViewModel> >(await _manobristaRepository.ObterTodos());
            responsavelManobra.Carros      = _mapper.Map <IEnumerable <CarroViewModel> >(await _carroRepository.ObterTodos());

            return(responsavelManobra);
        }
        public async Task <IActionResult> Edit(Guid id, ResponsavelManobraViewModel responsavelManobraViewModel)
        {
            if (id != responsavelManobraViewModel.Id)
            {
                return(NotFound());
            }

            var responsavelManobraAtualizacao = await ObterResponsavelManobra(id);

            if (!ModelState.IsValid)
            {
                return(View(responsavelManobraViewModel));
            }

            responsavelManobraAtualizacao.CarroId = responsavelManobraViewModel.CarroId;

            await _responsavelManobraService.Atualizar(_mapper.Map <ResponsavelManobra>(responsavelManobraAtualizacao));

            if (!OperacaoValida())
            {
                return(View(responsavelManobraViewModel));
            }

            return(RedirectToAction(nameof(Index)));
        }
        public async Task <IActionResult> Create(ResponsavelManobraViewModel responsavelManobraViewModel)
        {
            responsavelManobraViewModel = await PopularManobristasCarros(responsavelManobraViewModel);

            if (!ModelState.IsValid)
            {
                return(View(responsavelManobraViewModel));
            }

            var responsavelManobra = _mapper.Map <ResponsavelManobra>(responsavelManobraViewModel);
            await _responsavelManobraService.Adicionar(responsavelManobra);

            if (!OperacaoValida())
            {
                return(View(responsavelManobraViewModel));
            }

            return(RedirectToAction(nameof(Index)));
        }