finance, orders and counterparty: fix all bugs

This commit is contained in:
behruz-dev
2025-11-11 16:26:07 +05:00
parent 25898a7864
commit db8218de21
3 changed files with 4 additions and 5 deletions

View File

@@ -157,14 +157,13 @@ class CounterpartyBalance(BaseModel):
orders__counterparty=self.counterparty, orders__counterparty=self.counterparty,
is_deleted=False, is_deleted=False,
currency='uzs' currency='uzs'
).aggregate(total_price=models.Sum('party_amount__paid_amount'))['total_price'] or 0 ).distinct().aggregate(total_price=models.Sum('party_amount__paid_amount'))['total_price'] or 0
income = Income.objects.filter(currency='uzs', counterparty=self.counterparty).aggregate( income = Income.objects.filter(currency='uzs', counterparty=self.counterparty).aggregate(
total_price=models.Sum("price") total_price=models.Sum("price")
)['total_price'] or 0 )['total_price'] or 0
expence = Expence.objects.filter(currency='uzs', counterparty=self.counterparty).aggregate( expence = Expence.objects.filter(currency='uzs', counterparty=self.counterparty).aggregate(
total_price=models.Sum("price") total_price=models.Sum("price")
)['total_price'] or 0 )['total_price'] or 0
print(party_total_amount, income, expence)
return (party_total_amount + income) - expence return (party_total_amount + income) - expence
def __str__(self): def __str__(self):

View File

@@ -23,5 +23,5 @@ class DeletedExpenceListSerializer(serializers.ModelSerializer):
return { return {
"id": obj.user.id, "id": obj.user.id,
"full_name": obj.user.full_name, "full_name": obj.user.full_name,
"profile_image": obj.user.profile_image "profile_image": obj.user.profile_image.url or None
} if obj.user else None } if obj.user else {}

View File

@@ -253,7 +253,7 @@ class DeletedPartyListSerializer(serializers.ModelSerializer):
return { return {
"id": obj.user.id, "id": obj.user.id,
"full_name": obj.user.full_name, "full_name": obj.user.full_name,
"profile_image": obj.user.profile_image, "profile_image": obj.user.profile_image.url or None,
} if obj.user else {} } if obj.user else {}
def get_mediator(self, obj): def get_mediator(self, obj):