diff --git a/apps/establishment/urls/back.py b/apps/establishment/urls/back.py index 4769e332..396fa9d7 100644 --- a/apps/establishment/urls/back.py +++ b/apps/establishment/urls/back.py @@ -57,8 +57,10 @@ urlpatterns = [ path('subtypes/', views.EstablishmentSubtypeListCreateView.as_view(), name='subtype-list'), path('subtypes//', views.EstablishmentSubtypeRUDView.as_view(), name='subtype-rud'), path('positions/', views.EstablishmentPositionListView.as_view(), name='position-list'), - path('employee_positions//', views.EmployeePositionsListView.as_view(), + path('employee_positions//', views.EmployeePositionsListView.as_view(), name='employee-positions-list'), path('employee_establishments//', views.EmployeeEstablishmentsListView.as_view(), name='employee-establishments-list'), + path('employee_establishment_positions//', views.EmployeeEstablishmentPositionsListView.as_view(), + name='employee-establishment-positions-list') ] diff --git a/apps/establishment/views/back.py b/apps/establishment/views/back.py index eef93e18..4ba795a6 100644 --- a/apps/establishment/views/back.py +++ b/apps/establishment/views/back.py @@ -9,7 +9,6 @@ from rest_framework.response import Response from account.models import User from establishment import filters, models, serializers from establishment.models import EstablishmentEmployee -from establishment.serializers import PositionBackSerializer from timetable.models import Timetable from timetable.serialziers import ScheduleCreateSerializer, ScheduleRUDSerializer from utils.permissions import IsCountryAdmin, IsEstablishmentManager, IsWineryReviewer @@ -34,7 +33,7 @@ class EstablishmentListCreateView(EstablishmentMixinViews, generics.ListCreateAP serializer_class = serializers.EstablishmentListCreateSerializer -class EmployeeEstablishmentsListView(generics.ListAPIView): +class EmployeeEstablishmentPositionsListView(generics.ListAPIView): """Establishment by employee list view.""" permission_classes = [IsWineryReviewer | IsCountryAdmin | IsEstablishmentManager] @@ -64,6 +63,19 @@ class EmployeeEstablishmentsListView(generics.ListAPIView): return Response(data) +class EmployeeEstablishmentsListView(generics.ListAPIView): + """Establishment by employee list view.""" + + permission_classes = [IsWineryReviewer | IsCountryAdmin | IsEstablishmentManager] + queryset = models.Establishment.objects.all() + serializer_class = serializers.EstablishmentListCreateSerializer + + def get_queryset(self): + pk = self.kwargs.get('pk') + employee = get_object_or_404(models.Employee, pk=pk) + return employee.establishments.with_extended_related() + + class EmployeePositionsListView(generics.ListAPIView): """Establishment position by employee list view."""