public async Task <IList <Artista> > Filtro(ArtistaFiltro filtro) { var artistaQuery = DbSet.AsNoTracking(); if (filtro != null) { if (!string.IsNullOrEmpty(filtro.Nome)) { artistaQuery = artistaQuery.Where(a => a.Nome.Contains(filtro.Nome)); } } return(await artistaQuery.ToListAsync()); }
public async Task <IActionResult> Excel([FromQuery] ArtistaFiltro filtro) { var artistas = await _artistaRepository.Filtro(filtro); using (var wb = new XLWorkbook()) { var ws = wb.AddWorksheet("Artistas"); var linhaAtual = 1; ws.Cell(linhaAtual, (int)ArtistaColumns.Nome).Value = "Nome"; ws.Cell(linhaAtual, (int)ArtistaColumns.Nome).Style.Font.Bold = true; foreach (var artista in artistas) { linhaAtual++; ws.Cell(linhaAtual, (int)ArtistaColumns.Nome).Value = artista.Nome; } return(await GerarArquivoExcel(wb, "artistas.xlsx")); } }
public async Task <IList <ArtistaViewModel> > GetAll([FromQuery] ArtistaFiltro filtro) { return(_mapper.Map <IList <ArtistaViewModel> >(await _artistaRepository.Filtro(filtro))); }