public static void CreateCity(City city) { var ctx = new CybersportDBEntities(); city.Country = ctx.Countries.ToList().First(c => c.CountryID == city.CountryID); ctx.Cities.Add(city); ctx.SaveChanges(); }
public static void EditPlayer(Player oldPlayer) { var ctx = new CybersportDBEntities(); oldPlayer.Country = ctx.Countries.ToList().First(c => c.CountryID == oldPlayer.CountryID); oldPlayer.Role = ctx.Roles.ToList().First(r => r.RoleID == oldPlayer.RoleID); ctx.Entry(oldPlayer).State = System.Data.Entity.EntityState.Modified; ctx.SaveChanges(); }
public static void AddSetsInMatch(Set set, MatchesInTournament mit) { var ctx = new CybersportDBEntities(); set.SetID = Guid.NewGuid(); set.MatchID = mit.MathID; set.MatchesInTournament = ctx.MatchesInTournaments.FirstOrDefault(t => t.MathID == set.MatchID); set.Map = ctx.Maps.FirstOrDefault(t => t.MapID == set.MapID); ctx.Sets.Add(set); ctx.SaveChanges(); }
public static void SetPlayersResults(Team team, int playedRounds) { var ctx = new CybersportDBEntities(); var players = ctx.PlayersInTeams.Where(p => p.TeamID == team.TeamID && p.Finish == null).ToList(); foreach (PlayersInTeam pit in players) { pit.Player.PlayedRounds += playedRounds; ctx.SaveChanges(); } }
public static void AddMatchInChamp(MatchesInTournament mit) { var ctx = new CybersportDBEntities(); mit.MathID = Guid.NewGuid(); mit.Date = DateTime.Today; mit.Tournament = ctx.Tournaments.FirstOrDefault(t => t.TournamentID == mit.TournamentID); mit.Team = ctx.Teams.FirstOrDefault(t => t.TeamID == mit.FirstTeamID); mit.Team1 = ctx.Teams.FirstOrDefault(t => t.TeamID == mit.SecondTeamID); ctx.MatchesInTournaments.Add(mit); ctx.SaveChanges(); }
public static void CreateTournament(Tournament champ) { var ctx = new CybersportDBEntities(); if (ctx.Tournaments.Where(tm => tm.Name == champ.Name).Count() != 0) { throw new Exception("Уже есть чемпионат с таким названием."); } champ.City = ctx.Cities.ToList().First(c => c.CityID == champ.CityID); ctx.Tournaments.Add(champ); ctx.SaveChanges(); }
public static void DeleteTeam(Guid id) { var ctx = new CybersportDBEntities(); Team delTeam = ctx.Teams.Where(x => x.ManagerID == id).First(); var playersIDs = ctx.PlayersInTeams.Where(p => p.TeamID == ctx.Teams.FirstOrDefault(t => t.ManagerID == id).TeamID).Select(s => s.PlayerID); foreach (Guid pID in playersIDs) { AddPlayerInTeam(pID, Guid.Empty, DateTime.Today); } delTeam.ManagerID = Guid.Empty; ctx.SaveChanges(); }
public static void AddParticipant(Guid champID, Guid teamID) { var ctx = new CybersportDBEntities(); var tour = ctx.Tournaments.FirstOrDefault(t => t.TournamentID == champID); Participant pt = new Participant(); pt.TeamID = teamID; pt.Team = ctx.Teams.ToList().First(t => t.TeamID == teamID); pt.TournamentID = champID; pt.Place = 0; pt.Money = 0; tour.Participants.Add(pt); ctx.SaveChanges(); }
public static void RefreshTeamMembers(List <Guid> newMembersIDs, Guid teamID) { var ctx = new CybersportDBEntities(); var allTeamPlayers = ctx.PlayersInTeams.Where(p => p.TeamID == teamID && p.Finish == null).ToList(); for (int i = 0; i < allTeamPlayers.Count(); i++) { var search = newMembersIDs.FirstOrDefault(x => x == allTeamPlayers[i].PlayerID); if (search == Guid.Empty) { AddPlayerInTeam(allTeamPlayers[i].PlayerID, Guid.Empty, DateTime.Today); } } ctx.SaveChanges(); }
public static void CreateTeam() { var ctx = new CybersportDBEntities(); Team t = new Team(); t.TeamID = Guid.Empty; t.Name = "Без команды"; t.Wins = 0; t.Draws = 0; t.Defeats = 0; t.Rating = 0; t.RegionID = ctx.Regions.First().RegionID; t.Region = ctx.Regions.ToList().First(r => r.RegionID == t.RegionID); ctx.Teams.Add(t); ctx.SaveChanges(); }
public static void CreateTeam(Team team) { var ctx = new CybersportDBEntities(); if (ctx.Teams.Where(tm => tm.Name == team.Name).Count() != 0) { throw new Exception("Уже есть команда с таким названием."); } team.Wins = 0; team.Draws = 0; team.Defeats = 0; team.Rating = 0; team.Region = ctx.Regions.ToList().First(r => r.RegionID == team.RegionID); ctx.Teams.Add(team); ctx.SaveChanges(); }
public static void DeletePlayer(Player player) { var ctx = new CybersportDBEntities(); if (player.Role.Role1 == "Администратор") { throw new Exception("Нельзя удалять единственного администратора!"); } Player delPlayer = new Player { PlayerID = player.PlayerID }; ctx.Players.Attach(delPlayer); ctx.Players.Remove(delPlayer); ctx.SaveChanges(); }
public static void EditTournament(Tournament oldChamp) { var ctx = new CybersportDBEntities(); oldChamp.City = ctx.Cities.ToList().First(c => c.CityID == oldChamp.CityID); Tournament changedChamp = ctx.Tournaments.Where(x => x.TournamentID == oldChamp.TournamentID).First(); changedChamp.Name = oldChamp.Name; changedChamp.Money = oldChamp.Money; changedChamp.CityID = oldChamp.CityID; changedChamp.City = oldChamp.City; changedChamp.Finish = oldChamp.Finish; changedChamp.Start = oldChamp.Start; changedChamp.MembersCount = oldChamp.MembersCount; ctx.Entry(changedChamp).State = System.Data.Entity.EntityState.Modified; ctx.SaveChanges(); }
public static void AddPlayerInTeam(Guid playerID, Guid teamID, DateTime date) { var ctx = new CybersportDBEntities(); Guid oldValueGuid = GetLastTeam(playerID); ctx.PlayersInTeams.First(x => x.ID == oldValueGuid && x.Finish == null).Finish = date; PlayersInTeam pit = new PlayersInTeam(); pit.ID = Guid.NewGuid(); pit.PlayerID = playerID; pit.TeamID = teamID; pit.Start = date; pit.Team = ctx.Teams.First(x => x.TeamID == teamID); pit.Player = ctx.Players.First(x => x.PlayerID == playerID); ctx.PlayersInTeams.Add(pit); ctx.SaveChanges(); }
public static void EditTeam(Team oldTeam) { var ctx = new CybersportDBEntities(); oldTeam.Region = ctx.Regions.ToList().First(r => r.RegionID == oldTeam.RegionID); Team changedTeam = ctx.Teams.Where(x => x.TeamID == oldTeam.TeamID).First(); changedTeam.Name = oldTeam.Name; changedTeam.Money = oldTeam.Money; changedTeam.Defeats = oldTeam.Defeats; changedTeam.Draws = oldTeam.Draws; changedTeam.Wins = oldTeam.Wins; changedTeam.RegionID = oldTeam.RegionID; changedTeam.Region = oldTeam.Region; changedTeam.Rating = oldTeam.Rating; ctx.Entry(changedTeam).State = System.Data.Entity.EntityState.Modified; ctx.SaveChanges(); }
/// <summary> /// Добавляет нового игрока в БД. /// </summary> /// <param name="player">Игрок</param> public static void CreatePlayer(Player player) { var ctx = new CybersportDBEntities(); player.PlayerID = Guid.NewGuid(); player.Country = ctx.Countries.ToList().First(c => c.CountryID == player.CountryID); player.Role = ctx.Roles.ToList().First(r => r.RoleID == player.RoleID); player.Rating = 0; player.PlayedMaps = 0; player.PlayedRounds = 0; PlayersInTeam pit = new PlayersInTeam(); pit.ID = Guid.NewGuid(); pit.Start = DateTime.Today; pit.PlayerID = player.PlayerID; pit.TeamID = ctx.Teams.Where(t => t.TeamID == Guid.Empty).FirstOrDefault().TeamID; player.PlayersInTeamsID = pit.ID; ctx.PlayersInTeams.Add(pit); ctx.Players.Add(player); ctx.SaveChanges(); }
public static void SetTeamResult(MatchesInTournament mit) { var ctx = new CybersportDBEntities(); var li = ctx.Sets.Where(x => x.MatchID == mit.MathID).ToList(); int firstTeamReasult = 0, secondTeamResult = 0; foreach (Set s in li) { firstTeamReasult += s.FirstTeam; secondTeamResult += s.SecondTeam; } Team t = mit.Team; Team t1 = mit.Team1; if (firstTeamReasult > secondTeamResult) { t.Wins += 1; t1.Defeats += 1; t.Rating += 10; } if (firstTeamReasult == secondTeamResult) { t.Draws += 1; t1.Draws += 1; t.Rating += 5; t1.Rating += 5; } if (firstTeamReasult < secondTeamResult) { t.Defeats += 1; t1.Wins += 1; t1.Rating += 10; } SetPlayersResults(t, firstTeamReasult); SetPlayersResults(t1, secondTeamResult); EditTeam(t); EditTeam(t1); ctx.SaveChanges(); }