finance: add user field to expence delete model
This commit is contained in:
49
core/test.py
Normal file
49
core/test.py
Normal file
@@ -0,0 +1,49 @@
|
||||
from decimal import Decimal
|
||||
|
||||
from django.db.models import Sum
|
||||
|
||||
from core.apps.finance.models import Expence
|
||||
from core.apps.orders.models import Party
|
||||
from core.apps.counterparty.models import Counterparty
|
||||
|
||||
|
||||
def find_tafavvut():
|
||||
tafavvut = []
|
||||
party_total_price = 0
|
||||
expence_total_price = 0
|
||||
|
||||
counterparty = Counterparty.objects.filter(name__icontains="Сардор карта 7664").first()
|
||||
|
||||
if not counterparty:
|
||||
print("Counterparty topilmadi")
|
||||
return
|
||||
|
||||
for party in Party.objects.filter(orders__counterparty=counterparty):
|
||||
price_result = Expence.objects.filter(party=party, currency='uzs').aggregate(total_price=Sum("price"))
|
||||
expence_total_price_value = price_result['total_price'] or 0
|
||||
|
||||
party_total = party.party_amount.total_price or 0
|
||||
|
||||
if party_total != expence_total_price_value:
|
||||
print(f"Party: {party.id}, Party Total: {party_total}, Expence Total: {expence_total_price_value}")
|
||||
tafavvut.append({
|
||||
'party': party,
|
||||
'party_total': party_total,
|
||||
'expence_total': expence_total_price_value,
|
||||
'tafavvut': party_total - expence_total_price_value
|
||||
})
|
||||
party_total_price += party_total
|
||||
expence_total_price += expence_total_price_value
|
||||
|
||||
print("\n=== NATIJA ===")
|
||||
print(f"Tafavvut topilgan: {len(tafavvut)}")
|
||||
print(f"Party jami: {party_total_price}")
|
||||
print(f"Expence jami: {expence_total_price}")
|
||||
print(f"Farq: {party_total_price - expence_total_price}")
|
||||
|
||||
for item in tafavvut:
|
||||
print(f"Party {item['party'].id}: +{item['tafavvut']}")
|
||||
|
||||
return tafavvut
|
||||
|
||||
find_tafavvut()
|
||||
Reference in New Issue
Block a user