filters.py 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. #coding=utf-8
  2. import django_filters
  3. from apps.base import clean_datetime_range
  4. from .models import *
  5. class BranchFilter(django_filters.FilterSet):
  6. name = django_filters.CharFilter(field_name='name',lookup_expr='icontains')
  7. tel = django_filters.CharFilter(field_name='tel', lookup_expr='icontains')
  8. enabled = django_filters.CharFilter(field_name='enabled')
  9. class Meta:
  10. model = Branch
  11. fields = (
  12. 'name', 'tel', 'enabled'
  13. )
  14. def __init__(self, data=None, *args, **kwargs):
  15. data = clean_datetime_range(data, 'create_time')
  16. super(BranchFilter, self).__init__(data, *args, **kwargs)
  17. class MemberFilter(django_filters.FilterSet):
  18. nickname = django_filters.CharFilter(field_name='nickname', lookup_expr='icontains')
  19. tel = django_filters.CharFilter(field_name='tel', lookup_expr='icontains')
  20. class Meta:
  21. model = Member
  22. fields = '__all__'
  23. class MemberCouponFilter(django_filters.FilterSet):
  24. write_off = django_filters.CharFilter(field_name='write_off')
  25. coupon_name = django_filters.CharFilter(field_name='coupon__name', lookup_expr='icontains')
  26. activity_name = django_filters.CharFilter(field_name='activity__title', lookup_expr='icontains')
  27. class Meta:
  28. model = MemberCoupon
  29. fields = '__all__'
  30. class OrderFilter(django_filters.FilterSet):
  31. activity_name = django_filters.CharFilter(field_name='activity__title', lookup_expr='icontains')
  32. delete = django_filters.CharFilter(field_name='delete')
  33. class Meta:
  34. model = Order
  35. fields = '__all__'
  36. class CouponFilter(django_filters.FilterSet):
  37. name = django_filters.CharFilter(field_name='name',lookup_expr='icontains')
  38. enabled = django_filters.CharFilter(field_name='enabled')
  39. class Meta:
  40. model = Coupon
  41. fields = (
  42. 'name', 'enabled'
  43. )
  44. def __init__(self, data=None, *args, **kwargs):
  45. data = clean_datetime_range(data, 'create_time')
  46. super(CouponFilter, self).__init__(data, *args, **kwargs)