diff --git a/apps/am/serializers.py b/apps/am/serializers.py index c19c34f3..67c6c79d 100644 --- a/apps/am/serializers.py +++ b/apps/am/serializers.py @@ -1,5 +1,6 @@ from apps.am.models import Access, Area from apps.utils.serializers import CustomModelSerializer +from apps.system.serializers import PostSimpleSerializer class AreaSimpleSerializer(CustomModelSerializer): @@ -8,6 +9,12 @@ class AreaSimpleSerializer(CustomModelSerializer): fields = ['id', 'name', 'level'] +class AreaSerializer(CustomModelSerializer): + class Meta: + model = Area + fields = '__all__' + + class AreaCreateUpdateSerializer(CustomModelSerializer): class Meta: model = Area @@ -18,3 +25,12 @@ class AccessCreateSerializer(CustomModelSerializer): class Meta: model = Access fields = ['type', 'area', 'post'] + + +class AccessSerializer(CustomModelSerializer): + area_ = AreaSimpleSerializer(source='area', read_only=True) + post_ = PostSimpleSerializer(source='post', read_only=True) + + class Meta: + model = Access + fields = '__all__' diff --git a/apps/am/views.py b/apps/am/views.py index 1818d45a..84075a11 100755 --- a/apps/am/views.py +++ b/apps/am/views.py @@ -1,5 +1,5 @@ -from apps.am.models import Area -from apps.am.serializers import AccessCreateSerializer, AreaCreateUpdateSerializer +from apps.am.models import Access, Area +from apps.am.serializers import AccessCreateSerializer, AccessSerializer, AreaCreateUpdateSerializer, AreaSerializer from apps.utils.viewsets import CustomModelViewSet, CustomGenericViewSet from django.db import transaction from rest_framework.decorators import action @@ -15,6 +15,7 @@ class AreaViewSet(CustomModelViewSet): queryset = Area.objects.all() create_serializer_class = AreaCreateUpdateSerializer update_serializer_class = AreaCreateUpdateSerializer + serializer_class = AreaSerializer @transaction.atomic @action(methods=['post'], detail=True, perms_map={'post': 'area:bind_rail'}, @@ -42,5 +43,7 @@ class AreaViewSet(CustomModelViewSet): class AccessViewSet(ListModelMixin, CreateModelMixin, DestroyModelMixin, CustomGenericViewSet): - perms_map = {'post': 'access:create', 'delete': 'access:delete'} + perms_map = {'get': '*', 'post': 'access:create', 'delete': 'access:delete'} + queryset = Access.objects.all() create_serializer_class = AccessCreateSerializer + serializer_class = AccessSerializer diff --git a/apps/ecm/serializers.py b/apps/ecm/serializers.py index f41620bc..3783c02e 100644 --- a/apps/ecm/serializers.py +++ b/apps/ecm/serializers.py @@ -29,9 +29,9 @@ class NotifySettingsSerializer(CustomModelSerializer): fields = '__all__' -class EventSerializer(CustomModelSerializer): - area_ = AreaSimpleSerializer(source='area', read_only=True) - cate_ = EventCateSimpleSerializer(source='cate', read_only=True) +class EventSerializer(serializers.ModelSerializer): + area_name = serializers.CharField(source='area.name', read_only=True) + cate_name = serializers.CharField(source='cate.name', read_only=True) people_name = serializers.CharField(source='people.name', read_only=True) handle_user_name = serializers.CharField(source='handle_user.name', read_only=True) diff --git a/apps/ecm/views.py b/apps/ecm/views.py index f2961f9f..3adb1437 100644 --- a/apps/ecm/views.py +++ b/apps/ecm/views.py @@ -17,6 +17,7 @@ class EventCateViewSet(UpdateModelMixin, ListModelMixin, CustomGenericViewSet): queryset = EventCate.objects.all() list_serializer_class = EventCateListSerializer update_serializer_class = EventCateUpdateSerializer + serializer_class = EventCateListSerializer class NotifySettingViewSet(CustomModelViewSet): @@ -33,7 +34,8 @@ class EventViewSet(ListModelMixin, RetrieveModelMixin, CustomGenericViewSet): @action(methods=['post'], detail=True, perms_map={'post': 'event:handle'}, serializer_class=EventHandleSerializer) def handle(self, request, pk=None): - """ + """处理事件 + 处理事件 """ obj = self.get_object() @@ -52,7 +54,8 @@ class RemindViewSet(ListModelMixin, CustomGenericViewSet): @action(methods=['get'], detail=False, perms_map={'get': '*'}) def my(self, request, *args, **kwargs): - """ + """推送给我的 + 推送给我的 """ user = self.request.user diff --git a/apps/utils/viewsets.py b/apps/utils/viewsets.py index 452f9931..11841fdc 100755 --- a/apps/utils/viewsets.py +++ b/apps/utils/viewsets.py @@ -25,9 +25,8 @@ class CustomGenericViewSet(MyLoggingMixin, GenericViewSet): throttle_classes = [UserRateThrottle] logging_methods = ['POST', 'PUT', 'PATCH', 'DELETE'] ordering_fields = '__all__' - filter_fields = '__all__' ordering = '-create_time' - filterset_fields = '__all__' + filterset_fields = [] create_serializer_class = None update_serializer_class = None partial_update_serializer_class = None