Пример #1
0
        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);
            }
        }
Пример #2
0
        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());
        }
Пример #3
0
        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;
            }
        }
Пример #4
0
        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);
        }