From c47b66af6ca9385eb526d8b21ded75f4afe3346b Mon Sep 17 00:00:00 2001 From: caoqianming Date: Thu, 28 Aug 2025 09:54:56 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E4=BC=98=E5=8C=96mlog=20list=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/wpm/serializers.py | 8 ++++++-- apps/wpm/views.py | 15 ++++++++------- 2 files changed, 14 insertions(+), 9 deletions(-) diff --git a/apps/wpm/serializers.py b/apps/wpm/serializers.py index 4a56b9c1..71cb27e8 100644 --- a/apps/wpm/serializers.py +++ b/apps/wpm/serializers.py @@ -256,6 +256,7 @@ class MlogListSerializer(CustomModelSerializer): source='create_by.name', read_only=True) update_by_name = serializers.CharField( source='update_by.name', read_only=True) + # + 0.3s material_in_ = MaterialSimpleSerializer( source='material_in', read_only=True) material_out_ = MaterialSimpleSerializer( @@ -264,6 +265,7 @@ class MlogListSerializer(CustomModelSerializer): source='material_out', read_only=True) material_in_name = serializers.StringRelatedField( source='material_in', read_only=True) + # handle_user_name = serializers.CharField( source='handle_user.name', read_only=True) handle_user_2_name = serializers.CharField( @@ -275,15 +277,17 @@ class MlogListSerializer(CustomModelSerializer): equipment_2_name = serializers.StringRelatedField( source='equipment_2', read_only=True) shift_name = serializers.CharField(source='shift.name', read_only=True) - ticket_ = TicketSimpleSerializer(source='ticket', read_only=True) test_user_name = serializers.CharField(source='test_user.name', read_only=True) + ticket_ = TicketSimpleSerializer(source='ticket', read_only=True) + submit_user_name = serializers.CharField(source='submit_user.name', read_only=True) + handle_users_ = UserSimpleSerializer( source='handle_users', many=True, read_only=True) - submit_user_name = serializers.CharField(source='submit_user.name', read_only=True) class Meta: model = Mlog fields = '__all__' + # exclude = ["equipments","handle_users", "material_outs"] class MlogbDetailSerializer(CustomModelSerializer): diff --git a/apps/wpm/views.py b/apps/wpm/views.py index e026ca85..8d73f7f8 100644 --- a/apps/wpm/views.py +++ b/apps/wpm/views.py @@ -187,13 +187,14 @@ class MlogViewSet(CustomModelViewSet): queryset = Mlog.objects.all() serializer_class = MlogSerializer list_serializer_class = MlogListSerializer - select_related_fields = ['create_by', 'update_by', 'mtask', 'mtaskb', - 'handle_user', 'handle_user_2', 'equipment', 'mgroup__belong_dept', - 'equipment_2', 'material_in', 'material_out', 'route__routepack', 'submit_user', - 'supplier', 'ticket', 'mgroup__process', 'test_user', 'handle_leader', 'test_user', 'team', - 'material_in__process', 'material_out__process'] - prefetch_related_fields = ['handle_users', - 'material_outs', 'b_mlog', 'equipments'] + select_related_fields = ["create_by", "update_by", "handle_user", "equipment", "mgroup", "material_in", "material_out", + 'material_in__process', 'material_out__process', "mgroup__process"] + # select_related_fields = ['create_by', 'update_by', 'mtask', 'mtaskb', 'mgroup', + # 'handle_user', 'handle_user_2', 'equipment', 'mgroup__belong_dept', + # 'equipment_2', 'material_in', 'material_out', 'route__routepack', 'submit_user', + # 'supplier', 'ticket', 'mgroup__process', 'test_user', 'handle_leader', 'test_user', 'team', + # 'material_in__process', 'material_out__process', "shift", "route"] + prefetch_related_fields = ['handle_users', 'material_outs', 'equipments'] filterset_class = MlogFilter search_fields = ['material_in__name', 'material_in__number', 'material_in__specification', 'batch', 'material_in__model',