public PerformanceReport(string season, int week, IRatePlayers scorer)
 {
     Season       = season;
     WeekNo       = week;
     Scorer       = scorer;
     PlayerLister = new PlayerLister();
 }
 public PerformanceReport( string season, int week, IRatePlayers scorer )
 {
     Season = season;
     WeekNo = week;
     Scorer = scorer;
     PlayerLister = new PlayerLister();
 }
 public FpProjections(IKeepTheTime timekeeper) : base(timekeeper)
 {
     Name   = "FP Projections";
     Fpr    = new FantasyProjectionReport();
     Dao    = new DbfPlayerGameMetricsDao(); //  for fetching the metrics (but they need generation)
     Scorer = new YahooProjectionScorer();
     Configure();
 }
 public RenderStatsToWeekly(
     IRatePlayers scorerIn,
     IWeekMaster weekMasterIn,
     IKeepTheTime timekeeper)
 {
     _scorer    = scorerIn;
     WeekMaster = weekMasterIn;
     TimeKeeper = timekeeper;
 }
Exemple #5
0
        public string RenderProjectedData(ArrayList playerList, string sHead, [Optional] string sortOrder,
                                          IRatePlayers scorer)
        {
            //  Output the list
            Utility.Announce("PlayerListing " + sHead);
            var r = new SimpleTableReport {
                ReportHeader = sHead, ReportFooter = Season, DoRowNumbers = true
            };

            if (!string.IsNullOrEmpty(SubHeader))
            {
                r.SubHeader = SubHeader;
            }

            var ds = LoadProjectedData(playerList, scorer);

            r.AddColumn(new ReportColumn("Name", "NAME", "{0,-15}"));
            r.AddColumn(new ReportColumn("Pos", "POS", "{0,9}"));
            r.AddColumn(new ReportColumn("Role", "ROLE", "{0,9}"));
            r.AddColumn(new ReportColumn("RookieYr", "ROOKIEYR", "{0,4}"));
            r.AddColumn(new ReportColumn("Team", "CURRTEAM", "{0,2}"));
            r.AddColumn(new ReportColumn("Opp", "OPPONENT", "{0,2}"));
            r.AddColumn(new ReportColumn("Opp", "OPPRATE", "{0,2}"));
            r.AddColumn(new ReportColumn("Spread", "SPREAD", "{0,5}"));
            r.AddColumn(new ReportColumn("Age", "AGE", "{0,2}"));
            r.AddColumn(new ReportColumn("Owner", "FT", "{0,2}"));
            if (LongStats)
            {
                r.AddColumn(new ReportColumn("Curr", "CURSCORES", "{0,5}"));
                r.AddColumn(new ReportColumn("Tot", "SCORES", "{0,5}"));
                r.AddColumn(new ReportColumn("Avg", "AVG", "{0:0.#0}"));
                r.AddColumn(new ReportColumn("Inj", "INJURY", "{0,5}"));
                r.AddColumn(new ReportColumn("YDp", "YDP", "{0,5}"));
                r.AddColumn(new ReportColumn("Tdp", "TDP", "{0,5}"));
                r.AddColumn(new ReportColumn("YDr", "YDR", "{0,5}"));
                r.AddColumn(new ReportColumn("Tdr", "TDR", "{0,5}"));
                r.AddColumn(new ReportColumn("YDc", "YDC", "{0,5}"));
                r.AddColumn(new ReportColumn("TDc", "TDC", "{0,5}"));
                r.AddColumn(new ReportColumn("Fg", "Fg", "{0,5}"));
            }
            r.AddColumn(new ReportColumn("Points", "POINTS", "{0,5}"));

            var dt = ds.Tables[0];

            dt.DefaultView.Sort = LongStats
                                ? (string.IsNullOrEmpty(sortOrder) ? "Points DESC" : sortOrder) : "Points DESC";

            r.LoadBody(dt);             //  just assigns the data table
            FileOut = string.Format("{0}{1}.htm", Utility.OutputDirectory(), sHead);
            r.RenderAsHtml(FileOut, true);

            if (RenderToCsv)
            {
                r.RenderAsCsv("Starters-" + sHead);
            }
            return(FileOut);
        }
Exemple #6
0
 public FantasyProjectionReport(string season, string week, IPlayerGameMetricsDao dao,
                                IRatePlayers scorer)
 {
     Season      = season;
     Week        = (week.Length == 1) ? "0" + week: week;
     PgmDao      = dao;
     Scorer      = scorer;
     Scorer.Week = new NFLWeek(Season, Week);
     League      = Constants.K_LEAGUE_Gridstats_NFL1;
 }
 public RenderStatsToWeekly(
  IRatePlayers scorerIn, 
  IWeekMaster weekMasterIn,
  IKeepTheTime timekeeper
  )
 {
     _scorer = scorerIn;
      WeekMaster = weekMasterIn;
      TimeKeeper = timekeeper;
 }
 public FantasyProjectionReport( string season, string week, IPlayerGameMetricsDao dao,
  IRatePlayers scorer )
 {
     Season = season;
      Week = ( week.Length == 1 ) ? "0" + week: week;
      PgmDao = dao;
      Scorer = scorer;
      Scorer.Week = new NFLWeek( Season, Week );
      League = Constants.K_LEAGUE_Gridstats_NFL1;
 }
Exemple #9
0
        public string RenderProjectedData(
            ArrayList playerList,
            string sHead,
            [Optional] string sortOrder,
            IRatePlayers scorer,
            IWeekMaster weekMaster,
            IAdpMaster adpMaster = null)
        {
            //  Output the list
            Utility.Announce("PlayerListing " + sHead);

            SimpleTableReport r = SetUpProjectionReport(
                sHead);

            var ds = LoadProjectedData(
                plyrList: playerList,
                scorer: scorer,
                weekMaster: weekMaster,
                adpMaster: adpMaster);

            var dt = ds.Tables[0];

            dt.DefaultView.Sort = LongStats
                           ? (string.IsNullOrEmpty(sortOrder)
                           ? "Points DESC" : sortOrder) : "Points DESC";

            r.LoadBody(dt);             //  just assigns the data table
            FileOut = $@"{
				Utility.OutputDirectory()
				}//{
				Season
				}//Projections//{
				sHead
				}.htm"                ;
            r.RenderAsHtml(
                fileName: FileOut,
                persist: true);

            if (RenderToCsv)
            {
                r.RenderAsCsv(
                    "Starters-" + sHead,
                    Logger);
            }
            return(FileOut);
        }
        public string RenderProjectedData(ArrayList playerList, string sHead, [Optional] string sortOrder, 
         IRatePlayers scorer, IWeekMaster weekMaster  )
        {
            //  Output the list
             Utility.Announce("PlayerListing " + sHead);

             var r = new SimpleTableReport {
            ReportHeader = sHead,
            ReportFooter = Season,
            DoRowNumbers = true};

             if (!string.IsNullOrEmpty(SubHeader)) r.SubHeader = SubHeader;
             ///////////////////////////////////////////////////////////////
             var ds = LoadProjectedData(playerList, scorer, weekMaster ); //  <-- projection action here
             ///////////////////////////////////////////////////////////////
             r.AddColumn(new ReportColumn("Name", "NAME", "{0,-15}"));
             r.AddColumn(new ReportColumn("Pos", "POS", "{0,9}"));
             r.AddColumn(new ReportColumn("Role", "ROLE", "{0,9}"));
             r.AddColumn(new ReportColumn("RookieYr", "ROOKIEYR", "{0,4}"));
             r.AddColumn(new ReportColumn("Team", "CURRTEAM", "{0,2}"));
             if (ShowOpponent)
             {
            r.AddColumn(new ReportColumn("Opp", "OPPONENT", "{0,2}"));
            r.AddColumn(new ReportColumn("Opp", "OPPRATE", "{0,2}"));
            r.AddColumn(new ReportColumn("Spread", "SPREAD", "{0,5}"));
             }
             r.AddColumn(new ReportColumn("Age", "AGE", "{0,2}"));
             r.AddColumn(new ReportColumn("Owner", "FT", "{0,2}"));
             if (LongStats)
             {
            r.AddColumn(new ReportColumn("Curr", "CURSCORES", "{0,5}"));
            r.AddColumn(new ReportColumn("Tot", "SCORES", "{0,5}"));
            r.AddColumn(new ReportColumn("Avg", "AVG", "{0:0.0}"));
            r.AddColumn(new ReportColumn("Inj", "INJURY", "{0,5}"));
            r.AddColumn(new ReportColumn("YDp", "YDP", "{0,5}"));
            r.AddColumn(new ReportColumn("Tdp", "TDP", "{0,5}"));
            r.AddColumn(new ReportColumn("YDr", "YDR", "{0,5}"));
            r.AddColumn(new ReportColumn("Tdr", "TDR", "{0,5}"));
            r.AddColumn(new ReportColumn("YDc", "YDC", "{0,5}"));
            r.AddColumn(new ReportColumn("TDc", "TDC", "{0,5}"));
            r.AddColumn(new ReportColumn("Fg", "Fg", "{0,5}"));
             }
             r.AddColumn(new ReportColumn("Points", "POINTS", "{0,5}"));

             var dt = ds.Tables[0];
             dt.DefaultView.Sort = LongStats
            ? (string.IsNullOrEmpty(sortOrder) ? "Points DESC" : sortOrder) : "Points DESC";

             r.LoadBody(dt); //  just assigns the data table
             FileOut = string.Format("{0}{1}.htm", Utility.OutputDirectory(), sHead);
             r.RenderAsHtml( FileOut, true);

             if (RenderToCsv)
            r.RenderAsCsv("Starters-" + sHead);
             return FileOut;
        }
Exemple #11
0
        public DataSet LoadData(ArrayList plyrList, IRatePlayers scorer)
        {
            var ds   = new DataSet();
            var dt   = new DataTable();
            var cols = dt.Columns;

            cols.Add("Name", typeof(String));
            cols.Add("Pos", typeof(String));
            cols.Add("Role", typeof(String));
            cols.Add("RookieYr", typeof(String));
            cols.Add("Age", typeof(String));
            cols.Add("Currteam", typeof(String));
            cols.Add("FT", typeof(String));

            if (LongStats)
            {
                cols.Add("CurScores", typeof(Int32));
                cols.Add("Scores", typeof(Int32));
                cols.Add("Avg", typeof(Decimal));
                cols.Add("Injury", typeof(Int32));
                cols.Add("Tdp", typeof(Int32));
                cols.Add("YDp", typeof(Int32));
                cols.Add("Tdr", typeof(Int32));
                cols.Add("TDc", typeof(Int32));
                cols.Add("YDr", typeof(Int32));
                cols.Add("YDc", typeof(Int32));
                cols.Add("Fg", typeof(Int32));
            }

            cols.Add("Points", typeof(Decimal));
            cols.Add("PFP", typeof(Decimal));
            cols.Add("ADP", typeof(Int32));

            if (Season == null)
            {
                Season = Utility.CurrentSeason();
            }

            foreach (NFLPlayer p in plyrList)
            {
                if (p.TotStats == null)
                {
                    p.LoadPerformances(false, true, Season);                                         //  to get the stats
                }
                //  rate the last whatevr weeks
                var theWeek = WeekMaster != null?
                              WeekMaster.GetWeek(Season, Week) : new NFLWeek(Int32.Parse(Season), Week, loadGames: true);

                var totPoints = 0M;
                for (var w = WeeksToGoBack; w > 0; w--)
                {
                    if (scorer != null)
                    {
                        scorer.RatePlayer(p, theWeek);
                    }
                    totPoints += p.Points;
                    theWeek    = WeekMaster != null?WeekMaster.PreviousWeek(theWeek)
                                     : theWeek.PreviousWeek(theWeek, false, false);
                }

                if (totPoints <= 0 && SupressZeros)
                {
                    continue;
                }

                var dr = dt.NewRow();
                if (RenderToCsv)
                {
                    dr["Name"] = p.PlayerName;
                }
                else
                {
                    dr["Name"] = p.ProjectionLink(Season);
                }

                dr["Pos"]      = p.PlayerPos;
                dr["Role"]     = p.RoleOut();
                dr["RookieYr"] = p.RookieYear + "-" + p.Drafted;
                dr["CurrTeam"] = p.TeamCode;
                dr["FT"]       = p.Owner;
                dr["Age"]      = p.PlayerAge();

                if (LongStats)
                {
                    dr["CurSCORES"] = p.CurrScores;
                    dr["SCORES"]    = p.Scores;
                    dr["Avg"]       = p.ScoresPerYear();
                    dr["INJURY"]    = p.Injuries();
                    dr["Tdp"]       = p.TotStats.Tdp;
                    dr["YDp"]       = p.TotStats.YDp;
                    dr["Tdr"]       = p.TotStats.Tdr;
                    dr["TDc"]       = p.TotStats.Tdc;
                    dr["YDr"]       = p.TotStats.YDr;
                    dr["YDc"]       = p.TotStats.YDc;
                    dr["Fg"]        = p.TotStats.Fg;
                }

                dr["Points"] = totPoints;
                dr["PFP"]    = p.Rating;
                dr["ADP"]    = p.Adp;
                dt.Rows.Add(dr);
            }
            ds.Tables.Add(dt);

            return(ds);
        }
Exemple #12
0
        public string RenderData(
            ArrayList playerList,
            string sHead,
            [Optional] string sortOrder,
            IRatePlayers scorer)
        {
            //  Output the list
            Utility.Announce("PlayerListing " + sHead);
            var r = new SimpleTableReport
            {
                ReportHeader = sHead,
                DoRowNumbers = true
            };

            if (!string.IsNullOrEmpty(SubHeader))
            {
                r.SubHeader = SubHeader;
            }

            var ds = LoadData(playerList, scorer);                  //  <--action

            r.AddColumn(new ReportColumn("Name", "NAME", "{0,-15}"));
            r.AddColumn(new ReportColumn("Pos", "POS", "{0,9}"));
            r.AddColumn(new ReportColumn("Role", "ROLE", "{0,9}"));
            r.AddColumn(new ReportColumn("RookieYr", "ROOKIEYR", "{0,4}"));
            r.AddColumn(new ReportColumn("Team", "CURRTEAM", "{0,2}"));
            r.AddColumn(new ReportColumn("Age", "AGE", "{0,2}"));
            r.AddColumn(new ReportColumn("Owner", "FT", "{0,2}"));
            if (LongStats)
            {
                r.AddColumn(new ReportColumn("Curr", "CURSCORES", "{0,5}"));
                r.AddColumn(new ReportColumn("Tot", "SCORES", "{0,5}"));
                r.AddColumn(new ReportColumn("Avg", "AVG", "{0:0.0}"));
                r.AddColumn(new ReportColumn("Inj", "INJURY", "{0,5}"));
                r.AddColumn(new ReportColumn("YDp", "YDP", "{0,5}"));
                r.AddColumn(new ReportColumn("Tdp", "TDP", "{0,5}"));
                r.AddColumn(new ReportColumn("YDr", "YDR", "{0,5}"));
                r.AddColumn(new ReportColumn("Tdr", "TDR", "{0,5}"));
                r.AddColumn(new ReportColumn("YDc", "YDC", "{0,5}"));
                r.AddColumn(new ReportColumn("TDc", "TDC", "{0,5}"));
                r.AddColumn(new ReportColumn("Fg", "Fg", "{0,5}"));
            }
            r.AddColumn(new ReportColumn("Points", "POINTS", "{0,5}"));

            var dt = ds.Tables[0];

            dt.DefaultView.Sort = LongStats
                           ? (string.IsNullOrEmpty(sortOrder) ? "Points DESC" : sortOrder)
                                                                 : "Points DESC";

            r.LoadBody(dt);
            if (string.IsNullOrEmpty(FileOut))
            {
                FileOut = $@"{
					Utility.OutputDirectory()
					}//{
					Utility.CurrentSeason()
					}//{
					sHead
					}.htm"                    ;
            }
            r.RenderAsHtml(fileName: FileOut, persist: true);

            if (RenderToCsv)
            {
                r.RenderAsCsv("Starters-" + sHead, Logger);
            }
            return(FileOut);
        }
Exemple #13
0
        public DataSet LoadProjectedData(
            ArrayList plyrList,
            IRatePlayers scorer,
            IWeekMaster weekMaster,
            IAdpMaster adpMaster = null)
        {
            var ds = new DataSet();
            var dt = new DataTable();

            DefineReportColumns(dt);

            if (Season == null)
            {
                Season = Utility.CurrentSeason();
            }

            var dao = new DbfPlayerGameMetricsDao();

            foreach (NFLPlayer p in plyrList)
            {
                if (p.PlayerName.Equals("Mark Ingram"))
                {
                    Console.WriteLine("TestPlayer check");
                }

                var pgms = dao.GetSeason(Season, p.PlayerCode);

                var totPoints = 0M;
                foreach (PlayerGameMetrics pgm in pgms)
                {
                    var nWeek   = Int32.Parse(pgm.Week());
                    var theWeek = weekMaster.GetWeek(
                        season: Season,
                        week: nWeek);

                    //  We are only concerned with the first 4 weeks
                    //if (nWeek > 4)
                    //	continue;

                    // if there is no scorer it just reads the stats,
                    // this is what we want
                    if (scorer == null)
                    {
                        p.Points = pgm.CalculateProjectedFantasyPoints(p);
                    }
                    else
                    {
                        scorer.RatePlayer(p, theWeek);
                    }

                    if (p.TotStats == null)
                    {
                        p.TotStats = new PlayerStats();
                    }
                    p.TotStats.Tdp += pgm.ProjTDp;
                    p.TotStats.YDp += pgm.ProjYDp;
                    p.TotStats.Tdr += pgm.ProjTDr;
                    p.TotStats.Tdc += pgm.ProjTDc;
                    p.TotStats.YDr += pgm.ProjYDr;
                    p.TotStats.YDc += pgm.ProjYDc;
                    p.TotStats.Fg  += pgm.ProjFG;
                    totPoints      += p.Points;
                }

                if (totPoints > 0 || !SupressZeros)
                {
                    var dr = dt.NewRow();
                    dr["Name"]     = p.ProjectionLink(Season);
                    dr["Pos"]      = p.PlayerPos;
                    dr["Role"]     = p.RoleOut();
                    dr["RookieYr"] = p.RookieYear;
                    dr["CurrTeam"] = p.TeamCode;
                    if (ShowOpponent)
                    {
                        dr["Opponent"] = p.Opponent;
                        dr["Spread"]   = p.PlayerSpread;
                        dr["OppRate"]  = p.OppRate;
                    }
                    if (p.Owner == null)
                    {
                        p.LoadOwner();
                    }
                    dr["FT"]  = p.Owner;
                    dr["Age"] = p.PlayerAge();

                    if (LongStats)
                    {
                        dr["cat"]       = p.PlayerCat;
                        dr["scoremod"]  = p.ScoreModifier();
                        dr["seasons"]   = p.NoOfSeasons();
                        dr["newteam"]   = p.IsNewbie() ? "*" : string.Empty;
                        dr["CurSCORES"] = p.CurrScores;
                        dr["SCORES"]    = p.Scores;
                        dr["Avg"]       = p.ScoresPerYear();
                        dr["INJURY"]    = p.Injuries();
                        dr["Tdp"]       = p.TotStats.Tdp;
                        dr["YDp"]       = p.TotStats.YDp;
                        dr["Tdr"]       = p.TotStats.Tdr;
                        dr["TDc"]       = p.TotStats.Tdc;
                        dr["YDr"]       = p.TotStats.YDr;
                        dr["YDc"]       = p.TotStats.YDc;
                        dr["Fg"]        = p.TotStats.Fg;
                        dr["Health"]    = p.HealthRating();
                        dr["newbie"]    = 1.0M - p.NewbieModifier();
                        dr["adjProj"]   = AdjustedPoints(
                            p,
                            totPoints);
                        dr["AgeRate"] = p.AgeRating();
                    }

                    dr["Points"] = totPoints;
                    if (!LongStats)
                    {
                        dr["Points"] = (int)AdjustedPoints(
                            p,
                            totPoints);
                    }

                    dr["Adp"] = AsDraftRound(p.Adp);
                    if (adpMaster != null)
                    {
                        dr["Adp"] = adpMaster.GetAdp(
                            p.PlayerName);
                    }
                    dt.Rows.Add(dr);
                    //Logger.Trace($"{p.PlayerName:-20} {totPoints:0.0}");
                }
            }
            ds.Tables.Add(dt);
            return(ds);
        }
Exemple #14
0
        public DataSet LoadData(
            ArrayList plyrList,
            IRatePlayers scorer)
        {
            var ds   = new DataSet();
            var dt   = new DataTable();
            var cols = dt.Columns;

            cols.Add("Name", typeof(String));
            cols.Add("Pos", typeof(String));
            cols.Add("Role", typeof(String));
            cols.Add("RookieYr", typeof(String));
            cols.Add("Age", typeof(String));
            cols.Add("Currteam", typeof(String));
            cols.Add("FT", typeof(String));

            if (LongStats)
            {
                cols.Add("CurScores", typeof(Int32));
                cols.Add("Scores", typeof(Int32));
                cols.Add("Avg", typeof(Decimal));
                cols.Add("Injury", typeof(Int32));
                cols.Add("Tdp", typeof(Int32));
                cols.Add("YDp", typeof(Int32));
                cols.Add("Tdr", typeof(Int32));
                cols.Add("TDc", typeof(Int32));
                cols.Add("YDr", typeof(Int32));
                cols.Add("YDc", typeof(Int32));
                cols.Add("Fg", typeof(Int32));
            }

            cols.Add("Points", typeof(Decimal));
            cols.Add("AgeRate", typeof(Decimal));
            cols.Add("ADP", typeof(Int32));

            if (Season == null)
            {
                Season = Utility.CurrentSeason();
            }

            foreach (NFLPlayer p in plyrList)
            {
                if (p.TotStats == null)
                {
                    p.LoadPerformances(
                        allGames: false,
                        currSeasonOnly: true,
                        whichSeason: Season);                         //  to get the stats
                }
                //  rate the last whatevr weeks
                var theWeek = WeekMaster != null?
                              WeekMaster.GetWeek(Season, Week)
                                  : new NFLWeek(
                                      Int32.Parse(Season),
                                      Week,
                                      loadGames: true);

                var totPoints = 0M;
                for (var w = WeeksToGoBack; w > 0; w--)
                {
                    if (scorer != null)
                    {
                        scorer.RatePlayer(
                            p,
                            theWeek);
                    }
                    totPoints += p.Points;
                    theWeek    = WeekMaster != null
                                                ? WeekMaster.PreviousWeek(theWeek)
                                           : theWeek.PreviousWeek(
                        theWeek: theWeek,
                        loadgames: false,
                        regularSeasonGamesOnly: false);
                }

                if (totPoints <= 0 && SupressZeros)
                {
                    continue;
                }

                DataRow dr = PopulatePlayerRow(dt, p, totPoints);
                dt.Rows.Add(dr);
            }
            ds.Tables.Add(dt);

            return(ds);
        }
Exemple #15
0
        public DataSet LoadProjectedData(ArrayList plyrList, IRatePlayers scorer)
        {
            var ds   = new DataSet();
            var dt   = new DataTable();
            var cols = dt.Columns;

            cols.Add("Name", typeof(String));
            cols.Add("Pos", typeof(String));
            cols.Add("Role", typeof(String));
            cols.Add("RookieYr", typeof(String));
            cols.Add("Age", typeof(String));
            cols.Add("Currteam", typeof(String));
            cols.Add("Opponent", typeof(String));
            cols.Add("Spread", typeof(String));
            cols.Add("OppRate", typeof(String));
            cols.Add("FT", typeof(String));

            if (LongStats)
            {
                cols.Add("CurScores", typeof(Int32));
                cols.Add("Scores", typeof(Int32));
                cols.Add("Avg", typeof(Decimal));
                cols.Add("Injury", typeof(Int32));
                cols.Add("Tdp", typeof(Int32));
                cols.Add("YDp", typeof(Int32));
                cols.Add("Tdr", typeof(Int32));
                cols.Add("TDc", typeof(Int32));
                cols.Add("YDr", typeof(Int32));
                cols.Add("YDc", typeof(Int32));
                cols.Add("Fg", typeof(Int32));
            }

            cols.Add("Points", typeof(Decimal));

            if (Season == null)
            {
                Season = Utility.CurrentSeason();
            }

            foreach (NFLPlayer p in plyrList)
            {
                if (p.TotStats == null)
                {
                    p.LoadPerformances(false, true, Season);                                     //  to get the stats
                }
                //  rate the last whatevr weeks
                var theWeek   = new NFLWeek(Int32.Parse(Season), Week, false);               // start here
                var totPoints = 0M;
                if (scorer != null)
                {
                    scorer.RatePlayer(p, theWeek);
                }
                totPoints += p.Points;

                if (totPoints > 0 || !SupressZeros)
                {
                    var dr = dt.NewRow();
                    dr["Name"]     = p.PlayerName;
                    dr["Pos"]      = p.PlayerPos;
                    dr["Role"]     = p.RoleOut();
                    dr["RookieYr"] = p.RookieYear;
                    dr["CurrTeam"] = p.TeamCode;
                    dr["Opponent"] = p.Opponent;
                    dr["Spread"]   = p.PlayerSpread;
                    dr["OppRate"]  = p.OppRate;
                    dr["FT"]       = p.Owner;
                    dr["Age"]      = p.PlayerAge();

                    if (LongStats)
                    {
                        dr["CurSCORES"] = p.CurrScores;
                        dr["SCORES"]    = p.Scores;
                        dr["Avg"]       = p.ScoresPerYear();
                        dr["INJURY"]    = p.Injuries();
                        dr["Tdp"]       = p.TotStats.Tdp;
                        dr["YDp"]       = p.TotStats.YDp;
                        dr["Tdr"]       = p.TotStats.Tdr;
                        dr["TDc"]       = p.TotStats.Tdc;
                        dr["YDr"]       = p.TotStats.YDr;
                        dr["YDc"]       = p.TotStats.YDc;
                        dr["Fg"]        = p.TotStats.Fg;
                    }

                    dr["Points"] = totPoints;
                    dt.Rows.Add(dr);
                }
            }
            ds.Tables.Add(dt);

            return(ds);
        }
 public RenderStatsToWeekly(IRatePlayers scorerIn)
 {
     _scorer = scorerIn;
 }
        public DataSet LoadProjectedData( ArrayList plyrList, IRatePlayers scorer, IWeekMaster weekMaster )
        {
            var ds = new DataSet();
             var dt = new DataTable();
             var cols = dt.Columns;
             cols.Add("Name", typeof (String));
             cols.Add("Pos", typeof (String));
             cols.Add("Role", typeof (String));
             cols.Add("RookieYr", typeof (String));
             cols.Add("Age", typeof (String));
             cols.Add("Currteam", typeof (String));
             if (ShowOpponent)
             {
            cols.Add("Opponent", typeof(String));
            cols.Add("Spread", typeof(String));
            cols.Add("OppRate", typeof(String));
             }
             cols.Add("FT", typeof (String));

             if (LongStats)
             {
            cols.Add("CurScores", typeof (Int32));
            cols.Add("Scores", typeof (Int32));
            cols.Add("Avg", typeof (Decimal));
            cols.Add("Injury", typeof (Int32));
            cols.Add("Tdp", typeof (Int32));
            cols.Add("YDp", typeof (Int32));
            cols.Add("Tdr", typeof (Int32));
            cols.Add("TDc", typeof (Int32));
            cols.Add("YDr", typeof (Int32));
            cols.Add("YDc", typeof (Int32));
            cols.Add("Fg", typeof (Int32));
            cols.Add( "Health", typeof( Decimal ) );
            cols.Add( "AdjProj", typeof( Int32 ) );
             }

             cols.Add("Points", typeof (Decimal));

             if (Season == null) Season = Utility.CurrentSeason();

             var dao = new DbfPlayerGameMetricsDao();

             foreach (NFLPlayer p in plyrList)
             {
            var pgms = dao.GetSeason(Season, p.PlayerCode);

            var totPoints = 0M;
            foreach (PlayerGameMetrics pgm in pgms)
            {
               var theWeek = weekMaster.GetWeek( Season, Int32.Parse( pgm.Week() ) );

               // if there is no scorer it just reads the stats, this is what we want
               if ( scorer == null )
                  p.Points = pgm.CalculateProjectedFantasyPoints(p);
               else
                  scorer.RatePlayer( p, theWeek );

               if ( p.TotStats == null) p.TotStats = new PlayerStats();
               p.TotStats.Tdp += pgm.ProjTDp;
               p.TotStats.YDp += pgm.ProjYDp;
               p.TotStats.Tdr += pgm.ProjTDr;
               p.TotStats.Tdc += pgm.ProjTDc;
               p.TotStats.YDr += pgm.ProjYDr;
               p.TotStats.YDc += pgm.ProjYDc;
               p.TotStats.Fg += pgm.ProjFG;
               totPoints += p.Points;
            }

            if (totPoints > 0 || !SupressZeros)
            {
               var dr = dt.NewRow();
               dr["Name"] = p.PlayerName;
               dr["Pos"] = p.PlayerPos;
               dr["Role"] = p.RoleOut();
               dr["RookieYr"] = p.RookieYear;
               dr["CurrTeam"] = p.TeamCode;
               if (ShowOpponent)
               {
                  dr["Opponent"] = p.Opponent;
                  dr["Spread"] = p.PlayerSpread;
                  dr["OppRate"] = p.OppRate;
               }
               if (p.Owner == null) p.LoadOwner();
               dr["FT"] =  p.Owner;
               dr["Age"] = p.PlayerAge();

               if (LongStats)
               {
                  dr["CurSCORES"] = p.CurrScores;
                  dr["SCORES"] = p.Scores;
                  dr["Avg"] = p.ScoresPerYear();
                  dr["INJURY"] = p.Injuries();
                  dr["Tdp"] = p.TotStats.Tdp;
                  dr["YDp"] = p.TotStats.YDp;
                  dr["Tdr"] = p.TotStats.Tdr;
                  dr["TDc"] = p.TotStats.Tdc;
                  dr["YDr"] = p.TotStats.YDr;
                  dr["YDc"] = p.TotStats.YDc;
                  dr["Fg"] = p.TotStats.Fg;
                  dr[ "Health" ] = p.HealthRating();
                  dr[ "AdjProj" ] = p.HealthRating()*totPoints;
               }

               dr["Points"] = totPoints;
               dt.Rows.Add(dr);
            }
             }
             ds.Tables.Add(dt);

             return ds;
        }
 public RenderStatsToWeekly(IRatePlayers scorerIn )
 {
     _scorer = scorerIn;
 }
 public void SetScorer(IRatePlayers ss)
 {
     _mMyScorer = ss;
 }
Exemple #20
0
        public DataSet LoadProjectedData(
            ArrayList plyrList, IRatePlayers scorer, IWeekMaster weekMaster)
        {
            var ds   = new DataSet();
            var dt   = new DataTable();
            var cols = dt.Columns;

            cols.Add("Name", typeof(String));
            cols.Add("Pos", typeof(String));
            cols.Add("Role", typeof(String));
            cols.Add("RookieYr", typeof(String));
            cols.Add("Age", typeof(String));
            cols.Add("Currteam", typeof(String));
            if (ShowOpponent)
            {
                cols.Add("Opponent", typeof(String));
                cols.Add("Spread", typeof(String));
                cols.Add("OppRate", typeof(String));
            }
            cols.Add("FT", typeof(String));

            if (LongStats)
            {
                cols.Add("CurScores", typeof(Int32));
                cols.Add("Scores", typeof(Int32));
                cols.Add("Avg", typeof(Decimal));
                cols.Add("Injury", typeof(Int32));
                cols.Add("Tdp", typeof(Int32));
                cols.Add("YDp", typeof(Int32));
                cols.Add("Tdr", typeof(Int32));
                cols.Add("TDc", typeof(Int32));
                cols.Add("YDr", typeof(Int32));
                cols.Add("YDc", typeof(Int32));
                cols.Add("Fg", typeof(Int32));
                cols.Add("Health", typeof(Decimal));
                cols.Add("AdjProj", typeof(Int32));
            }

            cols.Add("Points", typeof(Decimal));
            cols.Add("PFP", typeof(Int32));
            cols.Add("Adp", typeof(Int32));

            if (Season == null)
            {
                Season = Utility.CurrentSeason();
            }

            var dao = new DbfPlayerGameMetricsDao();

            foreach (NFLPlayer p in plyrList)
            {
                var pgms = dao.GetSeason(Season, p.PlayerCode);

                var totPoints = 0M;
                foreach (PlayerGameMetrics pgm in pgms)
                {
                    var theWeek = weekMaster.GetWeek(Season, Int32.Parse(pgm.Week()));

                    // if there is no scorer it just reads the stats, this is what we want
                    if (scorer == null)
                    {
                        p.Points = pgm.CalculateProjectedFantasyPoints(p);
                    }
                    else
                    {
                        scorer.RatePlayer(p, theWeek);
                    }

                    if (p.TotStats == null)
                    {
                        p.TotStats = new PlayerStats();
                    }
                    p.TotStats.Tdp += pgm.ProjTDp;
                    p.TotStats.YDp += pgm.ProjYDp;
                    p.TotStats.Tdr += pgm.ProjTDr;
                    p.TotStats.Tdc += pgm.ProjTDc;
                    p.TotStats.YDr += pgm.ProjYDr;
                    p.TotStats.YDc += pgm.ProjYDc;
                    p.TotStats.Fg  += pgm.ProjFG;
                    totPoints      += p.Points;
                }

                if (totPoints > 0 || !SupressZeros)
                {
                    var dr = dt.NewRow();
                    dr["Name"]     = p.PlayerName;
                    dr["Pos"]      = p.PlayerPos;
                    dr["Role"]     = p.RoleOut();
                    dr["RookieYr"] = p.RookieYear;
                    dr["CurrTeam"] = p.TeamCode;
                    if (ShowOpponent)
                    {
                        dr["Opponent"] = p.Opponent;
                        dr["Spread"]   = p.PlayerSpread;
                        dr["OppRate"]  = p.OppRate;
                    }
                    if (p.Owner == null)
                    {
                        p.LoadOwner();
                    }
                    dr["FT"]  = p.Owner;
                    dr["Age"] = p.PlayerAge();

                    if (LongStats)
                    {
                        dr["CurSCORES"] = p.CurrScores;
                        dr["SCORES"]    = p.Scores;
                        dr["Avg"]       = p.ScoresPerYear();
                        dr["INJURY"]    = p.Injuries();
                        dr["Tdp"]       = p.TotStats.Tdp;
                        dr["YDp"]       = p.TotStats.YDp;
                        dr["Tdr"]       = p.TotStats.Tdr;
                        dr["TDc"]       = p.TotStats.Tdc;
                        dr["YDr"]       = p.TotStats.YDr;
                        dr["YDc"]       = p.TotStats.YDc;
                        dr["Fg"]        = p.TotStats.Fg;
                        dr["Health"]    = p.HealthRating();
                        dr["AdjProj"]   = p.HealthRating() * totPoints;
                    }

                    dr["Points"] = totPoints;
                    dr["PFP"]    = p.Rating;
                    dr["Adp"]    = p.Adp;
                    dt.Rows.Add(dr);
                    //Logger.Info( $"{p.PlayerName:-20} {totPoints:0.0}" );
                }
            }
            ds.Tables.Add(dt);

            return(ds);
        }
 public void SetScorer(IRatePlayers ss)
 {
     _mMyScorer = ss;
 }
        public DataSet LoadData(ArrayList plyrList, IRatePlayers scorer)
        {
            var ds = new DataSet();
             var dt = new DataTable();
             var cols = dt.Columns;
             cols.Add("Name", typeof (String));
             cols.Add("Pos", typeof (String));
             cols.Add("Role", typeof (String));
             cols.Add("RookieYr", typeof (String));
             cols.Add("Age", typeof (String));
             cols.Add("Currteam", typeof (String));
             cols.Add("FT", typeof (String));

             if (LongStats)
             {
            cols.Add("CurScores", typeof (Int32));
            cols.Add("Scores", typeof (Int32));
            cols.Add("Avg", typeof (Decimal));
            cols.Add("Injury", typeof (Int32));
            cols.Add("Tdp", typeof (Int32));
            cols.Add("YDp", typeof (Int32));
            cols.Add("Tdr", typeof (Int32));
            cols.Add("TDc", typeof (Int32));
            cols.Add("YDr", typeof (Int32));
            cols.Add("YDc", typeof (Int32));
            cols.Add("Fg", typeof (Int32));
             }

             cols.Add("Points", typeof (Decimal));

             if (Season == null) Season = Utility.CurrentSeason();

             foreach (NFLPlayer p in plyrList)
             {
            if (p.TotStats == null) p.LoadPerformances(false, true, Season); //  to get the stats

            //  rate the last whatevr weeks
            var theWeek = WeekMaster != null ?
               WeekMaster.GetWeek( Season, Week ) : new NFLWeek(Int32.Parse(Season), Week, loadGames:true);

            var totPoints = 0M;
            for (var w = WeeksToGoBack; w > 0; w--)
            {
               if (scorer != null) scorer.RatePlayer(p, theWeek);
               totPoints += p.Points;
               theWeek = WeekMaster != null ? WeekMaster.PreviousWeek( theWeek )
                  : theWeek.PreviousWeek(theWeek,false,false);
            }

            if (totPoints <= 0 && SupressZeros) continue;

            var dr = dt.NewRow();
            if ( RenderToCsv )
               dr[ "Name" ] = p.PlayerName;
            else
               dr[ "Name" ] = p.ProjectionLink( Season );

            dr["Pos"] = p.PlayerPos;
            dr["Role"] = p.RoleOut();
            dr["RookieYr"] = p.RookieYear +"-"+p.Drafted;
            dr["CurrTeam"] = p.TeamCode;
            dr["FT"] = p.Owner;
            dr["Age"] = p.PlayerAge();

            if (LongStats)
            {
               dr["CurSCORES"] = p.CurrScores;
               dr["SCORES"] = p.Scores;
               dr["Avg"] = p.ScoresPerYear();
               dr["INJURY"] = p.Injuries();
               dr["Tdp"] = p.TotStats.Tdp;
               dr["YDp"] = p.TotStats.YDp;
               dr["Tdr"] = p.TotStats.Tdr;
               dr["TDc"] = p.TotStats.Tdc;
               dr["YDr"] = p.TotStats.YDr;
               dr["YDc"] = p.TotStats.YDc;
               dr["Fg"] = p.TotStats.Fg;
            }

            dr["Points"] = totPoints;
            dt.Rows.Add(dr);
             }
             ds.Tables.Add(dt);

             return ds;
        }