/* 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; }
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; }