public async Task <IWorkflowResult <NoWorkflowResult> > ApproveAsync(ApproveHolidayViewModel model) { var holiday = await FindOrCreate(model.Id); var triggerParam = new TriggerParam(HolidayApprovalWorkflow.APPROVE_TRIGGER, holiday) .AddVariable(ApproveHolidayViewModel.KEY, model); var triggerResult = this._workflowEngine.Trigger(triggerParam); var info = this.ToWorkflowTriggerInfo(holiday, triggerResult); var viewModel = new NoWorkflowResult(holiday.Assignee); return(new WorkflowResult <Holiday, NoWorkflowResult>(info, holiday, viewModel)); }
public async Task <IWorkflowResult <NoWorkflowResult> > ApplyAsync(ApplyHolidayViewModel model) { if (model == null) { throw new ArgumentNullException(nameof(model)); } var holiday = await FindOrCreate(null); holiday.Superior = "alice"; var triggerParam = new TriggerParam(HolidayApprovalWorkflow.APPLY_TRIGGER, holiday) .AddVariable(ApplyHolidayViewModel.KEY, model); var triggerResult = this._workflowEngine.Trigger(triggerParam); var info = this.ToWorkflowTriggerInfo(holiday, triggerResult); var viewModel = new NoWorkflowResult(holiday.Assignee); return(new WorkflowResult <Holiday, NoWorkflowResult>(info, holiday, viewModel)); }