from rest_framework import viewsets from rest_framework.filters import SearchFilter, OrderingFilter from django_filters.rest_framework import DjangoFilterBackend from .models import Position, Department, Employee from .serializers import PositionSerializer, DepartmentSerializer, EmployeeSerializer from .filters import EmployeeFilter # Фильтры будут добавлены позже class PositionViewSet(viewsets.ModelViewSet): queryset = Position.objects.all() serializer_class = PositionSerializer filter_backends = [SearchFilter, OrderingFilter] search_fields = ["name"] ordering_fields = ["name"] class DepartmentViewSet(viewsets.ModelViewSet): queryset = Department.objects.all() serializer_class = DepartmentSerializer filter_backends = [SearchFilter, OrderingFilter] search_fields = ["name"] ordering_fields = ["name"] class EmployeeViewSet(viewsets.ModelViewSet): queryset = Employee.objects.all() serializer_class = EmployeeSerializer filter_backends = [DjangoFilterBackend, SearchFilter, OrderingFilter] filterset_class = EmployeeFilter search_fields = ["account__first_name", "account__last_name", "position__name", "department__name"] ordering_fields = ["department", "position", "account__last_name"]