コード例 #1
0
        public void CreateRole(Role role)
        {
            var sqlQuery = $"Insert into Role (Id, Name) Values ({role.Id}, {role.Name}";
            var command  = DbQuery.CreateCommand(sqlQuery, ConnectionString);

            DbQuery.ExecuteCommand(command);
        }
コード例 #2
0
        public void DeleteNews(int id)
        {
            var sqlQuery = $"Delete from News where NewsId = {id}";
            var command  = DbQuery.CreateCommand(sqlQuery, ConnectionString);

            DbQuery.ExecuteCommand(command);
        }
コード例 #3
0
        public void EditUser(User user)
        {
            var sqlQuery =
                $"Update User Set FirstName = {user.FirstName}, Surname = {user.Surname}, Nickname = {user.Nickname}, Email = {user.Email}, Password = {user.Password}, RememberMe = {user.RememberMe}, Avatar = {user.Avatar}, City = {user.City}, DateOfBirth = {user.DateOfBirth} Where UserId = {user.UserId}";
            var command = DbQuery.CreateCommand(sqlQuery, ConnectionString);

            DbQuery.ExecuteCommand(command);
        }
コード例 #4
0
        public void CreateStandings()
        {
            var currentSeason = GetCurrentSeason();
            var teams         = GetTeams();
            var sqlQuery      = string.Empty;
            var command       = DbQuery.CreateCommand(sqlQuery, ConnectionString);

            foreach (var team in teams)
            {
                command.CommandText = $"Insert into Standings (TeamId, SeasonId) Values ('{team.TeamId}', '{currentSeason.SeasonId}');";
                DbQuery.ExecuteCommand(command);
            }
        }
コード例 #5
0
        public void CreateUser(string nickname, string email, string password)
        {
            User user = new User
            {
                Nickname           = nickname,
                Email              = email,
                Password           = HashingPassword(password),
                DateOfRegistration = DateTime.Now
            };

            if (GetRole(2) != null)
            {
                user.RoleId = 2;
            }

            var sqlQuery = UserQuery(user);
            var command  = DbQuery.CreateCommand(sqlQuery, ConnectionString);

            DbQuery.ExecuteCommand(command);
        }
コード例 #6
0
        public void NhlTableGeneration(Match match)
        {
            match.AwayTeam = GetTeamById(match.AwayTeamId);
            match.HomeTeam = GetTeamById(match.HomeTeamId);

            match.SeasonId = GetCurrentSeason().SeasonId;
            var sqlQuery = $"Insert into Matches (SeasonId, HomeTeamId, AwayTeamId, HomeTeamScore, AwayTeamScore, Result, Date) Values ({match.SeasonId}, {match.HomeTeamId}, {match.AwayTeamId}, {match.HomeTeamScore}, {match.AwayTeamScore}, {(int)match.Result}, '{match.Date}')";
            var command  = DbQuery.CreateCommand(sqlQuery, ConnectionString);

            DbQuery.ExecuteCommand(command);

            Team winningTeam;
            Team losingTeam;

            int winnersGoals;
            int losersGoals;

            if (match.AwayTeamScore > match.HomeTeamScore)
            {
                winningTeam = match.AwayTeam;
                winningTeam.MatchesAway.Add(match);
                winnersGoals = match.AwayTeamScore;

                losingTeam = match.HomeTeam;
                losingTeam.MatchesHome.Add(match);
                losersGoals = match.HomeTeamScore;
            }
            else
            {
                winningTeam = match.HomeTeam;
                winningTeam.MatchesHome.Add(match);
                winnersGoals = match.HomeTeamScore;

                losingTeam = match.AwayTeam;
                losingTeam.MatchesAway.Add(match);
                losersGoals = match.AwayTeamScore;
            }

            var currentSeason = GetCurrentSeason();
            //if (currentSeason.Standings.Count == 0)
            //{
            //    CreateStandings();
            //}

            var winStat  = winningTeam.Standings.SingleOrDefault(x => x.Season.SeasonId == currentSeason.SeasonId);
            var loseStat = losingTeam.Standings.SingleOrDefault(x => x.Season.SeasonId == currentSeason.SeasonId);

            //var winStat = (from s in GetStandingsByTeamId(winningTeam.TeamId) where s.Season.IsCurrent == true select s).FirstOrDefault();
            //var loseStat = (from s in GetStandingsByTeamId(losingTeam.TeamId) where s.Season.IsCurrent == true select s).FirstOrDefault();

            winStat.Team          = winningTeam;
            loseStat.Team         = losingTeam;
            winStat.GamesPlayed  += 1;
            loseStat.GamesPlayed += 1;

            switch (match.Result)
            {
            case TypeOfResult.FT:
                FulltimeCounter(match, winStat, loseStat, winnersGoals, losersGoals);
                break;

            case TypeOfResult.OT:
                OvertimeCounter(match, winStat, loseStat, winnersGoals, losersGoals);
                break;

            case TypeOfResult.SO:
                ShootoutCounter(match, winStat, loseStat, winnersGoals, losersGoals);
                break;
            }

            command.CommandText = StandingsQuery(winStat);
            DbQuery.ExecuteCommand(command);
            command.CommandText = StandingsQuery(loseStat);
            DbQuery.ExecuteCommand(command);
        }