diff --git a/apps/ecm/filters.py b/apps/ecm/filters.py index 01873b2e..15a5d0c6 100644 --- a/apps/ecm/filters.py +++ b/apps/ecm/filters.py @@ -5,7 +5,15 @@ from apps.ecm.models import Event class EventFilterSet(filters.FilterSet): start_create = filters.DateFilter(field_name="create_time", lookup_expr='gte') end_create = filters.DateFilter(field_name="create_time", lookup_expr='lte') - + is_handled = filters.BooleanFilter(method='filter_is_handled') + class Meta: model = Event - fields = ['cates', 'start_create', 'end_create'] + fields = ['cates', 'start_create', 'end_create', 'is_handled'] + + def filter_is_handled(self, queryset, name, value): + if value: # 我的 + queryset = queryset.exclude(handle_user=None) + else: + queryset = queryset.filter(handle_user=None) + return queryset