Files
e-trznice/backend/account/filters.py
2025-10-02 00:54:34 +02:00

31 lines
1.7 KiB
Python

import django_filters
from django.contrib.auth import get_user_model
User = get_user_model()
class UserFilter(django_filters.FilterSet):
role = django_filters.CharFilter(field_name="role", lookup_expr="exact")
account_type = django_filters.CharFilter(field_name="account_type", lookup_expr="exact")
email = django_filters.CharFilter(field_name="email", lookup_expr="icontains")
phone_number = django_filters.CharFilter(field_name="phone_number", lookup_expr="icontains")
city = django_filters.CharFilter(field_name="city", lookup_expr="icontains")
street = django_filters.CharFilter(field_name="street", lookup_expr="icontains")
PSC = django_filters.CharFilter(field_name="PSC", lookup_expr="exact")
ICO = django_filters.CharFilter(field_name="ICO", lookup_expr="exact")
RC = django_filters.CharFilter(field_name="RC", lookup_expr="exact")
var_symbol = django_filters.NumberFilter(field_name="var_symbol")
bank_account = django_filters.CharFilter(field_name="bank_account", lookup_expr="icontains")
GDPR = django_filters.BooleanFilter(field_name="GDPR")
is_active = django_filters.BooleanFilter(field_name="is_active")
email_verified = django_filters.BooleanFilter(field_name="email_verified")
create_time_after = django_filters.IsoDateTimeFilter(field_name="create_time", lookup_expr="gte")
create_time_before = django_filters.IsoDateTimeFilter(field_name="create_time", lookup_expr="lte")
class Meta:
model = User
fields = [
"role", "account_type", "email", "phone_number", "city", "street", "PSC",
"ICO", "RC", "var_symbol", "bank_account", "GDPR", "is_active", "email_verified",
"create_time_after", "create_time_before"
]