create menu item for establishment
This commit is contained in:
parent
831b043a48
commit
b1b3e923b7
|
|
@ -38,6 +38,7 @@ urlpatterns = [
|
|||
path('menus/dishes/<int:pk>/gallery/<int:image_id>/', views.MenuGalleryCreateDestroyView.as_view(),
|
||||
name='menu-dishes-gallery-create-destroy'),
|
||||
path('menus/', views.MenuListCreateView.as_view(), name='menu-list'),
|
||||
path('menus/create/<int:establishment_id>/', views.CreateMenuForCertainEstablishmentView.as_view(), name='menu-list'),
|
||||
path('card_and_wines/<int:establishment_id>/', views.CardAndWinesListView.as_view(), name='card-and-wines-get'),
|
||||
path('menus/<int:pk>/', views.MenuRUDView.as_view(), name='menu-rud'),
|
||||
path('menus/dish/<int:establishment_id>/', views.DishCreateView.as_view(), name='create-dish'),
|
||||
|
|
|
|||
|
|
@ -178,6 +178,29 @@ class CardAndWinesListView(generics.RetrieveAPIView):
|
|||
return establishment
|
||||
|
||||
|
||||
class CreateMenuForCertainEstablishmentView(generics.CreateAPIView):
|
||||
"""Creates formulas menu for certain establishment"""
|
||||
permission_classes = get_permission_classes(
|
||||
IsEstablishmentManager,
|
||||
IsEstablishmentAdministrator,
|
||||
)
|
||||
# from rest_framework.permissions import AllowAny
|
||||
# permission_classes = (AllowAny, )
|
||||
queryset = models.Menu.objects.with_base_related().by_type(menu_type=models.Menu.FORMULAS)
|
||||
serializer_class = serializers.MenuBackOfficeSerializer
|
||||
|
||||
def create(self, request, *args, **kwargs):
|
||||
data = request.data.copy()
|
||||
data['establishment_id'] = kwargs['establishment_id']
|
||||
data['type'] = models.Menu.FORMULAS
|
||||
serializer = self.get_serializer(data=data)
|
||||
serializer.is_valid(raise_exception=True)
|
||||
with transaction.atomic():
|
||||
self.perform_create(serializer)
|
||||
headers = self.get_success_headers(serializer.data)
|
||||
return Response(serializer.data, status=status.HTTP_201_CREATED, headers=headers)
|
||||
|
||||
|
||||
class MenuListCreateView(generics.ListCreateAPIView):
|
||||
"""Menu list create view. This view works only with menu formulas type"""
|
||||
serializer_class = serializers.MenuBackOfficeSerializer
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user