43 lines
1.5 KiB
Python
43 lines
1.5 KiB
Python
from rest_framework import generics, permissions
|
|
|
|
from partner import filters
|
|
from partner.models import Partner
|
|
from partner.serializers import back as serializers
|
|
from utils.permissions import IsEstablishmentManager
|
|
|
|
|
|
class PartnerLstView(generics.ListCreateAPIView):
|
|
"""Partner list/create view.
|
|
Allows to get partners for current country, or create a new one.
|
|
"""
|
|
queryset = Partner.objects.with_base_related()
|
|
serializer_class = serializers.BackPartnerSerializer
|
|
pagination_class = None
|
|
permission_classes = [permissions.IsAdminUser | IsEstablishmentManager]
|
|
# permission_classes = (permissions.AllowAny, )
|
|
filter_class = filters.PartnerFilterSet
|
|
|
|
|
|
class PartnerRUDView(generics.RetrieveUpdateDestroyAPIView):
|
|
"""Partner RUD view."""
|
|
queryset = Partner.objects.with_base_related()
|
|
serializer_class = serializers.BackPartnerSerializer
|
|
permission_classes = [permissions.IsAdminUser | IsEstablishmentManager]
|
|
# permission_classes = (permissions.AllowAny, )
|
|
lookup_field = 'id'
|
|
|
|
|
|
class PartnerPicturesListView(generics.RetrieveAPIView):
|
|
lookup_field = 'id'
|
|
serializer_class = serializers.PartnerPicturesSerializer
|
|
queryset = Partner.objects.with_base_related()
|
|
# permission_classes = [permissions.IsAdminUser | IsEstablishmentManager]
|
|
permission_classes = (permissions.AllowAny, )
|
|
|
|
# class BindPartnerToEstablishmentView(generics.GenericAPIView):
|
|
# pass
|
|
|
|
|
|
# class UnbindPartnerFromEstablishmentView(generics.DestroyAPIView):
|
|
# pass
|