From f3cede93221978753d48028208326d455981c6de Mon Sep 17 00:00:00 2001 From: Flo Ha Date: Tue, 12 Jul 2022 17:55:50 +0200 Subject: [PATCH] add payment model and migration --- gaehsnitz/migrations/0001_initial.py | 25 +++++++++++++++++++++++++ gaehsnitz/migrations/__init__.py | 0 gaehsnitz/models.py | 25 +++++++++++++++++++++++++ 3 files changed, 50 insertions(+) create mode 100644 gaehsnitz/migrations/0001_initial.py create mode 100644 gaehsnitz/migrations/__init__.py create mode 100644 gaehsnitz/models.py diff --git a/gaehsnitz/migrations/0001_initial.py b/gaehsnitz/migrations/0001_initial.py new file mode 100644 index 0000000..56ded2b --- /dev/null +++ b/gaehsnitz/migrations/0001_initial.py @@ -0,0 +1,25 @@ +# Generated by Django 4.0.6 on 2022-07-12 18:34 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + ] + + operations = [ + migrations.CreateModel( + name='Payment', + fields=[ + ('id', models.SmallAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('other_party', models.TextField()), + ('topic', models.PositiveSmallIntegerField(choices=[(0, 'Spenden/Vorauszahlungen'), (1, 'Eintrittsgeld'), (2, 'Getränke-/Essensverkauf'), (10, 'Gelände'), (11, 'Bands'), (12, 'Getränke-/Essenseinkauf')])), + ('amount', models.PositiveIntegerField()), + ('date', models.DateField()), + ('note', models.TextField(blank=True)), + ], + ), + ] diff --git a/gaehsnitz/migrations/__init__.py b/gaehsnitz/migrations/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/gaehsnitz/models.py b/gaehsnitz/models.py new file mode 100644 index 0000000..a3d59f5 --- /dev/null +++ b/gaehsnitz/models.py @@ -0,0 +1,25 @@ +from django.db import models + + +class Payment(models.Model): + class Topic(models.IntegerChoices): + # positive + donation = 0, "Spenden/Vorauszahlungen" + admission_fee = 1, "Eintrittsgeld" + supply_sale = 2, "Getränke-/Essensverkauf" + # negative + site = 10, "Gelände" + bands = 11, "Bands" + supply_purchase = 12, "Getränke-/Essenseinkauf" + + other_party = models.TextField() + topic = models.PositiveSmallIntegerField(choices=Topic.choices) + amount = models.PositiveIntegerField() + date = models.DateField() + note = models.TextField(blank=True) + + def is_incoming(self): + return self.topic < 10 + + def is_outgoing(self): + return not self.is_incoming()