add new management commands for finance and counterparty

This commit is contained in:
behruz-dev
2025-10-25 15:01:46 +05:00
parent 33d8f50ca2
commit 7ba54bfeb2
8 changed files with 12494 additions and 1 deletions

View File

@@ -0,0 +1,32 @@
import json
from django.core.management import BaseCommand
from core.apps.counterparty.models import Counterparty
class Command(BaseCommand):
def add_arguments(self, parser):
parser.add_argument("file_path", type=str)
def handle(self, *args, **options):
file_path = options['file_path']
with open(file_path, 'r') as f:
data = json.load(f)
for item in data['data']['data']:
Counterparty.objects.get_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'],
},
)
self.stdout.write("Counterparties added")

View File

@@ -0,0 +1,23 @@
import json
from django.core.management import BaseCommand
from core.apps.counterparty.models import CounterpartyFolder
class Command(BaseCommand):
def add_arguments(self, parser):
parser.add_argument("file_path", type=str)
def handle(self, *args, **options):
file_path = options['file_path']
with open(file_path, 'r') as f:
data = json.load(f)
for item in data['data']:
CounterpartyFolder.objects.get_or_create(
name=item['name'],
)
self.stdout.write("Counterparty Folders added")