From e7321aa0ce9f1a5e0a4870d6881911de252f8dcf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E5=89=8D=E6=98=8E?= <909355014@qq.com> Date: Thu, 2 Jun 2022 14:09:42 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E8=BF=94=E5=9B=9E=E4=BF=A1?= =?UTF-8?q?=E6=81=AF=EF=BC=8C=E6=93=8D=E4=BD=9C=E5=88=A0=E9=99=A4=E6=9D=83?= =?UTF-8?q?=E9=99=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- server/apps/ability/serializers_qtask.py | 7 +++++-- server/apps/ability/views_qtask.py | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/server/apps/ability/serializers_qtask.py b/server/apps/ability/serializers_qtask.py index c16835d..a7119fa 100644 --- a/server/apps/ability/serializers_qtask.py +++ b/server/apps/ability/serializers_qtask.py @@ -3,7 +3,7 @@ from rest_framework import serializers from apps.system.models import City, Organization from .models import QAction, QActionItem, QOrg, QTask, Quali, QualiLib from django.db import transaction -from apps.system.serializers import OrganizationSimpleSerializer, DictSerializer +from apps.system.serializers import CitySerializer, FileSimpleSerializer, OrganizationSimpleSerializer, DictSerializer, UserSimpleSerializer from rest_framework.exceptions import ParseError @@ -15,7 +15,8 @@ class QualiLibListSerializer(serializers.ModelSerializer): class QualiListSerializer(serializers.ModelSerializer): province_name = serializers.CharField(source='province.name', read_only=True) city_name = serializers.CharField(source='city.name', read_only=True) - service = serializers.CharField(source='org.service', read_only=True) + org_ = OrganizationSimpleSerializer(source='org', read_only=True) + citys_ = CitySerializer(source='citys', many=True, read_only=True) class Meta: model = Quali fields = '__all__' @@ -78,6 +79,8 @@ class QActionListSerializer(serializers.ModelSerializer): quali_name = serializers.CharField(source='quali.name', read_only=True) atype_name = serializers.CharField(source='atype.name', read_only=True) afield_name = serializers.CharField(source='afield.name', read_only=True) + file_ = FileSimpleSerializer(source='file', read_only=True) + create_by_ = UserSimpleSerializer(source='create_by', read_only=True) class Meta: model = QAction fields = '__all__' diff --git a/server/apps/ability/views_qtask.py b/server/apps/ability/views_qtask.py index fd0a3d5..d7d361a 100644 --- a/server/apps/ability/views_qtask.py +++ b/server/apps/ability/views_qtask.py @@ -22,7 +22,7 @@ class QualiLibViewSet(PageOrNot, ListModelMixin, GenericViewSet): class QualiViewSet(ListModelMixin, GenericViewSet): perms_map = {'get': '*'} - queryset = Quali.objects.all() + queryset = Quali.objects.select_related('org', 'province', 'city').prefetch_related('citys') serializer_class = QualiListSerializer search_fields = ['name', 'type', 'grade', 'scope', 'level', 'description'] ordering = ['org', 'org__sort', 'create_time'] @@ -99,7 +99,7 @@ def cal_count(qtask, org): qorg.save() class QActionViewSet(PageOrNot, ListModelMixin, DestroyModelMixin, RetrieveModelMixin,GenericViewSet): - perms_map = {'get': 'qtask_view'} + perms_map = {'get': 'qtask_view', 'post': 'qaction_delete'} queryset = QAction.objects.select_related('file', 'atype', 'afield', 'qtask', 'belong_dept') filterset_fields = ['qtask', 'belong_dept', 'atype', 'afield'] serializer_class = QActionListSerializer