feat: batchst增加batch__startswith__in筛选条件
This commit is contained in:
parent
cbaf79084c
commit
bcbaba330d
|
@ -1,6 +1,7 @@
|
|||
from django_filters import rest_framework as filters
|
||||
from apps.wpm.models import SfLog, StLog, WMaterial, Mlog, Handover, Mgroup, Mlogb, Mtask
|
||||
|
||||
from apps.wpm.models import (SfLog, StLog, WMaterial, Mlog,
|
||||
Handover, Mgroup, Mlogb, Mtask, BatchSt)
|
||||
from django.db.models import Q
|
||||
|
||||
class SfLogFilter(filters.FilterSet):
|
||||
class Meta:
|
||||
|
@ -136,3 +137,22 @@ class MlogbFilter(filters.FilterSet):
|
|||
return queryset.filter(material_out__isnull=False)
|
||||
return queryset
|
||||
return queryset.none()
|
||||
|
||||
|
||||
class BatchStFilter(filters.FilterSet):
|
||||
batch__startswith__in = filters.CharFilter(method='filter_batch')
|
||||
|
||||
class Meta:
|
||||
model = BatchSt
|
||||
fields = {
|
||||
"batch": ["exact", "contains", "startswith"],
|
||||
"last_time": ["exact", "gte", "lte"],
|
||||
"update_time": ["exact", "gte", "lte"]
|
||||
}
|
||||
|
||||
def filter_batch(self, queryset, name, value):
|
||||
v_list = value.split(',')
|
||||
query = Q()
|
||||
for value in v_list:
|
||||
query |= Q(batch__startswith=value)
|
||||
return queryset.filter(query)
|
|
@ -14,7 +14,7 @@ from apps.mtm.models import Material, Process
|
|||
from apps.pm.models import Mtask
|
||||
from apps.utils.viewsets import CustomGenericViewSet, CustomModelViewSet
|
||||
|
||||
from .filters import StLogFilter, SfLogFilter, WMaterialFilter, MlogFilter, HandoverFilter, MlogbFilter
|
||||
from .filters import StLogFilter, SfLogFilter, WMaterialFilter, MlogFilter, HandoverFilter, MlogbFilter, BatchStFilter
|
||||
from .models import SfLog, SfLogExp, StLog, WMaterial, Mlog, Handover, Mlogb, AttLog, OtherLog, Fmlog, BatchSt
|
||||
from .serializers import (SflogExpSerializer, SfLogSerializer, StLogSerializer, WMaterialSerializer, MlogRevertSerializer,
|
||||
MlogSerializer, MlogRelatedSerializer, DeptBatchSerializer, HandoverSerializer, HandoverUpdateSerializer,
|
||||
|
@ -523,8 +523,5 @@ class BatchStViewSet(ListModelMixin, CustomGenericViewSet):
|
|||
serializer_class = BatchStSerializer
|
||||
ordering_fields = ["batch", "last_time", "update_time"]
|
||||
ordering = ["batch"]
|
||||
filterset_fields = {
|
||||
"batch": ["exact", "contains", "startswith"],
|
||||
"last_time": ["exact", "gte", "lte"],
|
||||
"update_time": ["exact", "gte", "lte"]
|
||||
}
|
||||
filterset_class = BatchStFilter
|
||||
|
||||
|
|
Loading…
Reference in New Issue