private void CompleteTeamsStat(Match match, ref TeamStat team1Stat, ref TeamStat team2Stat) { if (match.GoalsTeam1 > match.GoalsTeam2) { team1Stat.Wins++; team2Stat.Loses++; } else if (match.GoalsTeam2 > match.GoalsTeam1) { team2Stat.Wins++; team1Stat.Loses++; } else { team1Stat.Draws++; team2Stat.Draws++; } team1Stat.Points = team1Stat.Wins * 3 + team1Stat.Draws; team1Stat.GamesPlayed++; team1Stat.GoalsFavor += match.GoalsTeam1; team1Stat.GoalsAgainst += match.GoalsTeam2; team1Stat.GoalDifference = team1Stat.GoalsFavor - team1Stat.GoalsAgainst; team1Stat.Effectiveness = Math.Round(((decimal)team1Stat.Points / ((decimal)team1Stat.GamesPlayed * 3)) * 100, 2); team2Stat.Points = team2Stat.Wins * 3 + team2Stat.Draws; team2Stat.GamesPlayed++; team2Stat.GoalsFavor += match.GoalsTeam2; team2Stat.GoalsAgainst += match.GoalsTeam1; team2Stat.GoalDifference = team2Stat.GoalsFavor - team2Stat.GoalsAgainst; team2Stat.Effectiveness = Math.Round(((decimal)team2Stat.Points / ((decimal)team2Stat.GamesPlayed * 3)) * 100, 2); }
public void Update(TeamStat teamStat) { var teamStatModified = _mapper.Map <TeamStats>(teamStat); _ctx.TeamStats.Attach(teamStatModified); _ctx.Entry(teamStatModified).State = EntityState.Modified; }
public void Setup() { ctx = new SqlContext(); engine = new TeamStatEngine(ctx); stat = new TeamStat() { Id = 1, OpponentId = 3, TeamId = 2, ScheduleId = 4, Assits = 3, Blocks = 6, DefensiveRebound = 15, FGCompleted = 35, FGPercentage = 0.6, FGTaken = 50, Fouls = 15, FreeThrowPercentage = 0.33, FreeThrowsCompleted = 9, FreeThrowsTaken = 3, OffensiveRebound = 25, Steals = 15, ThreeCompleted = 30, ThreePercentage = 0.33, ThreeTaken = 10, TurnOvers = 20 }; }
public void TestTeamStatExists() { TeamStat stat = new TeamStat() { Id = 1, OpponentId = 3, TeamId = 2, ScheduleId = 4, Assits = 3, Blocks = 6, DefensiveRebound = 15, FGCompleted = 35, FGPercentage = 0.6, FGTaken = 50, Fouls = 15, FreeThrowPercentage = 0.33, FreeThrowsCompleted = 9, FreeThrowsTaken = 3, OffensiveRebound = 25, Steals = 15, ThreeCompleted = 30, ThreePercentage = 0.33, ThreeTaken = 10, TurnOvers = 20 }; repo.Insert(stat); Assert.IsTrue(repo.Exists(stat)); }
public void TestSaveUpdate() { ctx.TeamStats.Add(stat); ctx.SaveChanges(); TeamStat stat2 = new TeamStat() { Id = 1, OpponentId = 3, TeamId = 2, ScheduleId = 4, Assits = 20, Blocks = 6, DefensiveRebound = 15, FGCompleted = 35, FGPercentage = 0.6, FGTaken = 50, Fouls = 15, FreeThrowPercentage = 0.33, FreeThrowsCompleted = 9, FreeThrowsTaken = 3, OffensiveRebound = 25, Steals = 15, ThreeCompleted = 30, ThreePercentage = 0.33, ThreeTaken = 10, TurnOvers = 20 }; engine.Save(stat2); Assert.IsNotNull(ctx.TeamStats.Where(c => c.Id == 1 && c.Assits == 20).FirstOrDefault()); Assert.AreEqual(1, ctx.TeamStats.Count()); }
public async Task DeleteTeamStatAsync(TeamStat teamStat) { var query = await _wpbDataContext.TeamStats.FindAsync(teamStat.Id); _wpbDataContext.TeamStats.Remove(query); await _wpbDataContext.SaveChangesAsync(); }
public void TestExists() { ctx.TeamStats.Add(stat); ctx.SaveChanges(); TeamStat stat2 = new TeamStat() { Id = 0, OpponentId = 3, TeamId = 2, ScheduleId = 4, Assits = 20, Blocks = 6, DefensiveRebound = 15, FGCompleted = 35, FGPercentage = 0.6, FGTaken = 50, Fouls = 15, FreeThrowPercentage = 0.33, FreeThrowsCompleted = 9, FreeThrowsTaken = 3, OffensiveRebound = 25, Steals = 15, ThreeCompleted = 30, ThreePercentage = 0.33, ThreeTaken = 10, TurnOvers = 20 }; Assert.IsTrue(engine.Exists(stat2)); }
public async Task <List <TeamStat> > GetTeamStatsResultsAsync() { // Get all the data sources for ranking data var rankingDataSource = await _wpbService.GetRankingDataSources(); var statData = new List <TeamStat>(); foreach (var result in rankingDataSource) { var rankStat = ParseDataSource.ParseRankingSource(result, result.ClassNameNode); foreach (var stat in rankStat) { try { var team = await _wpbService.GetTeamByTeamName(stat.TeamName); if (team != null) { var newStat = new TeamStat() { TeamName = team.TeamName, TeamId = team.Id, TeamCode = team.TeamCode, SubDivisionId = team.SubDivisionId, Position = stat.Position, GamesPlayed = stat.GamesPlayed, GamesWon = stat.GamesWon, GamesLost = stat.GamesLost, BasketsFor = stat.BasketsFor, BasketsAganist = stat.BasketsAganist, PointsDifference = stat.PointsDifference, Points = stat.Points, WinPercentage = StatisticsCalculator.WinPercentage(stat.GamesWon, stat.GamesPlayed).ToString(), LossPercentage = StatisticsCalculator.LossPercentage(stat.GamesLost, stat.GamesPlayed).ToString(), BasketsPerGame = StatisticsCalculator.BasketsPerGame(stat.BasketsFor, stat.GamesPlayed).ToString(), WinLossPercent = StatisticsCalculator.WinLossPercentage(stat.GamesWon, stat.GamesLost).ToString(), WinsOver500 = StatisticsCalculator.WinsOver50(stat.GamesWon, stat.GamesLost).ToString(), WPyth = StatisticsCalculator.WPyth(stat.BasketsFor, stat.BasketsAganist).ToString(), }; statData.Add(newStat); } else { throw new System.ArgumentException( "Detected null values in either team variable!"); } } catch (Exception err) { var msg = err.ToString(); } } } return(statData); }
public void TestGetTeamStat() { TeamStat stat = new TeamStat() { Id = 1, OpponentId = 3, TeamId = 2, Assits = 3, Blocks = 6, DefensiveRebound = 15, FGCompleted = 35, FGPercentage = 0.6, FGTaken = 50, Fouls = 15, FreeThrowPercentage = 0.33, FreeThrowsCompleted = 9, FreeThrowsTaken = 3, OffensiveRebound = 25, Steals = 15, ThreeCompleted = 30, ThreePercentage = 0.33, ThreeTaken = 10, TurnOvers = 20, ScheduleId = 4 }; repo.Insert(stat); TeamStat stat2 = new TeamStat() { Id = 2, OpponentId = 5, TeamId = 4, Assits = 3, Blocks = 6, DefensiveRebound = 15, FGCompleted = 35, FGPercentage = 0.6, FGTaken = 50, Fouls = 15, FreeThrowPercentage = 0.33, FreeThrowsCompleted = 11, FreeThrowsTaken = 6, OffensiveRebound = 25, Steals = 15, ThreeCompleted = 30, ThreePercentage = 0.33, ThreeTaken = 10, TurnOvers = 20, ScheduleId = 2 }; repo.Insert(stat2); Assert.IsNotNull(repo.GetTeamStat(2)); }
public void TestUpdateTeamStat() { TeamStat stat = new TeamStat() { Id = 1, OpponentId = 3, TeamId = 2, Assits = 3, Blocks = 6, DefensiveRebound = 15, FGCompleted = 35, FGPercentage = 0.6, FGTaken = 50, Fouls = 15, FreeThrowPercentage = 0.33, FreeThrowsCompleted = 9, FreeThrowsTaken = 3, OffensiveRebound = 25, Steals = 15, ThreeCompleted = 30, ThreePercentage = 0.33, ThreeTaken = 10, TurnOvers = 20 }; repo.Insert(stat); TeamStat stat2 = new TeamStat() { Id = 1, OpponentId = 3, TeamId = 2, Assits = 3, Blocks = 6, DefensiveRebound = 15, FGCompleted = 35, FGPercentage = 0.6, FGTaken = 50, Fouls = 15, FreeThrowPercentage = 0.33, FreeThrowsCompleted = 11, FreeThrowsTaken = 6, OffensiveRebound = 25, Steals = 15, ThreeCompleted = 30, ThreePercentage = 0.33, ThreeTaken = 10, TurnOvers = 20 }; repo.Update(stat2); Assert.IsTrue(ctx.TeamStats.Any(c => c.Id == 1 && c.FreeThrowsCompleted == 11)); Assert.AreEqual(1, ctx.TeamStats.Count()); }
public TeamStat CreateTeamStat(Team team) { GameObject teamStatObj = (GameObject)UnityEngine.GameObject.Instantiate(Resources.Load("TeamStat")); RectTransform rt = teamStatObj.GetComponent <RectTransform> (); rt.SetParent(transform); rt.anchoredPosition = new Vector3(20 + (teamStatObj.GetComponent <RectTransform>().rect.width + 5) * stats.Count, -20, 0); rt.localScale = Vector3.one; TeamStat teamStat = teamStatObj.GetComponent <TeamStat> (); teamStat.team = team; stats.Add(team, teamStat); return(teamStat); }
public bool CreateTeamStats(TeamStatCreate stats) { var TeamStats = new TeamStat() { CoachID = _userID, TeamID = stats.TeamID, YearOfSeason = stats.YearOfSeason, GameNumber = stats.GameNumber, PowerPlays = stats.PowerPlays, PowerPlayGoals = stats.PowerPlayGoals, PenaltyKills = stats.PenaltyKills, PenaltyKillGoalsAgainst = stats.PenaltyKillGoalsAgainst, GoalsFor = stats.GoalsFor, GoalsAgainst = stats.GoalsAgainst }; using (var db = new ApplicationDbContext()) { db.TeamStats.Add(TeamStats); return(db.SaveChanges() == 1); } }
public async Task Update(TeamStat teamStat) { _teamStatRepository.Update(teamStat); await _teamStatRepository.SaveChanges(); }
public async Task Add(TeamStat teamStat) { await _teamStatRepository.Add(teamStat); await _teamStatRepository.SaveChanges(); }
public async Task CreateTeamStatAsync(TeamStat stat) { _wpbDataContext.TeamStats.Add(stat); await _wpbDataContext.SaveChangesAsync(); }
public async Task Add(TeamStat teamStat) { var teamStatToAdd = _mapper.Map <TeamStats>(teamStat); await _ctx.TeamStats.AddAsync(teamStatToAdd); }
public void Delete(TeamStat teamStat) { base.Delete(teamStat); }
public TeamStat Update(TeamStat teamStat) { return(base.Update(teamStat)); }
public TeamStat Insert(TeamStat teamStat) { return(Add(teamStat)); }
public bool Exists(TeamStat teamStat) { Expression <Func <TeamStat, bool> > doesExist = c => c.TeamId == teamStat.TeamId && c.ScheduleId == teamStat.ScheduleId; return(Query(doesExist).Count() > 0); }