from django.conf import settings from django.core.cache import cache from django.db.models import Count, Q from django.db.models.query import QuerySet from django.shortcuts import render from django.utils import timezone from rest_framework import status from rest_framework.decorators import action, permission_classes from rest_framework.mixins import ListModelMixin, RetrieveModelMixin from rest_framework.response import Response from rest_framework.viewsets import GenericViewSet, ModelViewSet from utils.pagination import PageOrNot from apps.system.mixins import CreateUpdateCustomMixin from apps.system.models import Organization from apps.system.permission import get_permission_list, has_permission from apps.system.permission_data import RbacFilterSet from .models import * from .serializers import * # Create your views here. class InspectItemViewSet(CreateUpdateCustomMixin, ModelViewSet): """ 检查表清单:增删改查 """ perms_map = {'get': '*', 'post': 'inspectitem', 'put': 'inspectitem', 'delete': 'inspectitem'} queryset = InspectItem.objects.all() serializer_class = InspectItemSerializer pagination_class = None search_fields = ['name', 'require'] filterset_fields = ['type','cate'] ordering = ['sortnum', 'cate__sort', 'create_time'] class InspectTaskViewSet(CreateUpdateCustomMixin, ModelViewSet): perms_map = {'get': '*', 'post': 'inspecttask_create', 'put': 'inspecttask_update', 'delete': 'inspecttask_delete'} queryset = InspectTask.objects.all() serializer_class = InspectTaskSerializer search_fields = ['name'] ordering = ['-create_time'] class SubtaskViewSet(ModelViewSet): perms_map = {'get': '*', 'post': 'inspecttask_create', 'put': 'inspecttask_update', 'delete': 'inspecttask_delete'} queryset = SubInspectTask.objects.all() ordering = ['create_time']