fix - get_total_used_weight in rancher services

This commit is contained in:
2025-11-12 17:25:27 +03:30
parent afc9def177
commit d656db35e7
2 changed files with 4 additions and 3 deletions

View File

@@ -4,10 +4,11 @@ from django.db.models import Sum, functions, Value
class RancherService: class RancherService:
@staticmethod @staticmethod
def get_total_used_weight(rancher, sale_item): def get_total_used_weight(rancher, sale_item, distribution):
return sale_item.objects.filter( return sale_item.objects.filter(
transaction__rancher=rancher, transaction__rancher=rancher,
transaction__transaction_status='success' transaction__transaction_status='success',
quota_distribution=distribution,
).aggregate( ).aggregate(
total_weight=functions.Coalesce(Sum('weight'), Value(0)) total_weight=functions.Coalesce(Sum('weight'), Value(0))
)['total_weight'] )['total_weight']

View File

@@ -152,7 +152,7 @@ def rancher_quota_weight(
total_weight += rancher_plan_weight total_weight += rancher_plan_weight
print(total_weight) print(total_weight)
# get rancher remaining usage of quota for purchase # get rancher remaining usage of quota for purchase
rancher_remaining_usage = RancherService.get_total_used_weight(rancher, InventoryQuotaSaleItem) rancher_remaining_usage = RancherService.get_total_used_weight(rancher, InventoryQuotaSaleItem, distribution)
if total_weight - rancher_remaining_usage < 0: if total_weight - rancher_remaining_usage < 0:
remaining_weight = 0 remaining_weight = 0