filter.py 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. from django_filters import FilterSet
  2. from .models import InboundBill, MaterialDetail ,OutboundBill ,OutMaterialDetail
  3. class OutboundBillFilter(FilterSet):
  4. class Meta:
  5. model = OutboundBill
  6. fields = {
  7. "billId": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
  8. "number": ['exact', 'icontains'],
  9. "type": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range', 'icontains'],
  10. "date": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
  11. "department": ['exact', 'icontains'],
  12. "warehouse": ['exact', 'icontains'],
  13. "creater": ['exact', 'icontains'],
  14. "note": ['exact', 'icontains'],
  15. "totalCount": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
  16. "create_time": ['exact', 'gt', 'gte', 'lt', 'lte', 'range'],
  17. "update_time": ['exact', 'gt', 'gte', 'lt', 'lte', 'range'],
  18. "is_delete": ['exact'],
  19. "bound_status" : ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
  20. "audit_status" : ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
  21. "save_status" : ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
  22. }
  23. class InboundBillFilter(FilterSet):
  24. class Meta:
  25. model = InboundBill
  26. fields = {
  27. "billId": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
  28. "number": ['exact', 'icontains'],
  29. "type": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range', 'icontains'],
  30. "date": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
  31. "department": ['exact', 'icontains'],
  32. "warehouse": ['exact', 'icontains'],
  33. "creater": ['exact', 'icontains'],
  34. "note": ['exact', 'icontains'],
  35. "totalCount": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
  36. "create_time": ['exact', 'gt', 'gte', 'lt', 'lte', 'range'],
  37. "update_time": ['exact', 'gt', 'gte', 'lt', 'lte', 'range'],
  38. "is_delete": ['exact'],
  39. "bound_status" : ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
  40. "audit_status" : ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
  41. "save_status" : ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
  42. }
  43. class MaterialDetailFilter(FilterSet):
  44. class Meta:
  45. model = MaterialDetail
  46. fields = {
  47. "id": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
  48. "bound_billId": ['exact'],
  49. "entryIds": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
  50. "production_batch": ['exact', 'icontains'],
  51. "goods_code": ['exact', 'icontains'],
  52. "goods_name": ['exact', 'icontains'],
  53. "goods_std": ['exact', 'icontains'],
  54. "goods_weight": ['exact', 'icontains'],
  55. "plan_qty": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
  56. "goods_total_weight": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
  57. "goods_unit": ['exact', 'icontains'],
  58. "note": ['exact', 'icontains'],
  59. "create_time": ['exact', 'gt', 'gte', 'lt', 'lte', 'range'],
  60. "update_time": ['exact', 'gt', 'gte', 'lt', 'lte', 'range'],
  61. "is_delete": ['exact'],
  62. }
  63. class OutMaterialDetailFilter(FilterSet):
  64. class Meta:
  65. model = OutMaterialDetail
  66. fields = {
  67. "id": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
  68. "bound_billId": ['exact'],
  69. "entryIds": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
  70. "production_batch": ['exact', 'icontains'],
  71. "goods_code": ['exact', 'icontains'],
  72. "goods_name": ['exact', 'icontains'],
  73. "goods_weight": ['exact', 'icontains'],
  74. "goods_out_qty": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
  75. "goods_total_weight": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
  76. "goods_unit": ['exact', 'icontains'],
  77. "note": ['exact', 'icontains'],
  78. "create_time": ['exact', 'gt', 'gte', 'lt', 'lte', 'range'],
  79. "update_time": ['exact', 'gt', 'gte', 'lt', 'lte', 'range'],
  80. "is_delete": ['exact'],
  81. }