establishment employee list
This commit is contained in:
parent
e6dfa6d74d
commit
215e7b5f19
|
|
@ -7,7 +7,7 @@ from rest_framework import serializers
|
|||
from account.serializers.common import UserShortSerializer
|
||||
from establishment import models
|
||||
from establishment import serializers as model_serializers
|
||||
from establishment.models import ContactPhone
|
||||
from establishment.models import ContactPhone, EstablishmentEmployee
|
||||
from gallery.models import Image
|
||||
from location.models import Address
|
||||
from location.serializers import AddressDetailSerializer, TranslatedField
|
||||
|
|
@ -340,6 +340,46 @@ class EstablishmentEmployeeBackSerializer(serializers.ModelSerializer):
|
|||
]
|
||||
|
||||
|
||||
class EstEmployeeBackSerializer(EmployeeBackSerializers):
|
||||
def get_positions(self, obj):
|
||||
es_emp = EstablishmentEmployee.objects.filter(
|
||||
employee=obj
|
||||
).distinct().order_by('position_id')
|
||||
result = []
|
||||
for item in es_emp:
|
||||
result.append({
|
||||
'id': item.id,
|
||||
'from_date': item.from_date,
|
||||
'to_date': item.to_date,
|
||||
'status': item.status,
|
||||
'position_id': item.position_id,
|
||||
'position_priority': item.position.priority,
|
||||
'position_index_name': item.position.index_name,
|
||||
'position_name_translated': item.position.name_translated,
|
||||
})
|
||||
|
||||
return result
|
||||
|
||||
class Meta:
|
||||
model = models.Employee
|
||||
fields = [
|
||||
'id',
|
||||
'name',
|
||||
'last_name',
|
||||
'user',
|
||||
'public_mark',
|
||||
'positions',
|
||||
'awards',
|
||||
'sex',
|
||||
'birth_date',
|
||||
'email',
|
||||
'phone',
|
||||
'toque_number',
|
||||
'available_for_events',
|
||||
'photo',
|
||||
]
|
||||
|
||||
|
||||
class EstablishmentBackOfficeGallerySerializer(serializers.ModelSerializer):
|
||||
"""Serializer class for model EstablishmentGallery."""
|
||||
|
||||
|
|
|
|||
|
|
@ -189,12 +189,14 @@ class EmployeesListSearchViews(generics.ListAPIView):
|
|||
class EstablishmentEmployeeListView(generics.ListCreateAPIView):
|
||||
"""Establishment emplyoees list view."""
|
||||
permission_classes = (permissions.AllowAny,)
|
||||
serializer_class = serializers.EstablishmentEmployeeBackSerializer
|
||||
serializer_class = serializers.EstEmployeeBackSerializer
|
||||
pagination_class = None
|
||||
|
||||
def get_queryset(self):
|
||||
establishment_id = self.kwargs['establishment_id']
|
||||
return models.EstablishmentEmployee.objects.filter(establishment__id=establishment_id).order_by('position')
|
||||
return models.Employee.objects.filter(
|
||||
establishmentemployee__establishment_id=establishment_id,
|
||||
).distinct()
|
||||
|
||||
|
||||
class EmployeeRUDView(generics.RetrieveUpdateDestroyAPIView):
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user