From e065f1c9b4ae5e31251b3c2ffae35bd176cc052f Mon Sep 17 00:00:00 2001 From: Kuroshini Date: Wed, 16 Oct 2019 14:11:07 +0300 Subject: [PATCH] Works at weekday fiter --- apps/establishment/models.py | 5 +++++ apps/search_indexes/documents/establishment.py | 3 +++ apps/search_indexes/serializers.py | 1 + apps/search_indexes/views.py | 6 ++++++ 4 files changed, 15 insertions(+) diff --git a/apps/establishment/models.py b/apps/establishment/models.py index 75d3f6e9..048f45dd 100644 --- a/apps/establishment/models.py +++ b/apps/establishment/models.py @@ -461,6 +461,11 @@ class Establishment(ProjectBaseMixin, URLImageMixin, TranslatedFieldsMixin): """ Used for indexing working by day """ return [ret.weekday for ret in self.schedule.all() if ret.works_at_noon] + @property + def works_at_weekday(self): + """ Used for indexing by working whole day criteria """ + return [ret.weekday for ret in self.schedule.all()] + @property def works_evening(self): """ Used for indexing working by day """ diff --git a/apps/search_indexes/documents/establishment.py b/apps/search_indexes/documents/establishment.py index 19d419aa..8db113c1 100644 --- a/apps/search_indexes/documents/establishment.py +++ b/apps/search_indexes/documents/establishment.py @@ -37,6 +37,9 @@ class EstablishmentDocument(Document): works_noon = fields.ListField(fields.IntegerField( attr='works_noon' )) + works_at_weekday = fields.ListField(fields.IntegerField( + attr='works_at_weekday' + )) works_now = fields.BooleanField(attr='works_now') tags = fields.ObjectField( properties={ diff --git a/apps/search_indexes/serializers.py b/apps/search_indexes/serializers.py index bbc61735..6aee06d0 100644 --- a/apps/search_indexes/serializers.py +++ b/apps/search_indexes/serializers.py @@ -108,6 +108,7 @@ class EstablishmentDocumentSerializer(DocumentSerializer): 'schedule', 'works_noon', 'works_evening', + 'works_at_weekday', # 'works_now', # 'collections', # 'establishment_type', diff --git a/apps/search_indexes/views.py b/apps/search_indexes/views.py index 87b0ba64..92d96a64 100644 --- a/apps/search_indexes/views.py +++ b/apps/search_indexes/views.py @@ -156,6 +156,12 @@ class EstablishmentDocumentViewSet(BaseDocumentViewSet): constants.LOOKUP_QUERY_IN, ], }, + 'works_at_weekday': { + 'field': 'works_at_weekday', + 'lookups': [ + constants.LOOKUP_QUERY_IN, + ], + }, 'works_evening': { 'field': 'works_evening', 'lookups': [