public IActionResult Index(string nomeDoAluno, int?turmaId, bool?cancelado, bool?pago, bool?expirado) { var cursoAbertos = _cursoAbertoRepositorio.Consultar(); ViewBag.Turmas = cursoAbertos.Select(c => new SelectListItem { Value = c.Id.ToString(), Text = $"{c.Curso.Nome} - {c.InicioDoCurso:dd/MM/yyyy}", Selected = turmaId.HasValue && c.Id == turmaId.Value }).ToList(); ((List <SelectListItem>)ViewBag.Turmas).Insert(0, new SelectListItem { Value = "", Text = "" }); var somenteCanceladas = cancelado.HasValue && cancelado.Value; var somenteMatriculasPagas = pago.HasValue && pago.Value; var validadeDoCursoExpirada = expirado.HasValue && expirado.Value; var matriculas = _matriculaRepositorio .ConsultarPor( nomeDoAluno, turmaId, somenteCanceladas, somenteMatriculasPagas, validadeDoCursoExpirada); var models = matriculas.Select(m => new MatriculaParaListaViewModel(m)); return(View(PaginatedList <MatriculaParaListaViewModel> .Create(models, Request))); }
public async Task <IActionResult> Index(int?turmaId, bool?gerarEmExcel) { ViewBag.TurmaSelecionada = turmaId; var cursoAbertos = _cursoAbertoRepositorio.Consultar(); ViewBag.Turmas = cursoAbertos.Select(c => new SelectListItem { Value = c.Id.ToString(), Text = $"{c.Curso.Nome} - {c.InicioDoCurso:dd/MM/yyyy}", Selected = c.Id == turmaId }).ToList(); var alunos = BuscarRelatorio(turmaId); if (gerarEmExcel.HasValue && gerarEmExcel.Value) { return(await GerarExcel(alunos)); } return(View(alunos)); }