From 3edcd9aa1ce1a0e0d3d1e666e06ddc271c7e8f9e Mon Sep 17 00:00:00 2001 From: Mojtaba-z Date: Mon, 10 Nov 2025 15:28:34 +0330 Subject: [PATCH] fix - bug of edit distribution with parent --- .../api/v1/serializers/quota_distribution_serializers.py | 7 +++++-- apps/warehouse/web/api/v1/serializers.py | 6 ++++++ 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/apps/product/web/api/v1/serializers/quota_distribution_serializers.py b/apps/product/web/api/v1/serializers/quota_distribution_serializers.py index 454a3ea..c4c1d03 100644 --- a/apps/product/web/api/v1/serializers/quota_distribution_serializers.py +++ b/apps/product/web/api/v1/serializers/quota_distribution_serializers.py @@ -86,8 +86,11 @@ class QuotaDistributionSerializer(serializers.ModelSerializer): if amount + total > self.instance.quota.quota_weight: raise APIException("وزن وارد شده بیشتر از وزن باقیمانده است", code=403) # noqa else: - if amount + total > self.instance.parent_distribution.weight: - raise APIException("وزن وارد شده بیشتر از وزن باقیمانده است", code=403) # noqa + children_total = self.instance.parent_distribution.children.all().aggregate( + total=models.Sum('weight') + )['total'] or 0 + if children_total + amount > self.instance.parent_distribution.weight: + raise QuotaWeightException() return data diff --git a/apps/warehouse/web/api/v1/serializers.py b/apps/warehouse/web/api/v1/serializers.py index 2c7c859..5a104cc 100644 --- a/apps/warehouse/web/api/v1/serializers.py +++ b/apps/warehouse/web/api/v1/serializers.py @@ -104,6 +104,12 @@ class InventoryQuotaSaleTransactionSerializer(serializers.ModelSerializer): many=True ).data + if instance.seller_organization: + representation['seller_organization'] = { + 'id': instance.seller_organization.id, + 'name': instance.seller_organization.name + } + return representation