diff --git a/core/apps/finance/migrations/0015_alter_cashtransaction_expence_balance_usd_and_more.py b/core/apps/finance/migrations/0015_alter_cashtransaction_expence_balance_usd_and_more.py new file mode 100644 index 0000000..03098ae --- /dev/null +++ b/core/apps/finance/migrations/0015_alter_cashtransaction_expence_balance_usd_and_more.py @@ -0,0 +1,43 @@ +# Generated by Django 5.2.4 on 2025-09-09 15:18 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('finance', '0014_alter_expence_exchange_rate'), + ] + + operations = [ + migrations.AlterField( + model_name='cashtransaction', + name='expence_balance_usd', + field=models.BigIntegerField(default=0), + ), + migrations.AlterField( + model_name='cashtransaction', + name='expence_balance_uzs', + field=models.BigIntegerField(default=0), + ), + migrations.AlterField( + model_name='cashtransaction', + name='income_balance_usd', + field=models.BigIntegerField(default=0), + ), + migrations.AlterField( + model_name='cashtransaction', + name='income_balance_uzs', + field=models.BigIntegerField(default=0), + ), + migrations.AlterField( + model_name='cashtransaction', + name='total_balance_usd', + field=models.BigIntegerField(default=0), + ), + migrations.AlterField( + model_name='cashtransaction', + name='total_balance_uzs', + field=models.BigIntegerField(default=0), + ), + ] diff --git a/core/apps/finance/models/cash_transaction.py b/core/apps/finance/models/cash_transaction.py index 1797515..a75accc 100644 --- a/core/apps/finance/models/cash_transaction.py +++ b/core/apps/finance/models/cash_transaction.py @@ -28,13 +28,13 @@ class CashTransaction(BaseModel): CashTransactionFolder, on_delete=models.SET_NULL, related_name='cash_transactions', null=True, blank=True ) - total_balance_usd = models.PositiveBigIntegerField(default=0) - income_balance_usd = models.PositiveBigIntegerField(default=0) - expence_balance_usd = models.PositiveBigIntegerField(default=0) + total_balance_usd = models.BigIntegerField(default=0) + income_balance_usd = models.BigIntegerField(default=0) + expence_balance_usd = models.BigIntegerField(default=0) - total_balance_uzs = models.PositiveBigIntegerField(default=0) - income_balance_uzs = models.PositiveBigIntegerField(default=0) - expence_balance_uzs = models.PositiveBigIntegerField(default=0) + total_balance_uzs = models.BigIntegerField(default=0) + income_balance_uzs = models.BigIntegerField(default=0) + expence_balance_uzs = models.BigIntegerField(default=0) def __str__(self): return self.name diff --git a/core/apps/finance/serializers/expence.py b/core/apps/finance/serializers/expence.py index 8290ca8..a15e34b 100644 --- a/core/apps/finance/serializers/expence.py +++ b/core/apps/finance/serializers/expence.py @@ -40,10 +40,7 @@ class ExpenceCreateSerializer(serializers.ModelSerializer): payment_type.total_uzs -= expence.price elif validated_data.get('currency') == 'usd': cash_transaction.expence_balance_usd += expence.price - if cash_transaction.income_balance_usd > cash_transaction.expence_balance_usd: - cash_transaction.total_balance_usd = cash_transaction.income_balance_usd - cash_transaction.expence_balance_usd - else: - cash_transaction.total_balance_usd = 0 + cash_transaction.total_balance_usd = cash_transaction.income_balance_usd - cash_transaction.expence_balance_usd if payment_type.total_usd > expence.price: payment_type.total_usd -= expence.price