public static void ConfigureTrackers(AbstractScheduledItem <ScheduleSettings> data, DateRange dateRange, MtObservableCollection <ITracker> trackers) { var start = dateRange.StartDate.Date; var finish = dateRange.FinishDate.Date; if (start > finish) { return; } trackers.Clear(); do { var tracker = data.Schedule.Trackers.FirstOrDefault(t => t.ScheduledDate.Date == start); if (tracker == null) { trackers.Add(new TrackerCap() { ScheduledDate = start }); } else { trackers.Add(tracker); } start = start.AddDays(1); } while (finish >= start); }
public virtual void BeforeAcceptChanges(AbstractScheduledItem <ScheduleSettings> storable) { if (Template == null) { storable.ParentId = RootCategoryId; } else { storable.ParentId = Template.ParentId; storable.Id = Template.Id; } }
public virtual async Task AfterAcceptChanges(AbstractScheduledItem <ScheduleSettings> storable) { storable.Schedule.ParentId = storable.Id; await storable.Schedule.AcceptChanges(); }
public virtual bool CanAcceptChanges(AbstractScheduledItem <ScheduleSettings> storable) { return(storable != null && storable.CanAcceptChanges() && storable.Schedule.CanAcceptChanges()); }
public override async Task AfterAcceptChanges(AbstractScheduledItem <ScheduleSettings> storable) { await base.AfterAcceptChanges(storable); PrepareTrackers((T)storable); }