From ad84876712ebbc9c64cbe21200c84b885640963c Mon Sep 17 00:00:00 2001 From: caoqianming Date: Mon, 16 Oct 2023 10:43:41 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20order,=20pu=5Forder=20=E8=BF=94?= =?UTF-8?q?=E5=9B=9E=E6=9B=B4=E5=A4=9A=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/pum/serializers.py | 7 +++++++ apps/pum/views.py | 1 + apps/sam/serializers.py | 9 +++++++++ 3 files changed, 17 insertions(+) diff --git a/apps/pum/serializers.py b/apps/pum/serializers.py index 014b6364..bc59e3d9 100644 --- a/apps/pum/serializers.py +++ b/apps/pum/serializers.py @@ -61,6 +61,13 @@ class PuPlanItemSerializer(CustomModelSerializer): class PuOrderSerializer(CustomModelSerializer): + supplier_name = serializers.CharField( + source='supplier.name', read_only=True) + create_by_name = serializers.CharField( + source='create_by.name', read_only=True) + update_by_name = serializers.CharField( + source='update_by.name', read_only=True) + class Meta: model = PuOrder fields = '__all__' diff --git a/apps/pum/views.py b/apps/pum/views.py index 34453471..2ed81254 100644 --- a/apps/pum/views.py +++ b/apps/pum/views.py @@ -96,6 +96,7 @@ class PuOrderViewSet(CustomModelViewSet): serializer_class = PuOrderSerializer filterset_fields = ['state', 'supplier'] search_fields = ['number', 'supplier__name'] + select_related_fields = ['create_by', 'update_by', 'supplier'] @transaction.atomic def perform_destroy(self, instance): diff --git a/apps/sam/serializers.py b/apps/sam/serializers.py index 34dde57e..1830ec4c 100644 --- a/apps/sam/serializers.py +++ b/apps/sam/serializers.py @@ -21,6 +21,15 @@ class ContractSerializer(CustomModelSerializer): class OrderSerializer(CustomModelSerializer): + customer_name = serializers.CharField( + source='customer.name', read_only=True) + contract_number = serializers.CharField( + source='contract.number', read_only=True) + create_by_name = serializers.CharField( + source='create_by.name', read_only=True) + update_by_name = serializers.CharField( + source='update_by.name', read_only=True) + class Meta: model = Order fields = '__all__'