diff --git a/lib/data/models/schedule_model.dart b/lib/data/models/schedule_model.dart index d1dcae46b..07c2dd402 100644 --- a/lib/data/models/schedule_model.dart +++ b/lib/data/models/schedule_model.dart @@ -47,8 +47,8 @@ abstract class ScheduleItemResponse } class ScheduleFields { - static const String name = 'name'; static const String template = 'template'; + static const String nextRun = 'next_run'; } abstract class ScheduleEntity extends Object @@ -137,6 +137,9 @@ abstract class ScheduleEntity extends Object case ScheduleFields.template: response = scheduleA.template.compareTo(scheduleB.template); break; + case ScheduleFields.nextRun: + response = scheduleA.nextRun.compareTo(scheduleB.nextRun); + break; default: print('## ERROR: sort by schedule.$sortField is not implemented'); diff --git a/lib/redux/schedule/schedule_selectors.dart b/lib/redux/schedule/schedule_selectors.dart index 34e8406aa..f06544dbd 100644 --- a/lib/redux/schedule/schedule_selectors.dart +++ b/lib/redux/schedule/schedule_selectors.dart @@ -33,7 +33,7 @@ List dropdownSchedulesSelector( list.sort((scheduleAId, scheduleBId) { final scheduleA = scheduleMap[scheduleAId]; final scheduleB = scheduleMap[scheduleBId]; - return scheduleA.compareTo(scheduleB, ScheduleFields.name, true); + return scheduleA.compareTo(scheduleB, ScheduleFields.template, true); }); return list; diff --git a/lib/redux/schedule/schedule_state.dart b/lib/redux/schedule/schedule_state.dart index d8f9bd03a..af418cba7 100644 --- a/lib/redux/schedule/schedule_state.dart +++ b/lib/redux/schedule/schedule_state.dart @@ -54,7 +54,7 @@ abstract class ScheduleUIState extends Object implements Built { factory ScheduleUIState(PrefStateSortField sortField) { return _$ScheduleUIState._( - listUIState: ListUIState(sortField?.field ?? ScheduleFields.name, + listUIState: ListUIState(sortField?.field ?? ScheduleFields.template, sortAscending: sortField?.ascending), editing: ScheduleEntity(), selectedId: '', diff --git a/lib/ui/schedule/schedule_screen.dart b/lib/ui/schedule/schedule_screen.dart index f7b7ab613..6a59305bf 100644 --- a/lib/ui/schedule/schedule_screen.dart +++ b/lib/ui/schedule/schedule_screen.dart @@ -63,8 +63,8 @@ class ScheduleScreen extends StatelessWidget { store.dispatch(SortSchedules(value)); }, sortFields: [ - ScheduleFields.name, ScheduleFields.template, + ScheduleFields.nextRun, ], onSelectedState: (EntityState state, value) { store.dispatch(FilterSchedulesByState(state));