增加返回信息,操作删除权限

This commit is contained in:
曹前明 2022-06-02 14:09:42 +08:00
parent 099e67d509
commit e7321aa0ce
2 changed files with 7 additions and 4 deletions

View File

@ -3,7 +3,7 @@ from rest_framework import serializers
from apps.system.models import City, Organization from apps.system.models import City, Organization
from .models import QAction, QActionItem, QOrg, QTask, Quali, QualiLib from .models import QAction, QActionItem, QOrg, QTask, Quali, QualiLib
from django.db import transaction 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 from rest_framework.exceptions import ParseError
@ -15,7 +15,8 @@ class QualiLibListSerializer(serializers.ModelSerializer):
class QualiListSerializer(serializers.ModelSerializer): class QualiListSerializer(serializers.ModelSerializer):
province_name = serializers.CharField(source='province.name', read_only=True) province_name = serializers.CharField(source='province.name', read_only=True)
city_name = serializers.CharField(source='city.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: class Meta:
model = Quali model = Quali
fields = '__all__' fields = '__all__'
@ -78,6 +79,8 @@ class QActionListSerializer(serializers.ModelSerializer):
quali_name = serializers.CharField(source='quali.name', read_only=True) quali_name = serializers.CharField(source='quali.name', read_only=True)
atype_name = serializers.CharField(source='atype.name', read_only=True) atype_name = serializers.CharField(source='atype.name', read_only=True)
afield_name = serializers.CharField(source='afield.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: class Meta:
model = QAction model = QAction
fields = '__all__' fields = '__all__'

View File

@ -22,7 +22,7 @@ class QualiLibViewSet(PageOrNot, ListModelMixin, GenericViewSet):
class QualiViewSet(ListModelMixin, GenericViewSet): class QualiViewSet(ListModelMixin, GenericViewSet):
perms_map = {'get': '*'} perms_map = {'get': '*'}
queryset = Quali.objects.all() queryset = Quali.objects.select_related('org', 'province', 'city').prefetch_related('citys')
serializer_class = QualiListSerializer serializer_class = QualiListSerializer
search_fields = ['name', 'type', 'grade', 'scope', 'level', 'description'] search_fields = ['name', 'type', 'grade', 'scope', 'level', 'description']
ordering = ['org', 'org__sort', 'create_time'] ordering = ['org', 'org__sort', 'create_time']
@ -99,7 +99,7 @@ def cal_count(qtask, org):
qorg.save() qorg.save()
class QActionViewSet(PageOrNot, ListModelMixin, DestroyModelMixin, RetrieveModelMixin,GenericViewSet): 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') queryset = QAction.objects.select_related('file', 'atype', 'afield', 'qtask', 'belong_dept')
filterset_fields = ['qtask', 'belong_dept', 'atype', 'afield'] filterset_fields = ['qtask', 'belong_dept', 'atype', 'afield']
serializer_class = QActionListSerializer serializer_class = QActionListSerializer