diff --git a/apps/opm/filters.py b/apps/opm/filters.py new file mode 100644 index 00000000..6ea699db --- /dev/null +++ b/apps/opm/filters.py @@ -0,0 +1,9 @@ +from django_filters import rest_framework as filters +from apps.opm.models import Operation + +class OperationFilterset(filters.FilterSet): + start_create = filters.DateTimeFilter(field_name="create_time", lookup_expr='gte') + end_create = filters.DateTimeFilter(field_name="create_time", lookup_expr='lte') + class Meta: + model = Operation + fields = ['state', 'cates', 'area', 'create_by', 'start_create', 'end_create'] \ No newline at end of file diff --git a/apps/opm/views.py b/apps/opm/views.py index e0366487..6a3cbc32 100644 --- a/apps/opm/views.py +++ b/apps/opm/views.py @@ -16,6 +16,7 @@ from rest_framework.serializers import Serializer from apps.wf.models import Ticket from django.core.cache import cache from django.db import transaction +from apps.opm.filters import OperationFilterset # Create your views here. @@ -42,7 +43,7 @@ class OperationViewSet(CustomModelViewSet): select_related_fields = ['area', 'dept_bus', 'dept_ter', 'coordinator'] prefetch_related_fields = ['cates'] search_fields = ['name'] - filterset_fields = ['state', 'cates', 'area', 'create_by'] + filterset_class = OperationFilterset # data_filter = True def update(self, request, *args, **kwargs):