diff --git a/apps/establishment/migrations/0013_auto_20190901_1428.py b/apps/establishment/migrations/0013_auto_20190901_1428.py new file mode 100644 index 00000000..9e91b715 --- /dev/null +++ b/apps/establishment/migrations/0013_auto_20190901_1428.py @@ -0,0 +1,33 @@ +# Generated by Django 2.2.4 on 2019-09-01 14:28 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('establishment', '0012_auto_20190901_1251'), + ] + + operations = [ + migrations.AddField( + model_name='establishment', + name='booking', + field=models.URLField(blank=True, default=None, null=True, verbose_name='Booking URL'), + ), + migrations.AddField( + model_name='establishment', + name='facebook', + field=models.URLField(blank=True, default=None, null=True, verbose_name='Facebook URL'), + ), + migrations.AddField( + model_name='establishment', + name='lafourchette', + field=models.URLField(blank=True, default=None, null=True, verbose_name='Lafourchette URL'), + ), + migrations.AddField( + model_name='establishment', + name='twitter', + field=models.URLField(blank=True, default=None, null=True, verbose_name='Twitter URL'), + ), + ] diff --git a/apps/establishment/migrations/0014_establishment_website.py b/apps/establishment/migrations/0014_establishment_website.py new file mode 100644 index 00000000..e685f469 --- /dev/null +++ b/apps/establishment/migrations/0014_establishment_website.py @@ -0,0 +1,18 @@ +# Generated by Django 2.2.4 on 2019-09-01 14:48 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('establishment', '0013_auto_20190901_1428'), + ] + + operations = [ + migrations.AddField( + model_name='establishment', + name='website', + field=models.URLField(blank=True, default=None, null=True, verbose_name='Web site URL'), + ), + ] diff --git a/apps/establishment/models.py b/apps/establishment/models.py index 15a14e04..62f4c49f 100644 --- a/apps/establishment/models.py +++ b/apps/establishment/models.py @@ -110,6 +110,16 @@ class Establishment(ProjectBaseMixin, ImageMixin, TraslatedFieldsMixin): price_level = models.PositiveIntegerField(blank=True, null=True, default=None, verbose_name=_('Price level')) + website = models.URLField(blank=True, null=True, default=None, + verbose_name=_('Web site URL')) + facebook = models.URLField(blank=True, null=True, default=None, + verbose_name=_('Facebook URL')) + twitter = models.URLField(blank=True, null=True, default=None, + verbose_name=_('Twitter URL')) + lafourchette = models.URLField(blank=True, null=True, default=None, + verbose_name=_('Lafourchette URL')) + booking = models.URLField(blank=True, null=True, default=None, + verbose_name=_('Booking URL')) awards = generic.GenericRelation(to='main.Award') tags = generic.GenericRelation(to='main.MetaDataContent') reviews = generic.GenericRelation(to='review.Review') @@ -154,6 +164,14 @@ class Establishment(ProjectBaseMixin, ImageMixin, TraslatedFieldsMixin): raise ValidationError('Establishment type of subtype does not match') self.establishment_subtypes.add(establishment_subtype) + @property + def best_price_menu(self): + return 150 + + @property + def best_price_carte(self): + return 200 + class Position(BaseAttributes, TraslatedFieldsMixin): """Position model.""" diff --git a/apps/establishment/serializers.py b/apps/establishment/serializers.py index 1c2e0d1d..e5b092c6 100644 --- a/apps/establishment/serializers.py +++ b/apps/establishment/serializers.py @@ -158,6 +158,9 @@ class EstablishmentSerializer(serializers.ModelSerializer): menu = MenuSerializers(source='menu_set', many=True, read_only=True) preview_image = serializers.SerializerMethodField() + best_price_menu = serializers.DecimalField(max_digits=14, decimal_places=2, read_only=True) + best_price_carte = serializers.DecimalField(max_digits=14, decimal_places=2, read_only=True) + class Meta: """Meta class.""" @@ -178,12 +181,19 @@ class EstablishmentSerializer(serializers.ModelSerializer): 'tags', 'awards', 'schedule', + 'website', + 'facebook', + 'twitter', + 'lafourchette', + 'booking', 'phones', 'emails', 'reviews', 'comments', 'employees', 'menu', + 'best_price_menu', + 'best_price_carte' ) def get_preview_image(self, obj):