/// <summary> /// Method used to insert records into table Player /// </summary> /// <param name="userName"></param> /// <param name="password"></param> /// <param name="firstName"></param> /// <param name="lastName"></param> /// <param name="age"></param> /// <param name="additionalInformation"></param> /// <returns>Created player id (if created)</returns> public int CreatePlayer(string userName, string password, string firstName, string lastName, int age, string additionalInformation) { Validation(userName, password, firstName, lastName, age, additionalInformation); foreach (var dbPlayer in context.Players) { if (dbPlayer.UserName == userName) { throw new InvalidOperationException("Username already exists."); } } var player = new Player() { UserName = userName, Password = password, FirstName = firstName, LastName = lastName, Age = age, AdditionalInformation = additionalInformation }; context.Players.Add(player); context.SaveChanges(); return(player.Id); }
/// <summary> /// Changes every player's score who signed for certain game by given id simulating that a tournament was held /// </summary> /// <param name="id"></param> /// <returns>Game id (if found)</returns> public int GameTournament(int id) { if (context.Games.Find(id).RemovedOn != null) { throw new InvalidOperationException("Cannot create tournament on removed game."); } Random random = new Random(); foreach (var sb in context.Scoreboards.Where(x => x.GameId == id && x.Score > 0)) { sb.Score += (random.Next(250) - 100); } context.SaveChanges(); return(id); }
/// <summary> /// Method which inserts records in table Game /// </summary> /// <param name="name"></param> /// <param name="requiredAge"></param> /// <param name="description"></param> /// <returns></returns> public int CreateGame(string name, int requiredAge, string description) { foreach (var dbGame in context.Games) { if (dbGame.Name.ToLower() == name.ToLower()) { throw new InvalidOperationException("Dublicate game name"); } } var game = new Game() { Name = name, RequiredAge = requiredAge, Description = description }; context.Games.Add(game); context.SaveChanges(); return(game.Id); }