public static bool AddResponsibles(wf.Action action, wf.ParameterizedActionDefinition parameter, wf.State current, Identity identity) { var sParameter = (wf.AddResponsiblesActionDefinition)parameter; if (sParameter.ClearResponsibles) { current.Groups.Clear(); current.Persons.Clear(); } foreach (var grp in sParameter.Groups) { current.Groups.Add(grp); } foreach (var person in sParameter.Persons) { current.Persons.Add(person); } return(true); }
public static bool Schedule(wf.Action action, wf.ParameterizedActionDefinition parameter, wf.State current, Identity identity) { var sAction = (wf.SchedulerAction)action; var sParameter = (wf.ScheduledActionDefinition)parameter; DateTime dt = sAction.Schedule.GetNext(new DateTime(DateTime.Today.Year, 1, 1)); dt = sParameter.Schedule.GetRelative(dt); current.ScheduleAction(dt, sParameter.InvokeAction); return(true); }
public bool SendReminder(wf.Action action, wf.ParameterizedActionDefinition parameter, wf.State current, Identity identity) { var body = string.Format(@"Hello Arthur! This is an reminder of an open workflow item in your inbox. Best regards, your Workflow System"); var msg = new MailMessage("*****@*****.**", "*****@*****.**", "Reminder", body); _mail.Send(msg); return(true); }
public bool Forward(wf.Action action, wf.ParameterizedActionDefinition parameter, wf.State current, Identity identity) { var ctx = current.Context; var retVal = false; var dlg = _vmf.CreateViewModel <DataObjectSelectionTaskViewModel.Factory>() .Invoke( ctx, _vmf.GetWorkspace(ctx), (ObjectClass)NamedObjects.Base.Classes.Zetbox.App.Base.Identity.Find(_frozenCtx), null, (lst) => { foreach (Identity id in lst.Select(i => i.Object)) { current.Instance.AddLogEntry("Forwared to " + id.ToString()); if (!current.Persons.Contains(id)) { current.Persons.Add(id); } } retVal = true; }, null); _vmf.ShowDialog(dlg); return(retVal); }
public StateViewModel(IViewModelDependencies appCtx, IZetboxContext dataCtx, ViewModel parent, wf.State obj) : base(appCtx, dataCtx, parent, obj) { State = obj; dataCtx.IsElevatedModeChanged += new EventHandler(dataCtx_IsElevatedModeChanged); }
public bool CreateReceipt(wf.Action action, wf.ParameterizedActionDefinition parameter, wf.State current, Identity identity) { var ctx = current.Context; var payload = current.Instance.Payload.GetObject(ctx); if (payload is ReceiptTemplate) { var template = (ReceiptTemplate)current.Instance.Payload.GetObject(ctx); template.CreateReceipt(); return(true); } else { var msg = string.Format("Payload {0} is not a ReceiptTemplate", payload); Logging.Log.Warn(msg); current.Instance.AddLogEntry(msg); return(false); } }