public override void PrepereSynchronizeSubjectRemindingUserTask(SynchronizeSubjectRemindingUserTask userTask, Guid contact, DateTime remindTime, bool active, Guid source) { base.PrepereSynchronizeSubjectRemindingUserTask(userTask, contact, remindTime, active, source); bool isFeatureEnabled = FeatureUtilities.GetIsFeatureEnabled(UserConnection, "NotificationV2"); if (isFeatureEnabled) { IRemindingTextFormer textFormer = ClassFactory.Get <ActivityRemindingTextFormer>( new ConstructorArgument("userConnection", UserConnection)); string accountName = GetLookupDisplayColumnValue(Entity, "Account"); string contactName = GetLookupDisplayColumnValue(Entity, "Contact"); string title = Entity.GetTypedColumnValue <string>("Title"); userTask.SubjectCaption = textFormer.GetBody(new Dictionary <string, object> { { "AccountName", accountName }, { "ContactName", contactName }, { "Title", title } }); userTask.PopupTitle = textFormer.GetTitle(new Dictionary <string, object>()); } }
private Reminding GetReminding(IDataReader reader) { var contactId = reader.GetColumnValue <Guid>("ReceiverId"); var entityId = reader.GetColumnValue <Guid>("Id"); var entityName = reader.GetColumnValue <string>("Name"); var sysEntitySchemaId = reader.GetColumnValue <Guid>("SubjectId"); var schema = UserConnection.EntitySchemaManager.GetItemByUId(sysEntitySchemaId); var dateString = reader.GetColumnValue <string>("SubjectCaption"); var anniversaryBaseDate = reader.GetColumnValue <DateTime>("AnniversaryBaseDate"); IRemindingTextFormer textFormer = ClassFactory.Get <AnniversaryRemindingTextFormer>( new ConstructorArgument("userConnection", UserConnection)); var title = textFormer.GetTitle(new Dictionary <string, object> { { "SchemaName", schema.Name } }); var body = textFormer.GetBody(new Dictionary <string, object> { { "SchemaName", schema.Name }, { "EntityId", entityId }, { "EntityName", entityName }, { "Date", dateString } }); var reminding = new Reminding(_userConnection); reminding.SetDefColumnValues(); reminding.RemindTime = reader.GetColumnValue <DateTime>("RemindTime"); reminding.Description = title; reminding.PopupTitle = title; reminding.ContactId = contactId; reminding.SubjectCaption = body; reminding.SubjectId = entityId; reminding.SourceId = SourceId; reminding.SenderId = sysEntitySchemaId; reminding.SysEntitySchemaId = sysEntitySchemaId; reminding.NotificationTypeId = RemindingConsts.NotificationTypeAnniversaryId; reminding.TypeCaption = dateString; reminding.AnniversaryDate = new DateTime(DateTime.Today.Year, anniversaryBaseDate.Month, anniversaryBaseDate.Day); return(reminding); }