public void CompleteSelected() { var exceptionIds = new List <string>(); foreach (var activity in ListActionActivities) { if (!activity.Recurring) { var data = new CompleteActivityData { User = CurrentUser, CompletedDate = Convert.ToBoolean(asScheduled.Value) ? (activity.Timeless) ? activity.StartDate.Date.AddSeconds(5) : activity.StartDate.AddMinutes(activity.Duration) : DateTime.UtcNow, Result = resultText.Value, Notes = completeNotes.Value }; if (!Complete(activity, data)) { exceptionIds.Add(activity.ActivityId); } if (activity == _CurrentActivity) { _CurrentActivity = null; } } } if (exceptionIds.Count > 0) { ShowError(SR.Error_QuickComplete, exceptionIds); } }
private static bool Complete(IActivity activity, CompleteActivityData data) { try { activity.LongNotes = data.Notes; IHistory history = activity.Complete( data.User.Id.ToString(), data.Result, string.Empty, data.CompletedDate); return(history != null); } catch (DynamicMethodException e) { if (e.InnerException is CompleteActivityException) { return(false); } throw; } }