diff --git a/apps/wpmw/filters.py b/apps/wpmw/filters.py index fe3d0108..32549f36 100644 --- a/apps/wpmw/filters.py +++ b/apps/wpmw/filters.py @@ -23,10 +23,21 @@ class WprFilter(filters.FilterSet): def filter_can_use(self, queryset, name, value): if value == 'yes': # 交接记录 - handoverws = Handoverbw.objects.filter(handoverb__handover__submit_time__isnull=True).values_list('wpr__id', flat=True) + handoverws = Handoverbw.objects.filter(handoverb__handover__submit_time__isnull=True) + if self.data.get("wm"): + handoverws = handoverws.filter(handoverb__wm=self.data.get("wm")) + handoverws = handoverws.values_list('wpr__id', flat=True) # 生产日志 - mlogbws = Mlogbw.objects.filter(mlogb__mlog__submit_time__isnull=True).values_list('wpr__id', flat=True) + mlogbws = Mlogbw.objects.filter(mlogb__mlog__submit_time__isnull=True) + if self.data.get("wm"): + mlogbws = mlogbws.filter(mlogb__wm_in=self.data.get("wm")) + mlogbws = mlogbws.values_list('wpr__id', flat=True) # 出入库记录 - mioitemws = MIOItemw.objects.filter(mioitem__mio__submit_time__isnull=True).values_list('wpr__id', flat=True) + mioitemws = MIOItemw.objects.filter(mioitem__mio__submit_time__isnull=True) + if self.data.get("wm"): + mioitemws = mioitemws.filter(mioitem__wm=self.data.get("wm")) + if self.data.get("mb"): + mioitemws = mioitemws.filter(mioitem__mb=self.data.get("mb")) + mioitemws = mioitemws.values_list('wpr__id', flat=True) return queryset.exclude(id__in=handoverws).exclude(id__in=mlogbws).exclude(id__in=mioitemws) return queryset \ No newline at end of file