feat: add rules for transactions

This commit is contained in:
Herculino Trotta
2024-10-23 00:39:14 -03:00
parent 60017ac834
commit b9a9e279dc
30 changed files with 913 additions and 6 deletions

View File

@@ -0,0 +1,33 @@
# Generated by Django 5.1.2 on 2024-10-22 15:37
import django.db.models.deletion
from django.db import migrations, models
class Migration(migrations.Migration):
initial = True
dependencies = [
]
operations = [
migrations.CreateModel(
name='TransactionRule',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.CharField(max_length=100, verbose_name='Name')),
('description', models.TextField(blank=True, null=True, verbose_name='Description')),
('trigger', models.TextField(verbose_name='Trigger')),
],
),
migrations.CreateModel(
name='TransactionRuleAction',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('field', models.CharField(choices=[('account', 'Account'), ('type', 'Type'), ('is_paid', 'Paid'), ('date', 'Date'), ('reference_date', 'Reference Date'), ('amount', 'Amount'), ('description', 'Description'), ('notes', 'Notes'), ('category', 'Category'), ('tags', 'Tags')], max_length=50, verbose_name='Field')),
('value', models.TextField(verbose_name='Action')),
('rule', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='rules.transactionrule')),
],
),
]

View File

@@ -0,0 +1,39 @@
# Generated by Django 5.1.2 on 2024-10-22 17:52
import django.db.models.deletion
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('rules', '0001_initial'),
]
operations = [
migrations.AddField(
model_name='transactionrule',
name='active',
field=models.BooleanField(default=True),
),
migrations.AddField(
model_name='transactionrule',
name='on_create',
field=models.BooleanField(default=True),
),
migrations.AddField(
model_name='transactionrule',
name='on_update',
field=models.BooleanField(default=False),
),
migrations.AlterField(
model_name='transactionruleaction',
name='rule',
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='actions', to='rules.transactionrule', verbose_name='Rule'),
),
migrations.AlterField(
model_name='transactionruleaction',
name='value',
field=models.TextField(verbose_name='Value'),
),
]

View File