public async Task <IActionResult> GetPeopleAsync(string country = null, string state = null, string city = null, int page = DefaultPage, int limit = DefaultItemCount) { if (!Paged.ValidatePage(page, limit)) { return(new BadRequestObjectResult(new ErrorResponse("Index out of range"))); } var people = Db.People.AsQueryable(); if (!string.IsNullOrWhiteSpace(country)) { people = people.Where(p => p.BirthCountry == country); } if (!string.IsNullOrWhiteSpace(state)) { people = people.Where(p => p.BirthState == state); } if (!string.IsNullOrWhiteSpace(city)) { people = people.Where(p => p.BirthCity == city); } var totalCount = await people.CountAsync(); var results = await people.Skip(page *limit).Take(limit).ToListAsync(); var response = new Paged <People>(results, page, limit, totalCount, Request); return(Ok(response)); }
public async Task <IActionResult> GetAwardsPlayersByLeagueIdAsync(string leagueId, int page = DefaultPage, int limit = DefaultItemCount) { if (!Paged.ValidatePage(page, limit)) { return(new BadRequestObjectResult(new ErrorResponse("Index out of range"))); } var awardsPlayers = Db.AwardsPlayers.Where(a => a.LeagueId == leagueId); var totalItems = await awardsPlayers.CountAsync(); var results = await awardsPlayers.Skip(page *limit).Take(limit).ToListAsync(); var response = new Paged <AwardsPlayer>(results, page, limit, totalItems, Request); return(Ok(response)); }
public async Task <IActionResult> GetTeamsFranchisesAsync(int page = DefaultPage, int limit = DefaultItemCount) { if (!Paged.ValidatePage(page, limit)) { return(new BadRequestObjectResult(new ErrorResponse("Index out of range"))); } var teams = Db.TeamsFranchises.AsQueryable(); var totalItems = await teams.CountAsync(); var results = await teams.Skip(page *limit).Take(limit).ToListAsync(); var response = new Paged <TeamsFranchises>(results, page, limit, totalItems, Request); return(Ok(response)); }
public async Task <IActionResult> GetTeamsHalfByDivisionIdAsync(string divisionId, int page = DefaultPage, int limit = DefaultItemCount) { if (!Paged.ValidatePage(page, limit)) { return(new BadRequestObjectResult(new ErrorResponse("Index out of range"))); } var teams = Db.TeamsHalf.Where(t => t.DivisionId == divisionId); var totalItems = await teams.CountAsync(); var results = await teams.Skip(page *limit).Take(limit).ToListAsync(); var response = new Paged <TeamsHalf>(results, page, limit, totalItems, Request); return(Ok(response)); }
public async Task <IActionResult> GetAppearancesByTeamIdAsync(string teamId, int page = DefaultPage, int limit = DefaultItemCount) { if (!Paged.ValidatePage(page, limit)) { return(new BadRequestObjectResult(new ErrorResponse("Index out of range"))); } var appearances = Db.Appearances.Where(f => f.TeamId == teamId); var totalItems = await appearances.CountAsync(); var results = await appearances.Skip(page *limit).Take(limit).ToListAsync(); var response = new Paged <Appearance>(results, page, limit, totalItems, Request); return(Ok(response)); }
public async Task <IActionResult> GetBattingPostByTeamIdAsync(string teamId, int page = DefaultPage, int limit = DefaultItemCount) { if (!Paged.ValidatePage(page, limit)) { return(new BadRequestObjectResult(new ErrorResponse("Index out of range"))); } var batting = Db.BattingPost.Where(b => b.TeamId == teamId); var totalItems = await batting.CountAsync(); var results = await batting.Skip(page *limit).Take(limit).ToListAsync(); var response = new Paged <BattingPost>(results, page, limit, totalItems, Request); return(Ok(response)); }
public async Task <IActionResult> GetPitchingByYearIdAsync(int yearId, int page = DefaultPage, int limit = DefaultItemCount) { if (!Paged.ValidatePage(page, limit)) { return(new BadRequestObjectResult(new ErrorResponse("Index out of range"))); } var pitching = Db.Pitching.Where(p => p.YearId == yearId); var totalItems = await pitching.CountAsync(); var results = await pitching.Skip(page *limit).Take(limit).ToListAsync(); var response = new Paged <Pitching>(results, page, limit, totalItems, Request); return(Ok(response)); }
public async Task <IActionResult> GetFieldingOFSplitAsync(int page = DefaultPage, int limit = DefaultItemCount) { if (!Paged.ValidatePage(page, limit)) { return(new BadRequestObjectResult(new ErrorResponse("Index out of range"))); } var fielding = Db.FieldingOFSplit.AsQueryable(); var totalItems = await fielding.CountAsync(); var results = await fielding.Skip(page *limit).Take(limit).ToListAsync(); var response = new Paged <FieldingOFSplit>(results, page, limit, totalItems, Request); return(Ok(response)); }
public async Task <IActionResult> GetSeriesPostByYearIdAsync(int yearId, int page = DefaultPage, int limit = DefaultItemCount) { if (!Paged.ValidatePage(page, limit)) { return(new BadRequestObjectResult(new ErrorResponse("Index out of range"))); } var series = Db.SeriesPost.Where(s => s.YearId == yearId); var totalItems = await series.CountAsync(); var results = await series.Skip(page *limit).Take(limit).ToListAsync(); var response = new Paged <SeriesPost>(results, page, limit, totalItems, Request); return(Ok(response)); }
public async Task <IActionResult> GetFieldingPostByPlayoffLevelAsync(string level, int page = DefaultPage, int limit = DefaultItemCount) { if (!Paged.ValidatePage(page, limit)) { return(new BadRequestObjectResult(new ErrorResponse("Index out of range"))); } var fielding = Db.FieldingPost.Where(f => f.LevelOfPlayoffs == level); var totalItems = await fielding.CountAsync(); var results = await fielding.Skip(page *limit).Take(limit).ToListAsync(); var response = new Paged <FieldingPost>(results, page, limit, totalItems, Request); return(Ok(response)); }
public async Task <IActionResult> GetHomeGamesByParkIdAsync(string parkId, int page = DefaultPage, int limit = DefaultItemCount) { if (!Paged.ValidatePage(page, limit)) { return(new BadRequestObjectResult(new ErrorResponse("Index out of range"))); } var homeGames = Db.HomeGames.Where(h => h.ParkKey == parkId); var totalItems = await homeGames.CountAsync(); var results = await homeGames.Skip(page *limit).Take(limit).ToListAsync(); var response = new Paged <HomeGames>(results, page, limit, totalItems, Request); return(Ok(response)); }
public async Task <IActionResult> GetAllStarFullByYearIdAsync(int yearId, int page = DefaultPage, int limit = DefaultItemCount) { if (!Paged.ValidatePage(page, limit)) { return(new BadRequestObjectResult(new ErrorResponse("Index out of range"))); } var allStar = Db.AllStarFull.Where(f => f.YearId == yearId); var totalItems = await allStar.CountAsync(); var results = await allStar.Skip(page *limit).Take(limit).ToListAsync(); var response = new Paged <AllStarFull>(results, page, limit, totalItems, Request); return(Ok(response)); }