Ejemplo n.º 1
0
        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));
        }
Ejemplo n.º 2
0
        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));
        }
Ejemplo n.º 5
0
        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));
        }
Ejemplo n.º 7
0
        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));
        }