change a lot of code

This commit is contained in:
behruz-dev
2025-11-07 21:21:03 +05:00
parent a9df29200a
commit 8a298b76f1
7 changed files with 51 additions and 35 deletions

View File

@@ -1,8 +1,9 @@
import json
from datetime import datetime
from django.core.management import BaseCommand
from core.apps.counterparty.models import Counterparty
from core.apps.counterparty.models import Counterparty, CounterpartyBalance
class Command(BaseCommand):
@@ -16,21 +17,26 @@ class Command(BaseCommand):
data = json.load(f)
for item in data["data"]["data"]:
Counterparty.objects.update_or_create(
counterparty, created = Counterparty.objects.update_or_create(
name=item["name"],
defaults={
"phone": item["person"]["phone"],
"inn": item["person"]["tin"],
"balance_currency": (
item["balances"][0]["currency"]["symbol"].lower()
if item["balances"]
else "uzs"
),
"is_archived": item["is_archived"],
"balance": item["total_amount"],
"total_debit": item["debt_amount"],
"total_kredit": item["credit_amount"],
},
)
if item.get("balances"):
balance = CounterpartyBalance.objects.create(
counterparty=counterparty,
balance_date=datetime.strptime(item['balances'][0]['start_date'], "%d.%m.%Y"),
kredit_uzs=item['credit_amount'],
debit_uzs=item['debt_amount'],
)
for b in item["balances"]:
if b["currency"]["symbol"].lower() == 'uzs':
balance.balance_uzs = b['amount']
elif item["balances"][0]["currency"]["symbol"].lower() == 'usd':
balance.balance_usd = b['amount']
balance.save()
self.stdout.write("Counterparties added")

View File

@@ -1,11 +1,12 @@
import json, requests
from datetime import datetime
from django.core.management import BaseCommand
from core.apps.counterparty.models import CounterpartyFolder, Counterparty
from core.apps.counterparty.models import CounterpartyFolder, Counterparty, CounterpartyBalance
headers = {
"Authorization": "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczovL2JhY2tlbmQuYXBwLnV5cXVyLnV6L21haW4vYXV0aC9sb2dpbiIsImlhdCI6MTc2MjMzNjg2MSwiZXhwIjoxNzYyNDIzMjYxLCJuYmYiOjE3NjIzMzY4NjEsImp0aSI6Ino1SVpXRmlTVUJpMDA2eDciLCJzdWIiOiIxMDQiLCJwcnYiOiIyM2JkNWM4OTQ5ZjYwMGFkYjM5ZTcwMWM0MDA4NzJkYjdhNTk3NmY3In0.yVOvrb-QjdYvCx6GJOW4T5y_N9-Lq2ThYFPu8_J0K3w"
"Authorization": "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczovL2JhY2tlbmQuYXBwLnV5cXVyLnV6L21haW4vYXV0aC9sb2dpbiIsImlhdCI6MTc2MjUxMDQyMywiZXhwIjoxNzYyNTk2ODIzLCJuYmYiOjE3NjI1MTA0MjMsImp0aSI6IlNPMmx5VjJ3Mllmb3BlSXEiLCJzdWIiOiIxMDQiLCJwcnYiOiIyM2JkNWM4OTQ5ZjYwMGFkYjM5ZTcwMWM0MDA4NzJkYjdhNTk3NmY3In0.3DemwyRz2FMzMm-JRBOqGPSgu_m4s4ndWz56e_ROp8A"
}
def get_counterparty(folder_id):
@@ -16,24 +17,28 @@ def get_counterparty(folder_id):
return None
def create_counterparty(data, folder):
Counterparty.objects.get_or_create(
name=data["name"],
def create_counterparty(item, folder):
counterparty, created = Counterparty.objects.update_or_create(
name=item["name"],
defaults={
"phone": data["person"]["phone"],
"inn": data["person"]["tin"],
"balance_currency": (
data["balances"][0]["currency"]["symbol"].lower()
if data["balances"]
else "uzs"
),
"is_archived": data["is_archived"],
"balance": data["total_amount"],
"total_debit": data["debt_amount"],
"total_kredit": data["credit_amount"],
"folder": folder
"phone": item["person"]["phone"],
"inn": item["person"]["tin"],
"is_archived": item["is_archived"],
},
)
if item.get("balances"):
balance = CounterpartyBalance.objects.create(
counterparty=counterparty,
balance_date=datetime.strptime(item['balances'][0]['start_date'], "%d.%m.%Y"),
kredit_uzs=item['credit_amount'],
debit_uzs=item['debt_amount'],
)
for b in item["balances"]:
if b["currency"]["symbol"].lower() == 'uzs':
balance.balance_uzs = b['amount']
elif item["balances"][0]["currency"]["symbol"].lower() == 'usd':
balance.balance_usd = b['amount']
balance.save()
class Command(BaseCommand):