From 060c07abd79e0cda93eeb92eb22cb5c5b5bc085a Mon Sep 17 00:00:00 2001 From: caoqianming Date: Wed, 9 Apr 2025 13:19:12 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E6=9D=A5=E6=96=99=E5=8A=A0=E5=B7=A5?= =?UTF-8?q?=E5=92=8C=E5=AE=8C=E6=88=90=E7=AD=9B=E9=80=89=E5=AE=8C=E5=96=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/wpm/filters.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/wpm/filters.py b/apps/wpm/filters.py index 7040a96a..59b1ca7d 100644 --- a/apps/wpm/filters.py +++ b/apps/wpm/filters.py @@ -48,11 +48,12 @@ class WMaterialFilter(filters.FilterSet): mgroup = self.data.get("mgroup", None) if mgroup: process = Mgroup.objects.get(id=mgroup).process + matoutIds = list(Route.objects.filter(process=process).values_list("material_out__id", flat=True).distinct()) if value == "todo": - qs = queryset.exclude(material__process=process)|queryset.filter(state=WMaterial.WM_REPAIR) + qs = queryset.exclude(material__id__in=matoutIds)|queryset.filter(state=WMaterial.WM_REPAIR) return qs elif value == "done": - qs = queryset.filter(material__process=process)|queryset.filter(state=WMaterial.WM_REPAIRED) + qs = queryset.filter(material__id__in=matoutIds)|queryset.filter(state=WMaterial.WM_REPAIRED) return qs else: raise ParseError("请提供工段查询条件")