Added employee-establishment-positions method

This commit is contained in:
dormantman 2020-01-27 20:01:44 +03:00
parent d2f04d4958
commit 3796a698d2
2 changed files with 17 additions and 3 deletions

View File

@ -57,8 +57,10 @@ urlpatterns = [
path('subtypes/', views.EstablishmentSubtypeListCreateView.as_view(), name='subtype-list'),
path('subtypes/<int:pk>/', views.EstablishmentSubtypeRUDView.as_view(), name='subtype-rud'),
path('positions/', views.EstablishmentPositionListView.as_view(), name='position-list'),
path('employee_positions/<int:pk>/', views.EmployeePositionsListView.as_view(),
path('employee_positions/<int:pk>/', views.EmployeePositionsListView.as_view(),
name='employee-positions-list'),
path('employee_establishments/<int:pk>/', views.EmployeeEstablishmentsListView.as_view(),
name='employee-establishments-list'),
path('employee_establishment_positions/<int:pk>/', views.EmployeeEstablishmentPositionsListView.as_view(),
name='employee-establishment-positions-list')
]

View File

@ -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."""