From 2e0cfabbce013b2f7214465df5a13c0b19401029 Mon Sep 17 00:00:00 2001 From: Kuroshini Date: Fri, 31 Jan 2020 17:06:38 +0300 Subject: [PATCH] menu type --- apps/establishment/serializers/back.py | 1 + apps/establishment/views/back.py | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/apps/establishment/serializers/back.py b/apps/establishment/serializers/back.py index e12dd733..ffdfb578 100644 --- a/apps/establishment/serializers/back.py +++ b/apps/establishment/serializers/back.py @@ -743,6 +743,7 @@ class MenuBackOfficeSerializer(serializers.ModelSerializer): model = models.Menu fields = [ 'id', + 'type', 'name', 'establishment_id', 'establishment_slug', diff --git a/apps/establishment/views/back.py b/apps/establishment/views/back.py index a1ed2ca3..8ff160aa 100644 --- a/apps/establishment/views/back.py +++ b/apps/establishment/views/back.py @@ -157,7 +157,7 @@ class EstablishmentScheduleCreateView(generics.CreateAPIView): class MenuListCreateView(generics.ListCreateAPIView): - """Menu list create view.""" + """Menu list create view. This view works only with menu formulas type""" serializer_class = serializers.MenuBackOfficeSerializer queryset = models.Menu.objects.with_base_related() permission_classes = get_permission_classes( @@ -178,10 +178,11 @@ class MenuListCreateView(generics.ListCreateAPIView): with transaction.atomic(): establishment = get_object_or_404(models.Establishment, pk=next(iter(request.data))['establishment_id']) update_ids = [menu['id'] for menu in request.data if 'id' in menu] - for menu_instance in establishment.menu_set.all(): + for menu_instance in establishment.menu_set.by_type(models.Menu.FORMULAS): if menu_instance.pk not in update_ids: menu_instance.delete() for menu in request.data: + menu.update({'type': models.Menu.FORMULAS}) if 'id' in menu: instance = get_object_or_404(Menu, pk=menu['id'])