feat: ecm filter 查询
This commit is contained in:
parent
315f832ff2
commit
11ced96400
|
@ -6,10 +6,16 @@ class EventFilterSet(filters.FilterSet):
|
|||
start_create = filters.DateTimeFilter(field_name="create_time", lookup_expr='gte')
|
||||
end_create = filters.DateTimeFilter(field_name="create_time", lookup_expr='lte')
|
||||
is_handled = filters.BooleanFilter(method='filter_is_handled')
|
||||
cates__in = filters.CharFilter(method='filter_cates__in')
|
||||
cates__code__in = filters.CharFilter(method='filter_cates__code__in')
|
||||
|
||||
class Meta:
|
||||
model = Event
|
||||
fields = ['cates', 'start_create', 'end_create', 'is_handled', 'area']
|
||||
fields = {
|
||||
"cates": ["exact"],
|
||||
"area": ["exact"],
|
||||
"mark": ["exact"],
|
||||
}
|
||||
|
||||
def filter_is_handled(self, queryset, name, value):
|
||||
if value: # 我的
|
||||
|
@ -17,3 +23,13 @@ class EventFilterSet(filters.FilterSet):
|
|||
else:
|
||||
queryset = queryset.filter(handle_user=None)
|
||||
return queryset
|
||||
|
||||
def filter_cates__in(self, queryset, name, value):
|
||||
if value:
|
||||
vals = value.split(',')
|
||||
return queryset.filter(cates__in=vals)
|
||||
|
||||
def filter_cates__code__in(self, queryset, name, value):
|
||||
if value:
|
||||
vals = value.split(',')
|
||||
return queryset.filter(cates__code__in=vals)
|
Loading…
Reference in New Issue