Files
stiftung-management-system/app/stiftung/migrations/0010_rentmeister_stiftungskonto_verwaltungskosten.py
Stiftung Development e0c7d0e351 Format code with Black and isort for CI/CD compliance
- Apply Black formatting to all Python files in core and stiftung modules
- Fix import statement ordering with isort
- Ensure all code meets automated quality standards
- Resolve CI/CD pipeline formatting failures
- Maintain consistent code style across the entire codebase
2025-09-06 21:04:07 +02:00

345 lines
13 KiB
Python

# Generated by Django 5.0.6 on 2025-08-24 17:48
import uuid
import django.db.models.deletion
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
("stiftung", "0009_alter_dokumentlink_paperless_document_id"),
]
operations = [
migrations.CreateModel(
name="Rentmeister",
fields=[
(
"id",
models.UUIDField(
default=uuid.uuid4,
editable=False,
primary_key=True,
serialize=False,
),
),
(
"anrede",
models.CharField(
blank=True,
choices=[
("herr", "Herr"),
("frau", "Frau"),
("dr", "Dr."),
("prof", "Prof."),
("prof_dr", "Prof. Dr."),
],
max_length=10,
verbose_name="Anrede",
),
),
("vorname", models.CharField(max_length=100, verbose_name="Vorname")),
("nachname", models.CharField(max_length=100, verbose_name="Nachname")),
(
"titel",
models.CharField(blank=True, max_length=50, verbose_name="Titel"),
),
(
"email",
models.EmailField(
blank=True, max_length=254, verbose_name="E-Mail"
),
),
(
"telefon",
models.CharField(blank=True, max_length=20, verbose_name="Telefon"),
),
(
"mobil",
models.CharField(blank=True, max_length=20, verbose_name="Mobil"),
),
(
"strasse",
models.CharField(blank=True, max_length=200, verbose_name="Straße"),
),
(
"plz",
models.CharField(blank=True, max_length=10, verbose_name="PLZ"),
),
(
"ort",
models.CharField(blank=True, max_length=100, verbose_name="Ort"),
),
(
"iban",
models.CharField(blank=True, max_length=34, verbose_name="IBAN"),
),
(
"bic",
models.CharField(blank=True, max_length=11, verbose_name="BIC"),
),
(
"bank_name",
models.CharField(blank=True, max_length=100, verbose_name="Bank"),
),
("seit_datum", models.DateField(verbose_name="Rentmeister seit")),
(
"bis_datum",
models.DateField(
blank=True, null=True, verbose_name="Rentmeister bis"
),
),
("aktiv", models.BooleanField(default=True, verbose_name="Aktiv")),
(
"monatliche_verguetung",
models.DecimalField(
blank=True,
decimal_places=2,
max_digits=8,
null=True,
verbose_name="Monatliche Vergütung (€)",
),
),
(
"km_pauschale",
models.DecimalField(
decimal_places=2,
default=0.3,
max_digits=4,
verbose_name="Kilometerpauschale (€/km)",
),
),
("notizen", models.TextField(blank=True, verbose_name="Notizen")),
("erstellt_am", models.DateTimeField(auto_now_add=True)),
("aktualisiert_am", models.DateTimeField(auto_now=True)),
],
options={
"verbose_name": "Rentmeister",
"verbose_name_plural": "Rentmeister",
"ordering": ["nachname", "vorname"],
},
),
migrations.CreateModel(
name="StiftungsKonto",
fields=[
(
"id",
models.UUIDField(
default=uuid.uuid4,
editable=False,
primary_key=True,
serialize=False,
),
),
(
"kontoname",
models.CharField(max_length=200, verbose_name="Kontoname"),
),
("bank_name", models.CharField(max_length=200, verbose_name="Bank")),
("iban", models.CharField(max_length=34, verbose_name="IBAN")),
(
"bic",
models.CharField(blank=True, max_length=11, verbose_name="BIC"),
),
(
"konto_typ",
models.CharField(
choices=[
("girokonto", "Girokonto"),
("sparkonto", "Sparkonto"),
("festgeld", "Festgeld"),
("tagesgeld", "Tagesgeld"),
("depot", "Depot"),
("sonstiges", "Sonstiges"),
],
default="girokonto",
max_length=20,
verbose_name="Kontotyp",
),
),
(
"saldo",
models.DecimalField(
decimal_places=2,
default=0.0,
max_digits=10,
verbose_name="Aktueller Saldo",
),
),
(
"saldo_datum",
models.DateField(blank=True, null=True, verbose_name="Saldo-Datum"),
),
(
"zinssatz",
models.DecimalField(
blank=True,
decimal_places=2,
max_digits=5,
null=True,
verbose_name="Zinssatz (%)",
),
),
(
"laufzeit_bis",
models.DateField(
blank=True, null=True, verbose_name="Laufzeit bis"
),
),
("aktiv", models.BooleanField(default=True, verbose_name="Aktiv")),
("notizen", models.TextField(blank=True, verbose_name="Notizen")),
("erstellt_am", models.DateTimeField(auto_now_add=True)),
("aktualisiert_am", models.DateTimeField(auto_now=True)),
],
options={
"verbose_name": "Stiftungskonto",
"verbose_name_plural": "Stiftungskonten",
"ordering": ["bank_name", "kontoname"],
},
),
migrations.CreateModel(
name="Verwaltungskosten",
fields=[
(
"id",
models.UUIDField(
default=uuid.uuid4,
editable=False,
primary_key=True,
serialize=False,
),
),
(
"bezeichnung",
models.CharField(max_length=200, verbose_name="Bezeichnung"),
),
(
"kategorie",
models.CharField(
choices=[
("rechnung_intern", "Interne Rechnung"),
("bueroausstattung", "Büroausstattung"),
("fahrtkosten", "Fahrtkosten"),
("porto", "Porto & Versand"),
("telefon_internet", "Telefon & Internet"),
("software", "Software & Lizenzen"),
("beratung", "Beratung & Dienstleistungen"),
("versicherung", "Versicherungen"),
("steuerberatung", "Steuerberatung"),
("bankgebuehren", "Bankgebühren"),
("sonstiges", "Sonstiges"),
],
max_length=30,
verbose_name="Kategorie",
),
),
(
"betrag",
models.DecimalField(
decimal_places=2, max_digits=10, verbose_name="Betrag (€)"
),
),
("datum", models.DateField(verbose_name="Datum")),
(
"lieferant_firma",
models.CharField(
blank=True, max_length=200, verbose_name="Lieferant/Firma"
),
),
(
"rechnungsnummer",
models.CharField(
blank=True, max_length=100, verbose_name="Rechnungsnummer"
),
),
(
"status",
models.CharField(
choices=[
("geplant", "Geplant"),
("bestellt", "Bestellt"),
("erhalten", "Erhalten"),
("bezahlt", "Bezahlt"),
("storniert", "Storniert"),
],
default="geplant",
max_length=20,
verbose_name="Status",
),
),
(
"km_anzahl",
models.DecimalField(
blank=True,
decimal_places=1,
max_digits=8,
null=True,
verbose_name="Kilometer",
),
),
(
"km_satz",
models.DecimalField(
blank=True,
decimal_places=2,
max_digits=4,
null=True,
verbose_name="€/km",
),
),
(
"von_ort",
models.CharField(
blank=True, max_length=100, verbose_name="Von (Ort)"
),
),
(
"nach_ort",
models.CharField(
blank=True, max_length=100, verbose_name="Nach (Ort)"
),
),
(
"zweck",
models.CharField(
blank=True, max_length=200, verbose_name="Zweck der Fahrt"
),
),
(
"beschreibung",
models.TextField(blank=True, verbose_name="Beschreibung"),
),
("notizen", models.TextField(blank=True, verbose_name="Notizen")),
("erstellt_am", models.DateTimeField(auto_now_add=True)),
("aktualisiert_am", models.DateTimeField(auto_now=True)),
(
"konto",
models.ForeignKey(
blank=True,
null=True,
on_delete=django.db.models.deletion.SET_NULL,
to="stiftung.stiftungskonto",
verbose_name="Konto",
),
),
(
"rentmeister",
models.ForeignKey(
blank=True,
null=True,
on_delete=django.db.models.deletion.SET_NULL,
to="stiftung.rentmeister",
verbose_name="Rentmeister",
),
),
],
options={
"verbose_name": "Verwaltungskosten",
"verbose_name_plural": "Verwaltungskosten",
"ordering": ["-datum", "-erstellt_am"],
},
),
]