remove incorrect check for establishment, set schedule attr property as blank=True, refactored timetable model
This commit is contained in:
parent
36834835cd
commit
821526d631
18
apps/establishment/migrations/0068_auto_20191220_0914.py
Normal file
18
apps/establishment/migrations/0068_auto_20191220_0914.py
Normal file
|
|
@ -0,0 +1,18 @@
|
||||||
|
# Generated by Django 2.2.7 on 2019-12-20 09:14
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('establishment', '0067_auto_20191122_1244'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='establishment',
|
||||||
|
name='schedule',
|
||||||
|
field=models.ManyToManyField(blank=True, related_name='schedule', to='timetable.Timetable', verbose_name='Establishment schedule'),
|
||||||
|
),
|
||||||
|
]
|
||||||
|
|
@ -483,7 +483,7 @@ class Establishment(GalleryModelMixin, ProjectBaseMixin, URLImageMixin,
|
||||||
booking = models.URLField(blank=True, null=True, default=None, max_length=255,
|
booking = models.URLField(blank=True, null=True, default=None, max_length=255,
|
||||||
verbose_name=_('Booking URL'))
|
verbose_name=_('Booking URL'))
|
||||||
is_publish = models.BooleanField(default=False, verbose_name=_('Publish status'))
|
is_publish = models.BooleanField(default=False, verbose_name=_('Publish status'))
|
||||||
schedule = models.ManyToManyField(to='timetable.Timetable',
|
schedule = models.ManyToManyField(to='timetable.Timetable', blank=True,
|
||||||
verbose_name=_('Establishment schedule'),
|
verbose_name=_('Establishment schedule'),
|
||||||
related_name='schedule')
|
related_name='schedule')
|
||||||
# holidays_from = models.DateTimeField(verbose_name=_('Holidays from'),
|
# holidays_from = models.DateTimeField(verbose_name=_('Holidays from'),
|
||||||
|
|
@ -532,12 +532,6 @@ class Establishment(GalleryModelMixin, ProjectBaseMixin, URLImageMixin,
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return f'id:{self.id}-{self.name}'
|
return f'id:{self.id}-{self.name}'
|
||||||
|
|
||||||
def clean_fields(self, exclude=None):
|
|
||||||
super().clean_fields(exclude)
|
|
||||||
if self.purchased_products.filter(product_type__index_name='souvenir').exists():
|
|
||||||
raise ValidationError(
|
|
||||||
_('Only souvenirs.'))
|
|
||||||
|
|
||||||
def delete(self, using=None, keep_parents=False):
|
def delete(self, using=None, keep_parents=False):
|
||||||
"""Overridden delete method"""
|
"""Overridden delete method"""
|
||||||
# Delete all related companies
|
# Delete all related companies
|
||||||
|
|
|
||||||
|
|
@ -35,6 +35,22 @@ class Timetable(ProjectBaseMixin):
|
||||||
opening_at = models.TimeField(verbose_name=_('Opening time'), null=True)
|
opening_at = models.TimeField(verbose_name=_('Opening time'), null=True)
|
||||||
closed_at = models.TimeField(verbose_name=_('Closed 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']
|
||||||
|
|
||||||
|
def __str__(self):
|
||||||
|
"""Overridden str dunder."""
|
||||||
|
return f'{self.get_weekday_display()} ' \
|
||||||
|
f'(closed_at - {self.closed_at_str}, ' \
|
||||||
|
f'opening_at - {self.opening_at_str}, ' \
|
||||||
|
f'opening_time - {self.opening_time}, ' \
|
||||||
|
f'ending_time - {self.ending_time}, ' \
|
||||||
|
f'works_at_noon - {self.works_at_noon}, ' \
|
||||||
|
f'works_at_afternoon: {self.works_at_afternoon})'
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def closed_at_str(self):
|
def closed_at_str(self):
|
||||||
return str(self.closed_at) if self.closed_at else None
|
return str(self.closed_at) if self.closed_at else None
|
||||||
|
|
@ -58,9 +74,3 @@ class Timetable(ProjectBaseMixin):
|
||||||
@property
|
@property
|
||||||
def works_at_afternoon(self):
|
def works_at_afternoon(self):
|
||||||
return bool(self.ending_time and self.ending_time > self.NOON)
|
return bool(self.ending_time and self.ending_time > self.NOON)
|
||||||
|
|
||||||
class Meta:
|
|
||||||
"""Meta class."""
|
|
||||||
verbose_name = _('Timetable')
|
|
||||||
verbose_name_plural = _('Timetables')
|
|
||||||
ordering = ['weekday']
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user