feat: doorauth增加查询条件
This commit is contained in:
parent
3b0710626a
commit
4ca344a86a
|
@ -1,5 +1,5 @@
|
||||||
from django_filters import rest_framework as filters
|
from django_filters import rest_framework as filters
|
||||||
from .models import TDevice
|
from .models import TDevice, DoorAuth
|
||||||
|
|
||||||
|
|
||||||
class TDeviceFilterSet(filters.FilterSet):
|
class TDeviceFilterSet(filters.FilterSet):
|
||||||
|
@ -15,3 +15,14 @@ class TDeviceFilterSet(filters.FilterSet):
|
||||||
elif value == 'used':
|
elif value == 'used':
|
||||||
queryset = queryset.exclude(employee=None)
|
queryset = queryset.exclude(employee=None)
|
||||||
return queryset
|
return queryset
|
||||||
|
|
||||||
|
|
||||||
|
class DoorAuthFilter(filters.FilterSet):
|
||||||
|
class Meta:
|
||||||
|
model = DoorAuth
|
||||||
|
fields = {
|
||||||
|
"employee": ["exact", "in"],
|
||||||
|
"dchannel": ["exact", "in"],
|
||||||
|
"employee__type": ["exact", "in"],
|
||||||
|
"employee__belong_dept": ["exact", "in"],
|
||||||
|
}
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
from apps.third.filters import TDeviceFilterSet
|
from apps.third.filters import TDeviceFilterSet, DoorAuthFilter
|
||||||
from apps.third.models import BltBind, TDevice, Tlog, DoorAuth
|
from apps.third.models import BltBind, TDevice, Tlog, DoorAuth
|
||||||
from apps.third.serializers import BindAreaSerializer, BltBindCreateSerializer, BltQuerySerializer, BltSerializer, LabelLocationSerializer, TDeviceSerializer, TDeviceUpdateSerializer, TlogSerializer, DoorAuthSerializer
|
from apps.third.serializers import BindAreaSerializer, BltBindCreateSerializer, BltQuerySerializer, BltSerializer, LabelLocationSerializer, TDeviceSerializer, TDeviceUpdateSerializer, TlogSerializer, DoorAuthSerializer
|
||||||
from apps.utils.viewsets import CustomGenericViewSet
|
from apps.utils.viewsets import CustomGenericViewSet
|
||||||
|
@ -549,7 +549,7 @@ class DoorAuthViewSet(ListModelMixin, DestroyModelMixin, CustomGenericViewSet):
|
||||||
perms_map = {'get': '*', 'delete': 'doorauth.delete'}
|
perms_map = {'get': '*', 'delete': 'doorauth.delete'}
|
||||||
queryset = DoorAuth.objects.all()
|
queryset = DoorAuth.objects.all()
|
||||||
serializer_class = DoorAuthSerializer
|
serializer_class = DoorAuthSerializer
|
||||||
filterset_fields = ['dchannel', 'employee']
|
filterset_class = DoorAuthFilter
|
||||||
select_related_fields = ['dchannel', 'employee']
|
select_related_fields = ['dchannel', 'employee']
|
||||||
search_fields = ['employee__name']
|
search_fields = ['employee__name']
|
||||||
ordering = '-create_time'
|
ordering = '-create_time'
|
||||||
|
|
Loading…
Reference in New Issue