123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121 |
- from django_filters import FilterSet, NumberFilter, CharFilter
- from .models import ContainerListModel,ContainerDetailModel,ContainerOperationModel,TaskModel,ContainerWCSModel,ContainerDetailLogModel
- from django_filters import rest_framework as filters
- class ContainerDetailLogFilter(filters.FilterSet):
- goods_code = filters.CharFilter(field_name='container_detail__goods_code', lookup_expr='exact')
- goods_code__icontains = filters.CharFilter(field_name='container_detail__goods_code', lookup_expr='icontains')
-
- container_code = filters.CharFilter(field_name='container_detail__container__container_code', lookup_expr='exact')
-
- batch = filters.CharFilter(field_name='container_detail__batch__bound_number', lookup_expr='exact')
- batch__icontains = filters.CharFilter(field_name='container_detail__batch__bound_number', lookup_expr='icontains')
- class Meta:
- model = ContainerDetailLogModel
- fields = {
- "id": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
- "container_detail": ['exact'],
- "log_type": ['exact', 'icontains'],
- "old_goods_qty": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
- "old_goods_out_qty": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
- "old_status": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
- "new_goods_qty": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
- "new_goods_out_qty": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
- "new_status": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
- "creater": ['exact', 'icontains'],
- "create_time": ['exact', 'gt', 'gte', 'lt', 'lte', 'range'],
-
- }
- class ContainerListFilter(FilterSet):
- class Meta:
- model = ContainerListModel
- fields = {
- "id": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
- "container_code": ['exact', 'icontains'],
- "current_location": ['exact', 'icontains'],
- "status": ['exact', 'icontains'],
- "last_operation": ['exact', 'icontains'],
- }
- class ContainerDetailFilter(FilterSet):
- class Meta:
- model = ContainerDetailModel
- fields = {
- "id": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
- "month": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
- "container" : ['exact'],
- "batch": ['exact'],
- "goods_code": ['exact', 'icontains'],
- "goods_desc": ['exact', 'icontains'],
- "goods_qty": ['exact', 'icontains'],
- "goods_weight": ['exact', 'icontains'],
- "status": ['exact', 'lte','icontains'],
- "creater": ['exact', 'icontains'],
- "create_time": ['exact', 'gt', 'gte', 'lt', 'lte', 'range'],
- "update_time": ['exact', 'gt', 'gte', 'lt', 'lte', 'range'],
- }
- class ContainerOperationFilter(FilterSet):
- class Meta:
- model = ContainerOperationModel
- fields = {
- "id": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
- "month": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
- "container" : ['exact'],
- "operation_type": ['exact', 'icontains'],
- "batch": ['exact'],
- "goods_code" : ['exact', 'icontains'],
- "goods_desc": ['exact', 'icontains'],
- "goods_qty": ['exact', 'icontains'],
- "goods_weight": ['exact', 'icontains'],
-
- "operator": ['exact', 'icontains'],
- "timestamp": ['exact', 'gt', 'gte', 'lt', 'lte', 'range'],
- "from_location": ['exact', 'icontains'],
- "to_location": ['exact', 'icontains'],
- "memo": ['exact', 'icontains'],
- }
- class WCSTaskFilter(FilterSet):
- class Meta:
- model = ContainerWCSModel
- fields = {
- "id": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
- "taskid": ['exact', 'icontains'],
- "batch": ['exact'],
- "batch_out": ['exact'],
- "bound_list": ['exact'],
- "batch_number": ['exact', 'icontains'],
- "sequence": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
- "priority": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
- "month": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
- "tasktype": ['exact', 'icontains'],
- "tasknumber": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
- "order_number": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
- "container": ['exact', 'icontains'],
- "current_location": ['exact', 'icontains'],
- "target_location": ['exact', 'icontains'],
- "message": ['exact', 'icontains'],
- "working": ['exact', 'icontains','gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
- "status": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
- "create_time": ['exact', 'gt', 'gte', 'lt', 'lte', 'range'],
- "is_delete": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
- }
- class TaskFilter(FilterSet):
- class Meta:
- model = TaskModel
- fields = {
- "id": ['exact', 'gt', 'gte', 'lt', 'lte', 'isnull', 'in', 'range'],
- "task_wcs" : ['exact'],
- "container_detail" : ['exact'],
- "batch_detail": ['exact'],
- "container_detail__goods_code": ['exact', 'icontains'],
- "container_detail__goods_desc": ['exact', 'icontains'],
- }
-
|