filter.py 3.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. from django_filters import FilterSet
  2. from .models import StockshelfModel
  3. class StockshelfFilter(FilterSet):
  4. class Meta:
  5. model = StockshelfModel
  6. fields = {
  7. "id": ['exact', 'iexact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
  8. "warehouse_code": ['exact', 'iexact', 'contains', 'icontains'],
  9. "warehouse_name": ['exact', 'iexact', 'contains', 'icontains'],
  10. "shelf_name": ['exact', 'iexact', 'contains', 'icontains'],
  11. "shelf_type": ['exact', 'iexact', 'contains', 'icontains'],
  12. "row": ['exact', 'iexact', 'gt', 'gte', 'lt', 'lte', 'range'],
  13. "col": ['exact', 'iexact', 'gt', 'gte', 'lt', 'lte', 'range'],
  14. "layer": ['exact', 'iexact', 'gt', 'gte', 'lt', 'lte', 'range'],
  15. "ip_address": ['exact', 'iexact', 'contains', 'icontains'],
  16. "port": ['exact', 'iexact', 'gt', 'gte', 'lt', 'lte', 'range'],
  17. "status": ['exact', 'iexact', 'contains', 'icontains'],
  18. "create_time": ['year', 'month', 'day', 'week_day', 'gt', 'gte', 'lt', 'lte', 'range'],
  19. "update_time": ['year', 'month', 'day', 'week_day', 'gt', 'gte', 'lt', 'lte', 'range']
  20. }
  21. class StockBinFilter(FilterSet):
  22. class Meta:
  23. model = StockshelfModel
  24. fields = {
  25. "id": ['exact', 'iexact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
  26. "warehouse_code": ['exact', 'iexact', 'contains', 'icontains', 'startswith'],
  27. "warehouse_name": ['exact', 'iexact', 'contains', 'icontains', 'startswith'],
  28. "shelf_name": ['exact', 'iexact', 'contains', 'icontains', 'startswith'],
  29. "shelf_type": ['exact', 'iexact', 'contains', 'icontains'],
  30. "row": ['exact', 'gt', 'gte', 'lt', 'lte', 'in', 'range', 'isnull'],
  31. "col": ['exact', 'gt', 'gte', 'lt', 'lte', 'in', 'range', 'isnull'],
  32. "layer": ['exact', 'gt', 'gte', 'lt', 'lte', 'in', 'range', 'isnull'],
  33. "ip_address": ['exact', 'contains', 'startswith'],
  34. "port": ['exact', 'gt', 'gte', 'lt', 'lte', 'range', 'isnull'],
  35. "status": ['exact', 'iexact', 'contains', 'icontains'],
  36. "empty_label": ['exact', 'isnull'],
  37. "shelf_department": ['exact', 'iexact', 'contains', 'icontains'],
  38. "shelf_status": ['exact', 'iexact', 'contains', 'icontains'],
  39. "goods_code": ['exact', 'iexact', 'contains', 'icontains', 'startswith'],
  40. "goods_name": ['exact', 'iexact', 'contains', 'icontains', 'startswith'],
  41. "goods_std": ['exact', 'iexact', 'contains', 'icontains', 'startswith'],
  42. "goods_desc": ['exact', 'iexact', 'contains', 'icontains', 'startswith'],
  43. "goods_qty": ['exact', 'gt', 'gte', 'lt', 'lte', 'range', 'isnull'],
  44. "goods_unit": ['exact', 'iexact', 'contains', 'icontains'],
  45. "goods_price": ['exact', 'gt', 'gte', 'lt', 'lte', 'range', 'isnull'],
  46. "goods_batch": ['exact', 'iexact', 'contains', 'icontains', 'startswith'],
  47. "goods_notes": ['exact', 'iexact', 'contains', 'icontains', 'startswith'],
  48. "goods_in": ['exact', 'gt', 'gte', 'lt', 'lte', 'range', 'isnull'],
  49. "goods_out": ['exact', 'gt', 'gte', 'lt', 'lte', 'range', 'isnull'],
  50. "create_time": ['year', 'month', 'day', 'week_day', 'gt', 'gte', 'lt', 'lte', 'range'],
  51. "update_time": ['year', 'month', 'day', 'week_day', 'gt', 'gte', 'lt', 'lte', 'range']
  52. }