from django.db import models from django.utils.translation import gettext_lazy as _ from utils.models import ProjectBaseMixin class Timetable(ProjectBaseMixin): """Timetable model.""" MONDAY = 0 TUESDAY = 1 WEDNESDAY = 2 THURSDAY = 3 FRIDAY = 4 SATURDAY = 5 SUNDAY = 6 WEEKDAYS_CHOICES = ( (MONDAY, _('Monday')), (TUESDAY, _('Tuesday')), (WEDNESDAY, _('Wednesday')), (THURSDAY, _('Thursday')), (FRIDAY, _('Friday')), (SATURDAY, _('Saturday')), (SUNDAY, _('Sunday'))) weekday = models.PositiveSmallIntegerField(choices=WEEKDAYS_CHOICES, verbose_name=_('Week day')) lunch_start = models.TimeField(verbose_name=_('Lunch start time'), null=True) lunch_end = models.TimeField(verbose_name=_('Lunch end time'), null=True) dinner_start = models.TimeField(verbose_name=_('Dinner start time'), null=True) dinner_end = models.TimeField(verbose_name=_('Dinner end time'), null=True) opening_at = models.TimeField(verbose_name=_('Opening time'), null=True) closed_at = models.TimeField(verbose_name=_('Closed time'), null=True) class Meta: """Meta class.""" verbose_name = _('Timetable') verbose_name_plural = _('Timetables') ordering = ['weekday']