public async Task <IActionResult> GetSquads([FromQuery] SquadQuery squadQuery) { var squads = await _squadService.GetAsync(squadQuery); var returnSquads = _mapper.Map <PaginatedList <SquadListDto> >(squads); return(Ok(returnSquads)); }
public async Task <PaginatedList <Squad> > GetAsync(SquadQuery squadQuery) { var query = Context.Squads .Include(s => s.Season) .Include(s => s.Club) .AsQueryable(); if (squadQuery.SeasonId.HasValue) { query = query.Where(s => s.SeasonId == squadQuery.SeasonId); } var columnsMap = new Dictionary <string, Expression <Func <Squad, object> > >() { ["id"] = s => s.Id, ["club"] = s => s.Club.Name }; query = query.Sort(squadQuery, columnsMap); return(await PaginatedList <Squad> .CreateAsync(query, squadQuery.PageNumber, squadQuery.PageSize)); }
public async Task <PaginatedList <Squad> > GetAsync(SquadQuery squadQuery) { return(await _squadRepository.GetAsync(squadQuery)); }