Exemple #1
0
        /* M E R G E */
        /*----------------------------------------------------------------------------
            %%Function: Merge
            %%Qualified: ArbWeb.SlotCount.Merge
            %%Contact: rlittle

        ----------------------------------------------------------------------------*/
        public SlotCount Merge(SlotCount sc)
        {
            SlotCount scNew = new SlotCount();

            scNew.m_dttmSlot = m_dttmSlot;
            scNew.m_mpSportCount = new Dictionary<string, int>();
            scNew.m_mpSportLevelCount = new Dictionary<string, int>();
            scNew.m_mpSiteCount = new Dictionary<string, int>();

            foreach (string sSport in m_mpSportCount.Keys)
                {
                int c = m_mpSportCount[sSport];

                if (sc.m_mpSportCount.ContainsKey(sSport))
                    c += sc.m_mpSportCount[sSport];
                scNew.m_mpSportCount.Add(sSport, c);
                }

            foreach (string sSport in sc.m_mpSportCount.Keys)
                {
                int c = sc.m_mpSportCount[sSport];

                if (!m_mpSportCount.ContainsKey(sSport))
                    scNew.m_mpSportCount.Add(sSport, c);
                }

            foreach (string sSport in m_mpSportLevelCount.Keys)
                {
                int c = m_mpSportLevelCount[sSport];

                if (sc.m_mpSportLevelCount.ContainsKey(sSport))
                    c += sc.m_mpSportLevelCount[sSport];
                scNew.m_mpSportLevelCount.Add(sSport, c);
                }

            foreach (string sSport in sc.m_mpSportLevelCount.Keys)
                {
                int c = sc.m_mpSportLevelCount[sSport];

                if (!m_mpSportLevelCount.ContainsKey(sSport))
                    scNew.m_mpSportLevelCount.Add(sSport, c);
                }

            foreach (string sSport in m_mpSiteCount.Keys)
                {
                int c = m_mpSiteCount[sSport];

                if (sc.m_mpSiteCount.ContainsKey(sSport))
                    c += sc.m_mpSiteCount[sSport];
                scNew.m_mpSiteCount.Add(sSport, c);
                }

            foreach (string sSport in sc.m_mpSiteCount.Keys)
                {
                int c = sc.m_mpSiteCount[sSport];

                if (!m_mpSiteCount.ContainsKey(sSport))
                    scNew.m_mpSiteCount.Add(sSport, c);
                }

            return scNew;
        }
Exemple #2
0
        public bool FMatchFuzzyTime(SlotCount sc)
        {
            if (sc.Dttm.Date == m_dttmSlot.Date)
                {
                if (sc.Dttm.Hour < 12 && m_dttmSlot.Hour < 12)
                    return true;

                if ((sc.Dttm.Hour >= 12 && sc.Dttm.Hour < 16)
                    && (m_dttmSlot.Hour >= 12 && m_dttmSlot.Hour < 16))
                    return true;

                if (sc.Dttm.Hour >= 16 && m_dttmSlot.Hour >= 16)
                    return true;
                }
            return false;
        }