forked from erp-dev/erp
feat: shipment patch
This commit is contained in:
@@ -22,6 +22,10 @@ class ShipmentSerializer(serializers.ModelSerializer):
|
||||
source="cancelled_by.id", read_only=True, allow_null=True
|
||||
)
|
||||
cancelled_by_name = serializers.SerializerMethodField()
|
||||
approved_by_id = serializers.IntegerField(
|
||||
source="approved_by.id", read_only=True, allow_null=True
|
||||
)
|
||||
approved_by_name = serializers.SerializerMethodField()
|
||||
status_display = serializers.CharField(source="get_status_display", read_only=True)
|
||||
external_finished_products_count = serializers.SerializerMethodField()
|
||||
merchant_id = serializers.IntegerField(source="merchant.id", read_only=True)
|
||||
@@ -43,9 +47,11 @@ class ShipmentSerializer(serializers.ModelSerializer):
|
||||
"status",
|
||||
"status_display",
|
||||
"external_id",
|
||||
"cancelled_at",
|
||||
"status_modified_at",
|
||||
"cancelled_by_id",
|
||||
"cancelled_by_name",
|
||||
"approved_by_id",
|
||||
"approved_by_name",
|
||||
"items_count",
|
||||
"created_by_id",
|
||||
"created_by_name",
|
||||
@@ -79,6 +85,14 @@ class ShipmentSerializer(serializers.ModelSerializer):
|
||||
def get_external_finished_products_count(self, obj):
|
||||
return obj.external_finished_products.count()
|
||||
|
||||
def get_approved_by_name(self, obj):
|
||||
if obj.approved_by:
|
||||
employee = getattr(obj.approved_by, "employee", None)
|
||||
if employee:
|
||||
return employee.name
|
||||
return obj.approved_by.username
|
||||
return None
|
||||
|
||||
def get_sales_items(self, obj):
|
||||
"""
|
||||
出货单关联的销售品明细(无则返回空数组)。
|
||||
|
||||
Reference in New Issue
Block a user