private ModelData[] createDtosForMap(WorkflowObject workflowObject, ClarifyGenericMapEntry genericMap, IEnumerable <ClarifyDataRow> records) { var rows = new List <ModelData>(); foreach (var record in records) { var row = new ModelData { Name = genericMap.Model.ModelName, Entity = genericMap.Entity }; populateDTOForGenericRecord(genericMap, record, row); genericMap.Tags.Each(_ => row.AddTag(_)); var cancellationPolicies = genericMap .Transforms .OfType <ConfiguredCancellationPolicy>() .ToList(); var shouldAdd = !cancellationPolicies.Any() || (cancellationPolicies.Any() && cancellationPolicies.All(_ => !(bool)_.Execute(row, _services))); if (shouldAdd) { var actCode = row.Get <int>("type"); row["activityName"] = _listCache.GetLocalizedTitleByRank("Activity Name", actCode); row["isChild"] = workflowObject.IsChild; row["entity"] = workflowObject.Type; rows.Add(row); } } return(rows.ToArray()); }
private string formatMessage(string message, ModelData data) { var log = new StringBuilder(); var from = data.Get <string>("sender"); var to = data.Get <string>("recipient"); var cclist = ""; if (data.Has("ccList")) { cclist = data.Get <string>("ccList"); if (cclist != null) { cclist = cclist.Trim(); } } var subject = data.Get <string>("subject") ?? ""; var isoDate = data.Get <DateTime>("timestamp").ToString("s", CultureInfo.InvariantCulture); log.Append(HistoryParsers.BEGIN_EMAIL_LOG_HEADER); log.AppendLine("{0}: {1}{2}".ToFormat(HistoryBuilderTokens.LOG_EMAIL_DATE, HistoryParsers.BEGIN_ISODATE_HEADER, isoDate)); const string headerFormat = "{0}: {1}"; log.AppendLine(headerFormat.ToFormat(HistoryBuilderTokens.LOG_EMAIL_FROM, from)); log.AppendLine(headerFormat.ToFormat(HistoryBuilderTokens.LOG_EMAIL_TO, to)); if (cclist.IsNotEmpty()) { log.AppendLine(headerFormat.ToFormat(HistoryBuilderTokens.LOG_EMAIL_CC, cclist)); } if (subject.IsNotEmpty()) { log.AppendLine(headerFormat.ToFormat(HistoryBuilderTokens.LOG_EMAIL_SUBJECT, subject)); } log.Append(HistoryParsers.END_EMAIL_LOG_HEADER); log.AppendLine(message); return(log.ToString()); }
public override object Execute(ModelData data, IServiceLocator services) { var actCode = data.Get <int>("type"); return(actCode == _actCode && (bool)base.Execute(data, services)); }