From 274a0df0eb9a855b9d3e869d0cb052200a755d22 Mon Sep 17 00:00:00 2001 From: caoqianming Date: Mon, 12 Aug 2024 16:57:22 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=A3=80=E9=AA=8C=E5=B7=A5=E4=BD=9C?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=9F=A5=E8=AF=A2=E6=9D=A1=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/qm/filters.py | 12 +++++++++++- apps/qm/views.py | 4 ++-- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/apps/qm/filters.py b/apps/qm/filters.py index 1c485f0e..24136c2f 100644 --- a/apps/qm/filters.py +++ b/apps/qm/filters.py @@ -1,5 +1,5 @@ from django_filters import rest_framework as filters -from apps.qm.models import QuaStat, TestItem +from apps.qm.models import QuaStat, TestItem, FtestWork class QuaStatFilter(filters.FilterSet): @@ -22,3 +22,13 @@ class TestItemFilter(filters.FilterSet): class Meta: model = TestItem fields = ['tags__contains', 'mcate_tags__contains'] + + +class FtestWorkFilter(filters.FilterSet): + class Meta: + model = FtestWork + fields = { + "material__process__name": ["exact", "contains"], + "material": ["exact"], + "batch": ["exact"], + } \ No newline at end of file diff --git a/apps/qm/views.py b/apps/qm/views.py index 682fd92d..a6c5d2c5 100644 --- a/apps/qm/views.py +++ b/apps/qm/views.py @@ -14,7 +14,7 @@ import datetime from apps.utils.viewsets import CustomGenericViewSet, CustomModelViewSet from apps.wpm.models import SfLog -from apps.qm.filters import QuaStatFilter, TestItemFilter +from apps.qm.filters import QuaStatFilter, TestItemFilter, FtestWorkFilter from django.db import transaction from apps.qm.models import NotOkOption from apps.qm.services import ftestwork_submit @@ -126,7 +126,7 @@ class FtestWorkViewSet(CustomModelViewSet): create_serializer_class = FtestWorkCreateUpdateSerializer update_serializer_class = FtestWorkCreateUpdateSerializer select_related_fields = ['material'] - filterset_fields = ['material', 'batch'] + filterset_class = FtestWorkFilter def update(self, request, *args, **kwargs): ins:FtestWork = self.get_object()