20 lines
792 B
Python
20 lines
792 B
Python
from rest_framework import viewsets
|
|
from rest_framework.permissions import AllowAny
|
|
from .models import Organization
|
|
from .serializers import OrganizationSerializer, OrganizationTreeSerializer
|
|
from apps.accounts.permissions import IsSuperAdmin
|
|
|
|
|
|
class OrganizationPublicViewSet(viewsets.ReadOnlyModelViewSet):
|
|
"""公开只读:门户展示用,返回顶级组织(集团)及其子公司树"""
|
|
queryset = Organization.objects.filter(is_active=True, parent__isnull=True)
|
|
serializer_class = OrganizationTreeSerializer
|
|
permission_classes = [AllowAny]
|
|
|
|
|
|
class OrganizationManageViewSet(viewsets.ModelViewSet):
|
|
"""超管:完整增删改查"""
|
|
queryset = Organization.objects.all()
|
|
serializer_class = OrganizationSerializer
|
|
permission_classes = [IsSuperAdmin]
|