/// <summary> /// Resume a workflow that was started with a Survey Task /// </summary> /// <param name="task"></param> void ResumeWf(UserSurveyTask task) { var runner = Factory.Current.Resolve <IWorkflowRunner>(); var resumeEvent = new ResumeSurveyEvent { CompletionStateId = task.UserResponse?.Id ?? 0 }; runner.ResumeWorkflowAsync(task.WorkflowRunForTask, resumeEvent); }
void UpdateAnswersInTask(UserSurveyTask task) { var toSave = new List <IEntity>(); foreach (var answer in task.UserSurveyTaskSurveyResponse.SurveyAnswers) { var writableAnswer = answer.AsWritable <SurveyAnswer>(); writableAnswer.SurveyAnswerCalculatedValue = answer.CalcAdjustedValue(); writableAnswer.SurveyAnswerSummary = answer.GenerateTextSummary(); toSave.Add(writableAnswer); } var writableResults = task.UserSurveyTaskSurveyResponse.AsWritable <SurveyResponse>(); writableResults.SurveyCompletedOn = DateTime.UtcNow; UpdateSurveyResponses(writableResults); toSave.Add(writableResults); Entity.Save(toSave); }