public async Task <ActionResult> Task(Guid?id, Guid?planId, Guid?objectiveId, Guid personId, Guid recordId) { if (id.HasValue) { var response = await ExecuteMicrosoftHealthVaultRestApiAsync(api => api.ActionPlanTasks.GetByIdAsync(id.ToString()), personId, recordId); return(View(response)); } var task = new ActionPlanTaskInstanceV2(); if (planId.HasValue) { task.AssociatedPlanId = planId.Value.ToString(); } if (objectiveId.HasValue) { task.AssociatedObjectiveIds = new Collection <string> { objectiveId.Value.ToString() }; } return(View(task)); }
private async Task HandleTaskSelectedAsync(ActionPlanTaskInstanceV2 task) { if (task.TrackingPolicy.IsAutoTrackable == true) { var xpath = task.TrackingPolicy.TargetEvents.FirstOrDefault().ElementXPath; if (xpath.Contains("thing/data-xml/weight")) { var weightAddPage = new WeightAddPage { BindingContext = new WeightAddViewModel(_connection, NavigationService), }; await NavigationService.NavigateAsync(weightAddPage); } } }
public async Task <ActionResult> Task(Guid?id, ActionPlanTaskInstanceV2 task, Guid personId, Guid recordId) { if (id.HasValue && id.Value != Guid.Empty) { await ExecuteMicrosoftHealthVaultRestApiAsync(api => api.ActionPlanTasks.UpdateAsync(task), personId, recordId); } else { task.TrackingPolicy = new ActionPlanTrackingPolicy { IsAutoTrackable = false }; await ExecuteMicrosoftHealthVaultRestApiAsync(api => api.ActionPlanTasks.CreateAsync(task.AsActionPlanTaskV2()), personId, recordId); } return(RedirectToAction("Plan", new { id = task.AssociatedPlanId, personId, recordId })); }
public static ActionPlanTaskV2 AsActionPlanTaskV2(this ActionPlanTaskInstanceV2 instance) { return(JsonConvert.DeserializeObject <ActionPlanTaskV2>(JsonConvert.SerializeObject(instance))); }
/// <summary> /// Put an update for an action plan task /// </summary> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='actionPlanTask'> /// </param> /// <param name='cancellationToken'> /// The cancellation token. /// </param> public static async Task <ActionPlanTasksResponseActionPlanTaskInstanceV2> ReplaceAsync(this IActionPlanTasks operations, ActionPlanTaskInstanceV2 actionPlanTask, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { using (var _result = await operations.ReplaceWithHttpMessagesAsync(actionPlanTask, null, cancellationToken).ConfigureAwait(false)) { return(_result.Body); } }
/// <summary> /// Put an update for an action plan task /// </summary> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='actionPlanTask'> /// </param> public static ActionPlanTasksResponseActionPlanTaskInstanceV2 Replace(this IActionPlanTasks operations, ActionPlanTaskInstanceV2 actionPlanTask) { return(operations.ReplaceAsync(actionPlanTask).GetAwaiter().GetResult()); }