fix: 来料加工和完成筛选完善

This commit is contained in:
caoqianming 2025-04-09 13:19:12 +08:00
parent c0eacd7fa8
commit 060c07abd7
1 changed files with 3 additions and 2 deletions

View File

@ -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("请提供工段查询条件")