From f511284a1330bada31011efa087bd3f3e85d3e6e Mon Sep 17 00:00:00 2001 From: Dominik George <dominik.george@teckids.org> Date: Sun, 27 Oct 2019 21:52:28 +0100 Subject: [PATCH] Use within_dates in in_week. --- biscuit/apps/chronos/models.py | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/biscuit/apps/chronos/models.py b/biscuit/apps/chronos/models.py index 4040d4e1..b963bf85 100644 --- a/biscuit/apps/chronos/models.py +++ b/biscuit/apps/chronos/models.py @@ -32,19 +32,19 @@ class LessonPeriodManager(models.Manager): class LessonPeriodQuerySet(models.QuerySet): """ Overrides default QuerySet to add specific methods for lesson data. """ - def in_week(self, wanted_week: CalendarWeek): - """ Filter for all lessons within a calendar week. """ - - return self.filter( - lesson__date_start__lte=wanted_week[0] + timedelta(days=1) * (models.F('period__weekday') - 1), - lesson__date_end__gte=wanted_week[0] + timedelta(days=1) * (models.F('period__weekday') - 1) - ).annotate_week(wanted_week) - def within_dates(self, start: date, end: date): """ Filter for all lessons within a date range. """ return self.filter(lesson__date_start__lte=start, lesson__date_end__gte=end) + def in_week(self, wanted_week: CalendarWeek): + """ Filter for all lessons within a calendar week. """ + + return self.within_dates( + wanted_week[0] + timedelta(days=1) * (models.F('period__weekday') - 1), + wanted_week[0] + timedelta(days=1) * (models.F('period__weekday') - 1) + ).annotate_week(wanted_week) + def on_day(self, day: date): """ Filter for all lessons on a certain day. """ -- GitLab