feat: 增加puorder filter

This commit is contained in:
caoqianming 2023-10-25 08:42:51 +08:00
parent 4894f134c5
commit c88575a617
2 changed files with 16 additions and 4 deletions

View File

@ -1,5 +1,6 @@
from django_filters import rest_framework as filters
from apps.pum.models import PuPlanItem, PuPlan
from apps.pum.models import PuPlanItem, PuPlan, PuOrder
class PuPlanFilter(filters.FilterSet):
class Meta:
@ -8,6 +9,7 @@ class PuPlanFilter(filters.FilterSet):
"state": ["exact", "in"]
}
class PuPlanItemFilter(filters.FilterSet):
class Meta:
model = PuPlanItem
@ -18,3 +20,13 @@ class PuPlanItemFilter(filters.FilterSet):
"pu_order": ["exact", 'isnull'],
"pu_order__state": ["exact", "in"]
}
class PuOrderFilter(filters.FilterSet):
class Meta:
model = PuOrder
fields = {
"supplier": ["exact"],
"delivery_date": ["exact", "gte", "lte"],
"state": ["exact", "in"],
}

View File

@ -6,7 +6,7 @@ from apps.pum.serializers import (SupplierSerializer, PuPlanSerializer, PuPlanIt
from rest_framework.exceptions import ParseError, PermissionDenied
from rest_framework.decorators import action
from rest_framework import serializers
from apps.pum.filters import PuPlanItemFilter
from apps.pum.filters import PuPlanItemFilter, PuOrderFilter
from django.db import transaction
from rest_framework.response import Response
from django.utils import timezone
@ -96,7 +96,7 @@ class PuOrderViewSet(CustomModelViewSet):
"""
queryset = PuOrder.objects.all()
serializer_class = PuOrderSerializer
filterset_fields = ['state', 'supplier']
filterset_class = PuOrderFilter
search_fields = ['number', 'supplier__name']
select_related_fields = ['create_by', 'update_by', 'supplier']