From 7f619a36b08cdfc23b75e2dcc7df65cae1341bf7 Mon Sep 17 00:00:00 2001 From: caoqianming Date: Thu, 14 Aug 2025 14:58:50 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20mlogbw=E5=A2=9E=E5=8A=A0type=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E5=8C=BA=E5=88=86inout?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/wpm/filters.py | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/apps/wpm/filters.py b/apps/wpm/filters.py index 6044c34a..c6237732 100644 --- a/apps/wpm/filters.py +++ b/apps/wpm/filters.py @@ -225,6 +225,7 @@ class BatchStFilter(filters.FilterSet): class MlogbwFilter(filters.FilterSet): + type = filters.CharFilter(label="in/out", method='filter_type') class Meta: model = Mlogbw fields = { @@ -236,4 +237,13 @@ class MlogbwFilter(filters.FilterSet): "ftest": ["isnull"], "ftest__is_ok": ["exact"], "ftest__defect_main": ["exact"] - } \ No newline at end of file + } + + def filter_type(self, queryset, name, value): + if value: + if value == 'in': + return queryset.filter(mlogb__material_in__isnull=False) + elif value == 'out': + return queryset.filter(mlogb__material_out__isnull=False) + return queryset + return queryset.none() \ No newline at end of file