49 lines
1.9 KiB
Python
49 lines
1.9 KiB
Python
from typing import List
|
|
from rest_framework.viewsets import ModelViewSet
|
|
from apps.plan.serializers import MemberSerializer
|
|
from logging import setLoggerClass
|
|
from utils import queryset
|
|
from rest_framework.views import APIView
|
|
from rest_framework.generics import ListAPIView
|
|
from apps.system.models import Dict
|
|
from apps.system.permission_data import RbacFilterSet
|
|
from apps.system.mixins import CreateUpdateCustomMixin, OptimizationMixin
|
|
import random
|
|
from rest_framework.decorators import action
|
|
from utils.pagination import PageOrNot
|
|
from apps.project.models import Project
|
|
from apps.project.filters import ProjectFilter
|
|
from apps.audit.serializers import *
|
|
|
|
|
|
|
|
class MyAuditTaskList(ListAPIView):
|
|
perms_map = {'get': 'myaudittask_view'}
|
|
serializer_class = ProjectSerializerX
|
|
filterset_class = ProjectFilter
|
|
search_fields = ['auditee__name', 'plan__name']
|
|
ordering=['-pk']
|
|
|
|
def get_queryset(self):
|
|
queryset = Project.objects.filter(certapp_project__member_certapp__user=self.request.user)
|
|
if hasattr(self.get_serializer_class(), 'setup_eager_loading'):
|
|
queryset = self.get_serializer_class().setup_eager_loading(queryset)
|
|
return queryset
|
|
|
|
# class AuditNumberViewSet(CreateUpdateCustomMixin, ModelViewSet):
|
|
# perms_map = {'get': 'myaudittask_view'}
|
|
# serializer_class = ProjectSerializerX
|
|
# filterset_class = ProjectFilter
|
|
# search_fields = ['auditee__name', 'plan__name']
|
|
# ordering=['-pk']
|
|
class MyAuditCertappList(PageOrNot, ListAPIView):
|
|
perms_map = {'get': 'myaudittask_view'}
|
|
serializer_class = CertappSerializerX
|
|
filterset_fields = ['project']
|
|
ordering=['-pk']
|
|
|
|
def get_queryset(self):
|
|
queryset = CertApp.objects.filter(member_certapp__user=self.request.user)
|
|
if hasattr(self.get_serializer_class(), 'setup_eager_loading'):
|
|
queryset = self.get_serializer_class().setup_eager_loading(queryset)
|
|
return queryset |