diff --git a/api_v1/views/printing/serializers.py b/api_v1/views/printing/serializers.py index e27c305..6a50480 100644 --- a/api_v1/views/printing/serializers.py +++ b/api_v1/views/printing/serializers.py @@ -196,6 +196,7 @@ class PrintingOrderDetailSerializer(serializers.ModelSerializer): customer_phone = serializers.CharField(source='customer.mobile', read_only=True) customer_area = serializers.CharField(source='customer.area', read_only=True) process_name = serializers.CharField(source='process.name', read_only=True) + created_by_name = serializers.SerializerMethodField() progress = serializers.IntegerField(read_only=True) class Meta: @@ -204,13 +205,21 @@ class PrintingOrderDetailSerializer(serializers.ModelSerializer): 'id', 'human_id', 'customer', 'customer_name', 'customer_phone', 'customer_area', 'fabric', 'width', 'is_urgent', 'area', 'address', 'fabric_source', 'is_fabric_received', 'craft', 'description', 'outgoing_date', - 'curve', 'new_curve', 'position', + 'curve', 'new_curve', 'position', 'created_by_name', 'printing_warn', 'rolling_warn', 'production_warn', 'is_invalid', 'process', 'process_name', 'progress', 'print_count', 'created_at', 'updated_at' ] read_only_fields = ['id', 'human_id', 'created_at', 'updated_at', 'progress', 'print_count'] + def get_created_by_name(self, obj): + """获取创建人名称(员工姓名)""" + user = getattr(obj, 'created_by', None) + if not user: + return None + emp = getattr(user, 'employee', None) + return getattr(emp, 'name', None) + class PrintingOrderCreateUpdateSerializer(serializers.ModelSerializer): """印染订单创建/更新序列化器"""