private void TallyStats() { var pList = PlayerList.GetAll(); foreach (var plyr in pList) { var player = new NFLPlayer(plyr.Id); var scorecard = new ScoreCard { Player = player }; var season = PgmDao.GetSeason( Season, player.PlayerCode); if (Week == "00") { TallyPreviousActuals( scorecard, player); } TallyPredictions( scorecard, player, season); if (Int32.Parse(Week) > 0) { TallyActuals(scorecard, player, season); } ScoreCards.Add(scorecard); } }
private string GenerateBody() { var compareByPts = new Comparison <ScoreCard>( CompareByTotalPoints); ScoreCards.Sort(compareByPts); var pList = PlayerList.GetAll(); var sb = new StringBuilder(); AppendHeader(sb); foreach (var card in ScoreCards) { var player = card.Player; var season = PgmDao.GetSeason( Season, player.PlayerCode); GeneratePredictions( sb, player, season); if (Week == "00") { OutputPriors( sb, card); } if (Int32.Parse(Week) > 0) { GenerateActuals(sb, player, season); VarianceLine(sb, player, season); } sb.AppendLine(); } OutputTotalPredictions(sb); if (Week == "00") { OutputPriors( sb, TotalScoreCard); } return(sb.ToString()); }
private void TallyPreviousActuals( ScoreCard scorecard, NFLPlayer player) { var season = PgmDao.GetSeason( PreviousSeason(Season), player.PlayerCode); scorecard.PreviousTotalPoints = decimal.Parse(TotalFor(season, player)); for (int w = 1; w < 17; w++) { var actualForTheWeek = decimal.Parse( TotalFor( w, season, player)); scorecard.LastYearWeek[w] = actualForTheWeek; TotalScoreCard.LastYearWeek[w] += actualForTheWeek; TotalScoreCard.PreviousTotalPoints += actualForTheWeek; } }
private DataTable BuildTable() { var dt = new DataTable(); var cols = dt.Columns; cols.Add("SLOT", typeof(String)); cols.Add("PLAYER", typeof(String)); cols.Add("TEAM", typeof(String)); cols.Add("FTEAM", typeof(String)); cols.Add("POS", typeof(String)); cols.Add("PTS", typeof(Int16)); cols.Add("UNIT", typeof(String)); cols.Add("ROLE", typeof(String)); cols.Add("GAME", typeof(String)); cols.Add("OPPRATE", typeof(String)); cols.Add("SPREAD", typeof(Decimal)); cols.Add("TOTAL", typeof(Decimal)); cols.Add("BOOKIE", typeof(String)); cols.Add("ACTUAL", typeof(Int16)); PgmList = PgmDao.GetWeek(Season, Week); var week = Scorer.Week; foreach (var pgm in PgmList) { var p = new NFLPlayer(pgm.PlayerId); if (!string.IsNullOrEmpty(TeamFilter)) { if (p.TeamCode != TeamFilter) { continue; } } if (!string.IsNullOrEmpty(CategoryFilter)) { if (p.PlayerCat != CategoryFilter) { continue; } } p.LoadOwner(League); var dr = dt.NewRow(); var game = new NFLGame(pgm.GameKey); p.LoadProjections(pgm); var opponent = p.CurrTeam.OpponentFor(Season, Int32.Parse(Week)); // player actually available dr["PLAYER"] = p.Url(p.PlayerName, forceReport: false); dr["TEAM"] = p.CurrTeam.TeamCode; dr["FTEAM"] = p.Owner; dr["ROLE"] = p.PlayerRole; dr["POS"] = p.PlayerPos; dr["PTS"] = Scorer.RatePlayer(p, week); dr["UNIT"] = game.ProjectionLink(); dr["GAME"] = string.Format("{0} {1} {2}", game.GameDay(), game.Hour, game.OpponentOut(p.CurrTeam.TeamCode)); dr["SPREAD"] = game.GetSpread(); dr["TOTAL"] = game.Total; game.CalculateSpreadResult(); dr["BOOKIE"] = game.BookieTip.PredictedScore(); if (opponent != null) { dr["OPPRATE"] = opponent.Ratings; } //if ( game.Played() ) // dr[ "ACTUAL" ] = ActualPoints( p ); dt.Rows.Add(dr); } dt.DefaultView.Sort = "PTS DESC"; return(dt); }