From 67bf5fc57cf5bbc0225e4ecb3fe75ef5c9aba2cb Mon Sep 17 00:00:00 2001 From: Mojtaba-z Date: Tue, 2 Dec 2025 14:53:25 +0330 Subject: [PATCH] fix - list of pricing features of quota in distribution --- .../quota_distribution_serializers.py | 21 ++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) 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 1e9184b..1966b40 100644 --- a/apps/product/web/api/v1/serializers/quota_distribution_serializers.py +++ b/apps/product/web/api/v1/serializers/quota_distribution_serializers.py @@ -9,7 +9,11 @@ from apps.product.exceptions import ( QuotaExpiredTimeException, QuotaLimitByOrganizationException ) -from apps.product.web.api.v1.serializers.quota_serializers import QuotaSerializer +from apps.product.web.api.v1.serializers.quota_serializers import ( + QuotaSerializer, + QuotaBrokerValueSerializer, + product_serializers +) class QuotaDistributionSerializer(serializers.ModelSerializer): @@ -98,12 +102,27 @@ class QuotaDistributionSerializer(serializers.ModelSerializer): # get org quota stat detail quotas_stat_amount = instance.quota.quota_amount_by_org(instance.assigned_organization) + # get quota stat for list of pricing features + quota_stat = instance.get_quota_stat( + instance.assigned_organization + ) if instance.edited_pricing_features else None + representation['remaining_weight'] = quotas_stat_amount['remaining_weight'] representation['distributed'] = quotas_stat_amount['quota_distributed'] representation['warehouse_entry'] = quotas_stat_amount['inventory_received'] representation['warehouse_balance'] = quotas_stat_amount['inventory_entry_balance'] representation['been_sold'] = quotas_stat_amount['been_sold'] + representation['attribute_values'] = product_serializers.AttributeValueSerializer( + instance.attribute_values.filter(org_quota_stat=quota_stat), + many=True + ).data + + representation['brokers'] = QuotaBrokerValueSerializer( + instance.broker_values.filter(org_quota_stat=quota_stat), + many=True + ).data + if instance.quota: representation['quota'] = QuotaSerializer(instance.quota).data