Exemplo n.º 1
0
        public static async Task <IActionResult> UpdateTeam([HttpTrigger(AuthorizationLevel.Function, "put", Route = "teams/{name}")] HttpRequest req, string name, ILogger log)
        {
            log.LogInformation($"Update existing team request");

            try
            {
                string _RequestBody           = await new StreamReader(req.Body).ReadToEndAsync();
                EngineeringTeamEntity _Entity = JsonConvert.DeserializeObject <EngineeringTeamEntity>(_RequestBody);

                if (await TeamsRepo.Get(name) != null)
                {
                    await TeamsRepo.Update(name, _Entity);
                }
                else
                {
                    return(new NotFoundResult());
                }
            }
            catch (Exception _Exception)
            {
                log.LogError(_Exception.Message);
                return(new NotFoundResult());
            }

            return(new OkResult());
        }
Exemplo n.º 2
0
 public GameScrapperJob()
 {
     HostingEnvironment.RegisterObject(this);
     _clubsRepo = new ClubsRepo();
     _gamesRepo = new GamesRepo();
     _teamsRepo = new TeamsRepo();
 }
Exemplo n.º 3
0
        public static async Task <IActionResult> GetAllEngineers([HttpTrigger(AuthorizationLevel.Function, "get", Route = "teams/")] HttpRequest req, ILogger log)
        {
            log.LogInformation("Get All Teams Requested");

            List <EngineeringTeamEntity> _Teams = await TeamsRepo.Get();

            return(new JsonResult(_Teams));
        }
Exemplo n.º 4
0
        public ActionResult Index()
        {
            PlayersRepo playerRepo = new PlayersRepo();
            TeamsRepo   teamRepo   = new TeamsRepo();

            var playTeam = new Tuple <IEnumerable <SelectListItem>, IEnumerable <SelectListItem>, IEnumerable <SelectListItem> >(playerRepo.GetAllPlayersNames(), playerRepo.GetAllPlayerTypes(), teamRepo.GetAllTeamNames());

            return(View(playTeam));
        }
Exemplo n.º 5
0
        public ActionResult TeamSchedules(int id, int leagueId, int seasonId)
        {
            var gamesRepo = new GamesRepo();
            var resList   = gamesRepo.GetCyclesByTeam(id).Where(g => g.LeagueId == leagueId);

            var tRepo = new TeamsRepo();
            var team  = tRepo.GetById(id);

            ViewBag.TeamId   = id;
            ViewBag.LeagueId = leagueId;
            ViewBag.SeasonId = seasonId;
            if (team != null)
            {
                ViewBag.Logo     = UIHelper.GetTeamLogo(team.Logo);
                ViewBag.ResTitle = team.Title.Trim();
                if (team.LeagueTeams.Count > 1)
                {
                    var leagues = team.LeagueTeams.Where(l => (l.Leagues.Stages.Any(s => s.GamesCycles.Any(gc => gc.HomeTeamId == id && gc.IsPublished)) || l.Leagues.Stages.Any(s => s.GamesCycles.Any(gc => gc.GuestTeamId == id && gc.IsPublished))) && l.SeasonId == seasonId);
                    List <SelectListItem> items = new List <SelectListItem>();
                    foreach (var league in leagues)
                    {
                        items.Add(new SelectListItem {
                            Text = league.Leagues.Name, Value = league.LeagueId.ToString(), Selected = league.LeagueId == leagueId
                        });
                    }
                    ViewBag.Leagues = items;
                }
            }
            var lRepo = new LeagueRepo();
            var leag  = lRepo.GetById(leagueId);

            if (leag != null)
            {
                var alias = leag.Union?.Section?.Alias;
                switch (alias)
                {
                case GamesAlias.WaterPolo:
                case GamesAlias.BasketBall:
                    return(View("WaterPoloBasketBall/Schedules", new SchedulesDto {
                        GameCycles = resList
                    }));

                default:
                    return(View(nameof(Schedules),
                                new SchedulesDto {
                        GameCycles = resList
                    }));
                }
            }

            return(View(nameof(Schedules), new SchedulesDto {
                GameCycles = resList
            }));
        }
Exemplo n.º 6
0
        public static async Task <IActionResult> GetAllEngineersInTeam([HttpTrigger(AuthorizationLevel.Function, "get", Route = "teams/{name}/engineers")] HttpRequest req, string name, ILogger log)
        {
            log.LogInformation("Get All Engineers in Team Requested");

            List <EngineerEntity> _Engineers = null;

            if (await TeamsRepo.Get(name) != null)
            {
                _Engineers = await new EngineersRepository().GetByTeam(name);
            }
            else
            {
                return(new NotFoundResult());
            }

            return(new JsonResult(_Engineers));
        }
Exemplo n.º 7
0
        public static async Task <IActionResult> AddNewTeam([HttpTrigger(AuthorizationLevel.Function, "post", Route = "teams/")] HttpRequest req, ILogger log)
        {
            log.LogInformation($"Add new Team request");

            try
            {
                string _RequestBody           = await new StreamReader(req.Body).ReadToEndAsync();
                EngineeringTeamEntity _Entity = JsonConvert.DeserializeObject <EngineeringTeamEntity>(_RequestBody);
                await TeamsRepo.Create(_Entity);
            }
            catch (Exception _Exception)
            {
                log.LogError("Error in Deserializing");
                log.LogError(_Exception.Message);
                return(new BadRequestResult());
            }

            return(new OkResult());
        }
Exemplo n.º 8
0
        public static async Task <IActionResult> GetSingleTeam([HttpTrigger(AuthorizationLevel.Function, "get", Route = "teams/{name}/")] HttpRequest req, string name, ILogger log)
        {
            log.LogInformation($"GET single team {name}");

            EngineeringTeamEntity _Result = null;

            try
            {
                _Result = await TeamsRepo.Get(name);
            }
            catch (Exception _Exception)
            {
                log.LogError(_Exception.Message);
            }

            if (_Result == null)
            {
                return(new NotFoundResult());
            }

            return(new JsonResult(_Result));
        }
Exemplo n.º 9
0
        public static async Task <IActionResult> RemoveTeam([HttpTrigger(AuthorizationLevel.Function, "delete", Route = "teams/{name}")] HttpRequest req, string name, ILogger log)
        {
            log.LogInformation($"Remove team request");

            try
            {
                if (await TeamsRepo.Get(name) != null)
                {
                    await TeamsRepo.Remove(name);
                }
                else
                {
                    return(new NotFoundResult());
                }
            }
            catch (Exception _Exception)
            {
                log.LogError(_Exception.Message);
                return(new NotFoundResult());
            }

            return(new OkResult());
        }
Exemplo n.º 10
0
        public IHttpActionResult Get(int id, int?unionId = null, int?leagueId = null)
        {
            User player = db.Users.FirstOrDefault(u => u.UserId == id && u.IsArchive == false && u.IsActive);

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

            if (unionId == null && leagueId != null)
            {
                LeagueRepo leagueRepo = new LeagueRepo();
                League     league     = leagueRepo.GetById((int)leagueId);
                unionId = league != null ? league.UnionId : null;
            }
            int?seasonId = unionId != null?_seasonsRepo.GetLastSeasonByCurrentUnionId(unionId.Value) : (int?)null;

            PlayerProfileViewModel vm = PlayerService.GetPlayerProfile(player);

            var teamsRepo = new TeamsRepo();

            vm.Teams = teamsRepo.GetPlayerPositions(id, seasonId);

            vm.FriendshipStatus = FriendsService.AreFriends(id, CurrUserId);

            if (User.Identity.IsAuthenticated)
            {
                vm.Friends = FriendsService.GetAllFanFriends(id, base.CurrUserId);
            }

            vm.Games = GamesService.GetPlayerGames(player.UserId, seasonId);

            GamesService.UpdateGameSets(vm.Games);

            return(Ok(vm));
        }
Exemplo n.º 11
0
 public LeagueRankService(int leagueId)
 {
     _leagueId  = leagueId;
     leagueRepo = new LeagueRepo(db);
     teamsRepo  = new TeamsRepo(db);
 }
Exemplo n.º 12
0
        // GET: WorkerHome
        public ActionResult Index()
        {
            UsersRepo usersRepo = new UsersRepo();
            int       userId    = base.AdminId;
            var       roleName  = usersRepo.GetTopLevelJob(userId);

            List <ManagedItemViewModel> tree = new List <ManagedItemViewModel>();

            switch (roleName)
            {
            case JobRole.UnionManager:
                ViewBag.Title = Messages.Unions;
                var unions = new UnionsRepo().GetByManagerId(userId);
                if (unions.Count == 1)
                {
                    var seasons = unions.First().Seasons;
                    var season  = 1;
                    if (seasons != null && seasons.Count > 0)
                    {
                        season = seasons.Last().Id;
                    }
                    return(RedirectToAction("Edit", "Unions", new { id = unions.First().UnionId, seasonId = season }));
                }
                foreach (var item in unions)
                {
                    ManagedItemViewModel vm = new ManagedItemViewModel();
                    vm.Id         = item.UnionId;
                    vm.Name       = item.Name;
                    vm.Controller = "Unions";
                    vm.SeasonId   = item.Seasons.Last().Id;
                    tree.Add(vm);
                }
                break;

            case JobRole.LeagueManager:
                ViewBag.Title = Messages.Leagues;
                var leagues = new LeagueRepo().GetByManagerId(userId, null);
                if (leagues.Count == 1)
                {
                    return(RedirectToAction("Edit", "Leagues", new { id = leagues.First().LeagueId, seasonId = leagues.First().SeasonId }));
                }

                foreach (var item in leagues)
                {
                    ManagedItemViewModel vm = new ManagedItemViewModel();
                    vm.Id         = item.LeagueId;
                    vm.Name       = item.Name;
                    vm.SeasonId   = item.SeasonId;
                    vm.Controller = "Leagues";
                    tree.Add(vm);
                }
                break;

            case JobRole.TeamManager:
                ViewBag.Title = Messages.Teams;
                List <TeamManagerTeamInformationDto> teamManagers = new TeamsRepo().GetByTeamManagerId(userId);
                if (teamManagers.Count == 1)
                {
                    var teamManager = teamManagers[0];

                    if (teamManager.LeagueId != null)
                    {
                        return(RedirectToAction("Edit", "Teams", new { id = teamManager.TeamId, currentLeagueId = teamManager.LeagueId, seasonId = teamManager.SeasonId, unionId = teamManager.UnionId }));
                    }

                    if (teamManager.ClubId != null)
                    {
                        return(RedirectToAction("Edit", "Teams", new { id = teamManager.TeamId, seasonId = teamManager.SeasonId, unionId = teamManager.UnionId, clubId = teamManager.ClubId.Value }));
                    }
                }

                var items = (from teamManager in teamManagers
                             let teamId = teamManager.TeamId
                                          where teamId != null
                                          select new ManagedItemViewModel
                {
                    Id = teamId.Value,
                    Name = teamManager.Title,
                    LeagueName = teamManager.LeagueName,
                    Controller = "Teams",
                    SeasonId = teamManager.SeasonId,
                    LeagueId = teamManager.LeagueId,
                    UnionId = teamManager.UnionId,
                    ClubId = teamManager.ClubId
                });
                tree.AddRange(items);

                break;
            }
            return(View(tree));
        }
Exemplo n.º 13
0
        public IHttpActionResult GetLeague(int id, string ln)
        {
            CultureModel.ChangeCulture(ln);

            League league = db.Leagues.Find(id);

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

            int?currentSeasonId = league.SeasonId;

            LeagueRankService   lrsvc = new LeagueRankService(id);
            LeaguePageVeiwModel vm    = new LeaguePageVeiwModel();

            //League Info
            vm.LeagueInfo = new LeagueInfoVeiwModel(league);

            //var teamWithMostFans = league.Teams.OrderByDescending(t => t.TeamsFans.Where(tf => tf.LeageId == id).Count()).FirstOrDefault();

            //Team with the most fans
            var teamRepo     = new TeamsRepo();
            var topTeamTuple = teamRepo.GetByMostFans(league.LeagueId);
            var topTeam      = topTeamTuple == null ? null : teamRepo.GetById(topTeamTuple.Item1);

            if (topTeam != null)
            {
                vm.TeamWithMostFans = new TeamCompactViewModel
                {
                    FanNumber = topTeamTuple.Item2,
                    TeamId    = topTeam.TeamId,
                    Logo      = topTeam.Logo,
                    Title     = topTeam.Title,
                    LeagueId  = league.LeagueId
                };
            }

            var leagueGames = db.GamesCycles.Include(t => t.Auditorium)
                              .Include(t => t.GuestTeam)
                              .Include(t => t.HomeTeam)
                              .Where(gc => gc.Stage.LeagueId == id && gc.IsPublished).ToList();

            //Next Game
            vm.NextGame = GamesService.GetNextGame(leagueGames, base.CurrUserId, id, currentSeasonId);

            //List of all next games
            if (vm.NextGame != null)
            {
                vm.NextGames = GamesService.GetNextGames(leagueGames, vm.NextGame.StartDate, currentSeasonId);
            }

            //List of all last games
            vm.LastGames = GamesService.GetLastGames(leagueGames, currentSeasonId);

            //League table
            var rLeague = lrsvc.CreateLeagueRankTable(currentSeasonId);

            if (rLeague != null)
            {
                vm.LeagueTableStages = rLeague.Stages; // lrsvc.CreateLeagueRankTable(currentSeasonId).Stages;
                MakeGroupStages(vm.LeagueTableStages, isEmpty: false);
            }

            if (vm.LeagueTableStages == null || vm.LeagueTableStages.Count == 0)
            {
                vm.LeagueTableStages = lrsvc.CreateEmptyRankTable(currentSeasonId).Stages;
                MakeGroupStages(vm.LeagueTableStages, isEmpty: true);
            }

            vm.GameCycles        = leagueGames.Select(gc => gc.CycleNum).Distinct().OrderBy(c => c).ToList();
            vm.LeagueTableStages = vm.LeagueTableStages.Where(x => x.Groups.All(y => !y.IsAdvanced)).ToList();
            return(Ok(vm));
        }
Exemplo n.º 14
0
 public LeagueRankController()
 {
     _teamsRepo  = new TeamsRepo();
     _unionsRepo = new UnionsRepo();
 }
Exemplo n.º 15
0
        public IHttpActionResult GetUserInfo(int?unionId = null)
        {
            var usr = CurrentUser;

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

            SeasonsRepo seasonsRepo = new SeasonsRepo();
            int?        seasonId    = unionId != null?seasonsRepo.GetLastSeasonByCurrentUnionId(unionId.Value) :
                                          (int?)null;

            var vm = new UserInfoViewModel
            {
                Id       = usr.UserId,
                UserName = usr.UserName,
                Email    = usr.Email,
                FullName = usr.FullName,
                Role     = usr.UsersType.TypeRole,
                Image    = usr.Image,
            };

            if (usr.UsersJobs != null && usr.UsersJobs.Count > 0)
            {
                //vm.UserJobs = usr.UsersJobs.Select(x => x.JobId).ToList();
                vm.UserJobs = usr.UsersJobs.Select(x => new UserJobDetail()
                {
                    UserId          = x.Id,
                    JobId           = x.JobId,
                    JobName         = (x.Job == null ? null : x.Job.JobName),
                    JobRoleId       = (x.Job == null || x.Job.RoleId == null ? 0 : (int)x.Job.RoleId),
                    JobRoleName     = (x.Job == null || x.Job.JobsRole == null ? null : x.Job.JobsRole.RoleName),
                    JobRolePriority = (x.Job == null || x.Job.JobsRole == null ? 0 : x.Job.JobsRole.Priority),
                    LeagueId        = x.LeagueId,
                    LeagueName      = (x.League == null ? null : x.League.Name),
                    TeamId          = x.TeamId,
                    TeamName        = (x.Team == null ? null : x.Team.Title)
                }).ToList();
            }

            var teamsRepo = new TeamsRepo();

            if (User.IsInRole(AppRole.Fans))
            {
                vm.Teams = teamsRepo.GetFanTeams(usr.UserId, seasonId);
            }
            else if (User.IsInRole(AppRole.Players))
            {
                vm.Teams = teamsRepo.GetPlayerTeams(usr.UserId, seasonId);
            }
            else if (User.IsInRole(AppRole.Workers))
            {
                vm.Teams = usr.UsersJobs.Select(x => new DataService.DTO.TeamDto()
                {
                    TeamId   = (x.Team == null ? 0 : x.Team.TeamId),
                    Title    = (x.Team == null ? null : x.Team.Title),
                    LeagueId = (x.LeagueId == null ? 0 : (int)x.LeagueId),
                    Logo     = (x.Team == null ? null : x.Team.Logo),
                    SeasonId = (x.SeasonId == null ? 0 : x.SeasonId)
                }).ToList();
            }

            return(Ok(vm));
        }
Exemplo n.º 16
0
 public LeagueTableController()
 {
     _teamsRepo    = new TeamsRepo();
     _unionsRepo   = new UnionsRepo();
     _sectionsRepo = new SectionsRepo();
 }