From 9a493545d8377a907735e726441ddeedef244ae8 Mon Sep 17 00:00:00 2001 From: Kuroshini Date: Wed, 5 Feb 2020 18:39:14 +0300 Subject: [PATCH] types --- apps/establishment/serializers/back.py | 12 ++++++++++++ apps/establishment/views/back.py | 8 ++++++++ 2 files changed, 20 insertions(+) diff --git a/apps/establishment/serializers/back.py b/apps/establishment/serializers/back.py index bf17b6ab..45c79433 100644 --- a/apps/establishment/serializers/back.py +++ b/apps/establishment/serializers/back.py @@ -17,6 +17,7 @@ from gallery.models import Image from location.serializers import AddressDetailSerializer, TranslatedField, AddressBaseSerializer from main.models import Currency from main.serializers import AwardSerializer +from tag.serializers import TagBaseSerializer from utils.decorators import with_base_attributes from utils.methods import string_random from utils.serializers import ImageBaseSerializer, ProjectModelSerializer, TimeZoneChoiceField, \ @@ -90,6 +91,12 @@ class EstablishmentListCreateSerializer(model_serializers.EstablishmentBaseSeria subtypes = model_serializers.EstablishmentSubTypeBaseSerializer(source='establishment_subtypes', read_only=True, many=True) + restaurant_category = TagBaseSerializer(read_only=True, many=True, allow_null=True) + restaurant_cuisine = TagBaseSerializer(read_only=True, many=True, allow_null=True) + artisan_category = TagBaseSerializer(read_only=True, many=True, allow_null=True) + distillery_type = TagBaseSerializer(read_only=True, many=True, allow_null=True) + food_producer = TagBaseSerializer(read_only=True, many=True, allow_null=True) + class Meta(model_serializers.EstablishmentBaseSerializer.Meta): fields = [ 'id', @@ -123,6 +130,11 @@ class EstablishmentListCreateSerializer(model_serializers.EstablishmentBaseSeria 'address_id', 'status', 'status_display', + 'restaurant_category', + 'restaurant_cuisine', + 'artisan_category', + 'distillery_type', + 'food_producer', ] def to_representation(self, instance): diff --git a/apps/establishment/views/back.py b/apps/establishment/views/back.py index 62af8d3e..31264276 100644 --- a/apps/establishment/views/back.py +++ b/apps/establishment/views/back.py @@ -58,6 +58,14 @@ class EstablishmentListCreateView(EstablishmentMixinViews, generics.ListCreateAP IsEstablishmentAdministrator, ) + def get_queryset(self): + return super().get_queryset() \ + .with_certain_tag_category_related('category', 'restaurant_category') \ + .with_certain_tag_category_related('cuisine', 'restaurant_cuisine') \ + .with_certain_tag_category_related('shop_category', 'artisan_category') \ + .with_certain_tag_category_related('distillery_type', 'distillery_type') \ + .with_certain_tag_category_related('producer_type', 'food_producer') + class EmployeeEstablishmentPositionsView(generics.ListAPIView): """Establishment by employee view."""