예제 #1
0
        public IHttpActionResult Get(int id, int?unionId = null)
        {
            int?seasonId = unionId != null?_seasonsRepo.GetLastSeasonByCurrentUnionId(unionId.Value) :
                               (int?)null;

            var game = GamesService.GetGameById(id, seasonId);

            if (game == null)
            {
                return(NotFound());
            }

            var section = _sectionRepo.GetByLeagueId(game.LeagueId)?.Alias;

            GamesService.UpdateGameSet(game, section);

            var vm = new GamePageViewModel {
                GameInfo = game
            };

            if (User.Identity.IsAuthenticated)
            {
                vm.GoingFriends = GetTeamsFansList(id);
            }

            vm.Sets = GamesService.GetGameSets(id).ToList();


            vm.History = GamesService.GetGameHistory(game.GuestTeamId, game.HomeTeamId);
            GamesService.UpdateGameSets(vm.History);

            GamesService.UpdateGameSet(vm.GameInfo, section);

            return(Ok(vm));
        }
예제 #2
0
        // GET: LeagueTable
        public ActionResult Index(int id, int seasonId, int?union = null)
        {
            string sectionAlias;

            if (union.HasValue)
            {
                var section = _unionsRepo.GetSectionByUnionId(union.Value);
                sectionAlias = section.Alias;
            }
            else
            {
                var section = _sectionsRepo.GetByLeagueId(id);
                sectionAlias = section?.Alias;
            }

            LeagueRankService svc     = new LeagueRankService(id);
            RankLeague        rLeague = svc.CreateLeagueRankTable(seasonId);

            // rLeague.Stages = rLeague.Stages.Where(x => x.Groups.All(y => !y.IsAdvanced)).ToList();


            if (rLeague.Stages.Count == 0)
            {
                rLeague = svc.CreateEmptyRankTable(seasonId);
                rLeague.IsEmptyRankTable = true;
            }

            if (rLeague.Stages.Count == 0)
            {
                rLeague.Teams = _teamsRepo.GetTeams(seasonId, id).ToList();
            }
            rLeague.SeasonId = seasonId;

            switch (sectionAlias)
            {
            case GamesAlias.WaterPolo:
                return(View("Waterpolo/Index", rLeague));

            case GamesAlias.BasketBall:
                return(View("Basketball/Index", rLeague));

            case GamesAlias.NetBall:
            case GamesAlias.VolleyBall:
                return(View("Netball_VolleyBall/Index", rLeague));

            default:
                return(View(rLeague));
            }
        }