Пример #1
0
        /* G E N  O P E N  S L O T S  R E P O R T */
        /*----------------------------------------------------------------------------
            %%Function: GenOpenSlotsReport
            %%Qualified: ArbWeb.CountsData.GenOpenSlotsReport
            %%Contact: rlittle

        ----------------------------------------------------------------------------*/
        public void GenOpenSlotsReport(string sReport, bool fDetail, bool fFuzzyTimes, bool fDatePivot, string[] rgsSportFilter, string[] rgsSportLevelFilter, SlotAggr sa)
        {
            m_gmd.GenOpenSlotsReport(sReport, fDetail, fFuzzyTimes, fDatePivot, rgsSportFilter, rgsSportLevelFilter, sa);
        }
Пример #2
0
        /* C A L C  O P E N  S L O T S  W O R K */
        /*----------------------------------------------------------------------------
	    	%%Function: CalcOpenSlotsWork
	    	%%Qualified: ArbWeb.AwMainForm.CalcOpenSlotsWork
	    	%%Contact: rlittle
	    	
	    ----------------------------------------------------------------------------*/
        private CountsData CalcOpenSlotsWork()
        {
            m_srpt.AddMessage("Calculating slot data...", StatusRpt.MSGT.Header, false);

            CountsData gc = GcEnsure(m_ebRosterWorking.Text, m_ebGameCopy.Text, m_cbIncludeCanceled.Checked);
            Roster rst = RstEnsure(m_ebRosterWorking.Text);

            m_srpt.PopLevel();
            m_srpt.AddMessage("Calculating open slots...", StatusRpt.MSGT.Header, false);
            m_saOpenSlots = gc.CalcOpenSlots(m_dtpStart.Value, m_dtpEnd.Value);
            return gc;
        }
Пример #3
0
 public string[] GetSiteRosterSites(SlotAggr sa)
 {
     return m_gmd.GetSiteRosterSites(sa);
 }
Пример #4
0
        /* G A M E S  F R O M  F I L T E R */
        /*----------------------------------------------------------------------------
            %%Function: GamesFromFilter
            %%Qualified: ArbWeb.CountsData.GamesFromFilter
            %%Contact: rlittle

        ----------------------------------------------------------------------------*/
        public GameData.GameSlots GamesFromFilter(string[] rgsSportFilter, string[] rgsSportLevelFilter, bool fOpenOnly, SlotAggr sa)
        {
            return m_gmd.GamesFromFilter(rgsSportFilter, rgsSportLevelFilter, fOpenOnly, sa);
        }
Пример #5
0
            public string[] GetSiteRosterSites(SlotAggr sa)
            {
                List<string> plsSports = new List<string>();
                List<string> plsSites = new List<string>();

                foreach (GameSlot gm in m_plgmsSorted.Values)
                    {
                    if (gm.Dttm < sa.DttmStart || gm.Dttm > sa.DttmEnd)
                        continue;

                    if (!plsSports.Contains(gm.SportLevel))
                        plsSports.Add(gm.SportLevel);

                    if (!plsSites.Contains(gm.SiteShort))
                        plsSites.Add(gm.SiteShort);
                    }
                return plsSites.ToArray();
            }
Пример #6
0
        /* G E T  O P E N  S L O T  S P O R T S */
        /*----------------------------------------------------------------------------
            %%Function: GetOpenSlotSports
            %%Qualified: ArbWeb.CountsData.GetOpenSlotSports
            %%Contact: rlittle

        ----------------------------------------------------------------------------*/
        public string[] GetOpenSlotSports(SlotAggr sa)
        {
            return m_gmd.GetOpenSlotSports(sa);
        }
Пример #7
0
            /* G E N  O P E N  S L O T S  R E P O R T */
            /*----------------------------------------------------------------------------
                    %%Function: GenOpenSlotsReport
                    %%Qualified: ArbWeb.CountsData:GameData:Games.GenOpenSlotsReport
                    %%Contact: rlittle

                ----------------------------------------------------------------------------*/
            public void GenOpenSlotsReport(string sReport, bool fDetail, bool fFuzzyTimes, bool fDatePivot, string[] rgsSportFilter, string[] rgsSportLevelFilter, SlotAggr sa)
            {
                if (fDetail)
                    GenOpenSlotsReportDetail(sReport, rgsSportFilter, rgsSportLevelFilter, sa);
                else
                    GenOpenSlotsReport(sReport, rgsSportFilter, rgsSportLevelFilter, fFuzzyTimes, fDatePivot, sa);
            }
Пример #8
0
            /* G E T  O P E N  S L O T  S P O R T S */
            /*----------------------------------------------------------------------------
                    %%Function: GetOpenSlotSports
                    %%Qualified: ArbWeb.CountsData:GameData:Games.GetOpenSlotSports
                    %%Contact: rlittle

                ----------------------------------------------------------------------------*/
            public string[] GetOpenSlotSports(SlotAggr sa)
            {
                string[] rgs = new string[sa.Sports.Length];
                sa.Sports.CopyTo(rgs, 0);
                return rgs;
            }
Пример #9
0
            /* G A M E S  F R O M  F I L T E R */
            /*----------------------------------------------------------------------------
                %%Function: GamesFromFilter
                %%Qualified: ArbWeb.GameData.Games.GamesFromFilter
                %%Contact: rlittle

            ----------------------------------------------------------------------------*/
            public GameSlots GamesFromFilter(string[] rgsSportFilter, string[] rgsSportLevelFilter, bool fOpenOnly, SlotAggr sa)
            {
                GameSlots gms = new GameSlots(m_srpt);

                DateTime dttmStart = sa.DttmStart;
                DateTime dttmEnd = sa.DttmEnd;

                SortedList<string, int> plsSports = Utils.PlsUniqueFromRgs(rgsSportFilter);
                SortedList<string, int> plsLevels = Utils.PlsUniqueFromRgs(rgsSportLevelFilter);

                foreach (GameSlot gm in m_plgmsSorted.Values)
                    {
                    if (!gm.Open && fOpenOnly)
                        continue;

                    if (DateTime.Compare(gm.Dttm, dttmStart) < 0 || DateTime.Compare(gm.Dttm, dttmEnd) > 0)
                        continue;

                    if (plsSports != null && !(plsSports.ContainsKey(gm.Sport)))
                        continue;

                    if (plsLevels != null && !(plsLevels.ContainsKey(gm.SportLevel)))
                        continue;

                    gms.AddGame(gm);
                    }
                return gms;
            }
Пример #10
0
            /* G E N  O P E N  S L O T S  R E P O R T  D E T A I L */
            /*----------------------------------------------------------------------------
                    %%Function: GenOpenSlotsReportDetail
                    %%Qualified: ArbWeb.CountsData:GameData:Games.GenOpenSlotsReportDetail
                    %%Contact: rlittle

                    Generate a report of open slots
                ----------------------------------------------------------------------------*/
            private void GenOpenSlotsReportDetail(string sReport, string[] rgsSportFilter, string[] rgsSportLevelFilter, SlotAggr sa)
            {
                DateTime dttmStart = sa.DttmStart;
                DateTime dttmEnd = sa.DttmEnd;

                StreamWriter sw = new StreamWriter(sReport, false, Encoding.Default);

                string sFormat = "<tr><td>{0}<td>{1}<td>{2}<td>{3}<td>{4}<td>{5}<td>{6}<td>{7}</tr>";

                sw.WriteLine("<html><body><table>");
                sw.WriteLine(String.Format(sFormat, "Game", "Date", "Time", "Field", "Level", "Home", "Away", "Slots"));

                SortedList<string, int> plsSports = Utils.PlsUniqueFromRgs(rgsSportFilter);
                SortedList<string, int> plsLevels = Utils.PlsUniqueFromRgs(rgsSportLevelFilter);

                foreach (GameSlot gm in m_plgmsSorted.Values)
                    {
                    if (!gm.Open)
                        continue;

                    if (DateTime.Compare(gm.Dttm, dttmStart) < 0 || DateTime.Compare(gm.Dttm, dttmEnd) > 0)
                        continue;

                    if (plsSports != null && !(plsSports.ContainsKey(gm.Sport)))
                        continue;

                    if (plsLevels != null && !(plsLevels.ContainsKey(gm.SportLevel)))
                        continue;

                    sw.WriteLine(String.Format(sFormat, gm.GameNum, gm.Dttm.ToString("MM/dd/yy ddd"), gm.Dttm.ToString("hh:mm tt"), gm.Site, String.Format("{0}, {1}", gm.Sport, gm.Level), gm.Home, gm.Away, gm.Pos));
                    }
                sw.Close();
            }
Пример #11
0
            /* G E N  O P E N  S L O T S  R E P O R T */
            /*----------------------------------------------------------------------------
                    %%Function: GenOpenSlotsReport
                    %%Qualified: ArbWeb.CountsData:GameData:Games.GenOpenSlotsReport
                    %%Contact: rlittle

                ----------------------------------------------------------------------------*/
            private void GenOpenSlotsReport(string sReport, string[] rgsSportsFilter, string[] rgsSportLevelsFilter, bool fFuzzyTimes, bool fDatePivot, SlotAggr sa)
            {
                //					sa.GenReport(sReport, rgsSportsFilter, rgsSportLevelsFilter);
                sa.GenReportBySite(sReport, fFuzzyTimes, fDatePivot, rgsSportsFilter, rgsSportLevelsFilter);
            }
Пример #12
0
        /* G E T  O P E N  S L O T  S P O R T  L E V E L S */
        /*----------------------------------------------------------------------------
                %%Function: GetOpenSlotSportLevels
                %%Qualified: ArbWeb.CountsData:GameData.GetOpenSlotSportLevels
                %%Contact: rlittle

            ----------------------------------------------------------------------------*/
        public string[] GetOpenSlotSportLevels(SlotAggr sa)
        {
            return m_gms.GetOpenSlotSportLevels(sa);
        }
Пример #13
0
        /* G E N */
        /*----------------------------------------------------------------------------
            %%Function: Gen
            %%Qualified: ArbWeb.SlotAggr.Gen
            %%Contact: rlittle

        ----------------------------------------------------------------------------*/
        public static SlotAggr Gen(SortedList<string, GameData.GameSlot> plgm, DateTime dttmStart, DateTime dttmEnd, string[] rgsSportFilter, string[] rgsSportLevelFilter, bool fOnlyOpen)
        {
            SlotAggr os = new SlotAggr();

            os.m_plgm = plgm;
            os.m_dttmStart = dttmStart;
            os.m_dttmEnd = dttmEnd;
            os.m_mpSlotSc = new SortedList<DateTime, SlotCount>();
            os.m_plsSports = new List<string>();
            os.m_plsSportLevels = new List<string>();
            os.m_plsSites = new List<string>();

            foreach (GameData.GameSlot gm in plgm.Values)
                {
                if (!gm.Open && fOnlyOpen)
                    continue;

                if (DateTime.Compare(gm.Dttm, dttmStart) < 0 || DateTime.Compare(gm.Dttm, dttmEnd) > 0)
                    continue;

                if (rgsSportFilter != null)
                    {
                    bool fMatch = false;

                    foreach (string s in rgsSportFilter)
                        if (String.Compare(gm.Sport, s, true) == 0)
                            fMatch = true;

                    if (fMatch == false)
                        continue;
                    }

                if (rgsSportLevelFilter != null)
                    {
                    bool fMatch = false;

                    foreach (string s in rgsSportLevelFilter)
                        if (String.Compare(gm.SportLevel, s, true) == 0)
                            fMatch = true;

                    if (fMatch == false)
                        continue;
                    }

                if (os.m_mpSlotSc.ContainsKey(gm.Dttm))
                    {
                    os.m_mpSlotSc[gm.Dttm].AddSlot(gm);
                    }
                else
                    {
                    os.m_mpSlotSc.Add(gm.Dttm, new SlotCount(gm));
                    }
                }

            foreach (SlotCount sc in os.m_mpSlotSc.Values)
                {
                foreach (string sSport in sc.Sports)
                    {
                    if (!os.m_plsSports.Contains(sSport))
                        os.m_plsSports.Add(sSport);
                    }
                foreach (string sSportLevel in sc.SportLevels)
                    {
                    if (!os.m_plsSportLevels.Contains(sSportLevel))
                        os.m_plsSportLevels.Add(sSportLevel);
                    }
                foreach (string sSite in sc.Sites)
                    {
                    if (!os.m_plsSites.Contains(sSite))
                        os.m_plsSites.Add(sSite);
                    }
                }
            return os;
        }