public override async System.Threading.Tasks.Task ExecuteLoadSchedulesCommand()
        {
            if (IsBusy)
            {
                return;
            }

            if (!IsRefreshing)
            {
                IsBusy = true;
            }

            try
            {
                if (!Users.Any())
                {
                    var lookups = await DataService.GetLookups(1000);

                    lookups.Users.ForEach(u => Users.Add(u));
                }

                ScheduleDateFormatted = ScheduleDate.ToShortDateString();
                OnPropertyChanged("ScheduleDateFormatted");

                Schedules.Clear();
                var items = await DataService.GetItemsAsync <Schedule>($"schedules?start={ScheduleDate.ToString("MM-dd-yyyy")}&end={ScheduleDate.ToString("MM-dd-yyyy")}{(CanManageSchedule ? "" : "&assigned=true")}");

                NoSchedules = !items.Data.Any();
                OnPropertyChanged("NoSchedules");
                this.WeekUnpublished = false;
                foreach (var item in items.Data.OrderBy(d => d.User == null ? "zzzzzz" : d.User.FirstName))
                {
                    if (item.UserId != null && !item.PublishedValue)
                    {
                        this.WeekUnpublished = true;
                    }
                    var displayItem = new DisplayItem();
                    scheduleToDisplayItem(displayItem, item);
                    Schedules.Add(displayItem);
                }
            }
            catch (Exception ex)
            {
                IsBusy       = false;
                IsRefreshing = false;
                ExceptionHelper.ShowException(ex);
            }
            finally
            {
                IsBusy       = false;
                IsRefreshing = false;
            }
        }
 public override string ToString()
 {
     return(ScheduleDate.ToShortDateString());
 }