private void GeneratePersonaContactHistoryRecords() { var contactsWithoutPersona = 2658; var contactsInB2BPersona = 426; var contactsInB2CPersona = 1037; var personaInfoByCodeName1 = PersonaInfoProvider.GetPersonaInfoByCodeName(PERSONA_CAFE_OWNER); var personaInfoByCodeName2 = PersonaInfoProvider.GetPersonaInfoByCodeName(PERSONA_COFEE_GEEK); var now = DateTime.Now; var dateTime1 = now.AddDays(30.0); var dateTime2 = now.AddDays(-60.0); var collection = new Collection <PersonaContactHistoryInfo>(); for (var time = dateTime2; time < dateTime1; time = time.AddDays(1.0)) { IncreaseContactsCount(time, now, ref contactsWithoutPersona, ref contactsInB2BPersona, ref contactsInB2CPersona); ChangeCountsIfCampaign1IsRunning(time, now, ref contactsInB2CPersona); ChangeCountsIfCampaign2IsSendingMails(time, now, ref contactsWithoutPersona, ref contactsInB2CPersona); ChangeCountsWhenPersonaRulesChanged(time, now, ref contactsWithoutPersona, ref contactsInB2BPersona, ref contactsInB2CPersona); collection.Add(CreatePersonaContactHistoryInfo(contactsWithoutPersona, time, new int?())); collection.Add(CreatePersonaContactHistoryInfo(contactsInB2BPersona, time, personaInfoByCodeName1.PersonaID)); collection.Add(CreatePersonaContactHistoryInfo(contactsInB2CPersona, time, personaInfoByCodeName2.PersonaID)); } PersonaContactHistoryInfoProvider.BulkInsert(collection); }
private void GeneratePersonaContactHistory() { PersonaContactHistoryInfoProvider.GetPersonaContactHistory().ForEachObject( PersonaContactHistoryInfoProvider .DeletePersonaContactHistoryInfo); GeneratePersonaContactHistoryRecords(); }