forked from erp-dev/erp
feat: clean
This commit is contained in:
@@ -6,6 +6,8 @@ from rest_framework.decorators import action
|
|||||||
from rest_framework.response import Response
|
from rest_framework.response import Response
|
||||||
from django_filters.rest_framework import DjangoFilterBackend
|
from django_filters.rest_framework import DjangoFilterBackend
|
||||||
from django_filters import rest_framework as dj_filters
|
from django_filters import rest_framework as dj_filters
|
||||||
|
from django.views.decorators.cache import cache_page
|
||||||
|
from django.utils.decorators import method_decorator
|
||||||
|
|
||||||
from . import serializers
|
from . import serializers
|
||||||
|
|
||||||
@@ -103,6 +105,7 @@ class BaseViewSet(BasicInfoFilterMixin, viewsets.ModelViewSet):
|
|||||||
raise PermissionDenied("无权限创建该对象")
|
raise PermissionDenied("无权限创建该对象")
|
||||||
|
|
||||||
|
|
||||||
|
@method_decorator(cache_page(20), name='list')
|
||||||
class QuickInputViewSet(BasicInfoFilterMixin, viewsets.ModelViewSet):
|
class QuickInputViewSet(BasicInfoFilterMixin, viewsets.ModelViewSet):
|
||||||
queryset = serializers.basic_models.QuickInput.objects.all()
|
queryset = serializers.basic_models.QuickInput.objects.all()
|
||||||
serializer_class = serializers.QuickInputSerializer
|
serializer_class = serializers.QuickInputSerializer
|
||||||
@@ -111,11 +114,8 @@ class QuickInputViewSet(BasicInfoFilterMixin, viewsets.ModelViewSet):
|
|||||||
def filter_queryset(self, queryset):
|
def filter_queryset(self, queryset):
|
||||||
qs = super().filter_queryset(queryset)
|
qs = super().filter_queryset(queryset)
|
||||||
group = self.request.query_params.get('group')
|
group = self.request.query_params.get('group')
|
||||||
name = self.request.query_params.get('name')
|
|
||||||
if group:
|
if group:
|
||||||
qs = qs.filter(group=group)
|
qs = qs.filter(group=group)
|
||||||
if name:
|
|
||||||
qs = qs.filter(name__icontains=name)
|
|
||||||
return qs
|
return qs
|
||||||
|
|
||||||
@action(detail=False, methods=['get'], url_path='groups')
|
@action(detail=False, methods=['get'], url_path='groups')
|
||||||
@@ -161,7 +161,7 @@ class EmployeeTypeViewSet(BaseViewSet):
|
|||||||
serializer_class = serializers.EmployeeTypeSerializer
|
serializer_class = serializers.EmployeeTypeSerializer
|
||||||
|
|
||||||
|
|
||||||
class CustomerViewSet(BaseViewSet):
|
class CustomerViewSet(BaseViewSet, BasicInfoFilterMixin):
|
||||||
queryset = serializers.basic_models.Customer.objects
|
queryset = serializers.basic_models.Customer.objects
|
||||||
serializer_class = serializers.CustomerSerializer
|
serializer_class = serializers.CustomerSerializer
|
||||||
permission_classes = [IsAuthenticated, DjangoModelPermissions]
|
permission_classes = [IsAuthenticated, DjangoModelPermissions]
|
||||||
@@ -174,13 +174,6 @@ class CustomerViewSet(BaseViewSet):
|
|||||||
def can_view_all(self) -> bool:
|
def can_view_all(self) -> bool:
|
||||||
return self.request.user.is_superuser or self.request.user.has_perm('basic_info.view_all_customers')
|
return self.request.user.is_superuser or self.request.user.has_perm('basic_info.view_all_customers')
|
||||||
|
|
||||||
def filter_queryset(self, queryset):
|
|
||||||
qs = super().filter_queryset(queryset)
|
|
||||||
name = self.request.query_params.get('name')
|
|
||||||
if name:
|
|
||||||
qs = qs.filter(name__icontains=name)
|
|
||||||
return qs
|
|
||||||
|
|
||||||
def get_queryset(self):
|
def get_queryset(self):
|
||||||
qs = super().get_queryset()
|
qs = super().get_queryset()
|
||||||
# 应用可见性过滤
|
# 应用可见性过滤
|
||||||
|
|||||||
Reference in New Issue
Block a user