from django_core.mixins import BaseViewSetMixin from drf_spectacular.utils import extend_schema from rest_framework.permissions import AllowAny from rest_framework.viewsets import ReadOnlyModelViewSet # local apps from core.apps.evaluation.models import CustomerModel, PropertyOwnerModel from core.apps.evaluation.serializers import customer as serializers @extend_schema(tags=["Customer"]) class CustomerView(BaseViewSetMixin, ReadOnlyModelViewSet): queryset = CustomerModel.objects.all() serializer_class = serializers.ListCustomerSerializer permission_classes = [AllowAny] action_permission_classes = {} action_serializer_class = { "list": serializers.ListCustomerSerializer, "retrieve": serializers.RetrieveCustomerSerializer, "create": serializers.CreateCustomerSerializer, } @extend_schema(tags=["PropertyOwner"]) class PropertyOwnerView(BaseViewSetMixin, ReadOnlyModelViewSet): queryset = PropertyOwnerModel.objects.all() serializer_class = serializers.ListPropertyOwnerSerializer permission_classes = [AllowAny] action_permission_classes = {} action_serializer_class = { "list": serializers.ListPropertyOwnerSerializer, "retrieve": serializers.RetrievePropertyOwnerSerializer, "create": serializers.CreatePropertyOwnerSerializer, }