From fa182754e71ec244967744dc3a8a69f8b3ed77b8 Mon Sep 17 00:00:00 2001 From: Mojtaba-z Date: Wed, 30 Jul 2025 13:18:46 +0330 Subject: [PATCH] add service/excel in every ap --- apps/product/signals.py | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/apps/product/signals.py b/apps/product/signals.py index 10ae922..c438b3b 100644 --- a/apps/product/signals.py +++ b/apps/product/signals.py @@ -35,7 +35,8 @@ def remaining_distribution_weight(instance: QuotaDistribution): print(get_current_user()) total_assigned_distribution = QuotaDistribution.objects.filter( - Q(assigned_organization=organization) + Q(assigned_organization=organization), + Q(parent_distribution=instance.parent_distribution) ).aggregate( total=Sum('weight') )['total'] or 0 @@ -43,7 +44,8 @@ def remaining_distribution_weight(instance: QuotaDistribution): print(total_assigned_distribution) total_assigner_distribution = QuotaDistribution.objects.filter( - Q(assigner_organization=organization) + Q(assigner_organization=organization), + Q(parent_distribution=instance.parent_distribution) ).aggregate( total=Sum('weight') )['total'] or 0 @@ -53,10 +55,10 @@ def remaining_distribution_weight(instance: QuotaDistribution): print(total_assigned_distribution - total_assigner_distribution) - instance.remaining_weight = total_assigned_distribution - total_assigner_distribution - instance.distributed = total_assigner_distribution + instance.parent_distribution.remaining_weight = total_assigned_distribution - total_assigner_distribution + instance.parent_distribution.distributed = total_assigner_distribution instance._from_signal = True - instance.save(update_fields=['remaining_weight', 'distributed']) + instance.parent_distribution.save(update_fields=['remaining_weight', 'distributed']) @receiver(post_save, sender=QuotaDistribution)