/// <summary>
 /// action on Supervisor Event
 /// </summary>
 /// <param name="ev"></param>
 private Task SupervisorEvent(SupervisorEventApiModel ev)
 {
     SupervisorList.Results.Update(ev);
     _pagedSupervisorList = SupervisorList.GetPaged(int.Parse(Page), CommonHelper.PageLength, SupervisorList.Error);
     StateHasChanged();
     return(Task.CompletedTask);
 }
        /// <summary>
        /// Update a list of supervisors from a received event
        /// </summary>
        /// <param name="results"></param>
        /// <param name="ev"></param>
        public static void Update(this IList <SupervisorApiModel> results,
                                  SupervisorEventApiModel ev)
        {
            var supervisor = results.FirstOrDefault(e => e.Id == ev.Id);

            if (supervisor == null &&
                ev.EventType != SupervisorEventType.New)
            {
                return;
            }
            switch (ev.EventType)
            {
            case SupervisorEventType.New:
                if (supervisor == null)
                {
                    // Add if not already in list
                    results.Add(ev.Supervisor);
                }
                break;

            case SupervisorEventType.Updated:
                ev.Supervisor.Patch(supervisor);
                break;

            case SupervisorEventType.Deleted:
                results.Remove(supervisor);
                break;
            }
        }
예제 #3
0
 /// <summary>
 /// action on Supervisor Event
 /// </summary>
 /// <param name="ev"></param>
 private Task SupervisorEvent(SupervisorEventApiModel ev)
 {
     Items.Results.Update(ev);
     StateHasChanged();
     return(Task.CompletedTask);
 }