public IActionResult Vaga(long VagaId) { var funcionariosEmWa = _funcionarioRepository.GetTodosAtivosEmWA(); var vaga = _vagaRepository.GetPorId(VagaId); var tecnologiasDaVaga = _tecnologiaRepository.GetTecnologiasPorVaga(vaga); var funcionariosAlocados = _alocacaoRepository.GetFuncionariosNaVaga(vaga); var viewModel = new VagaAlocacaoViewModel() { FuncionariosEmWA = funcionariosEmWa.ToViewModel(_tecnologiaRepository), Vaga = vaga.ToViewModel(tecnologiasDaVaga), FuncionariosAlocados = funcionariosAlocados.ToViewModel(_tecnologiaRepository) }; return(View("vaga-alocacao", viewModel)); }
public static List <VagaViewModel> ToViewModel(this List <Vaga> vagas, ITecnologiaRepository tecnologiaRepository) { List <VagaViewModel> vagasVM = new List <VagaViewModel>(); foreach (Vaga vaga in vagas) { var tecnologiasDaVaga = tecnologiaRepository.GetTecnologiasPorVaga(vaga); vagasVM.Add(vaga.ToViewModel(tecnologiasDaVaga)); } return(vagasVM); }
public IActionResult Vaga(long id = 0) { try { ViewData["tecnologias"] = _tecnologiaRepository.GetTodosAtivos(); if (id > 0) { Vaga vaga = _vagaRepository.GetPorId(id); List <Tecnologia> tecnologias = _tecnologiaRepository.GetTecnologiasPorVaga(vaga); var vagaVM = vaga.ToViewModel(tecnologias); var funcionariosAlocados = _alocacaoRepository.GetFuncionariosNaVaga(vaga); vagaVM.FuncionariosAlocados = funcionariosAlocados; return(View(vagaVM)); } return(View()); } catch (EntidadeNaoEncontradaException) { return(NotFound("Vaga não encontrada!")); } }