# Generated by Django 5.0.6 on 2025-08-30 16:59

import uuid

import django.core.validators
import django.db.models.deletion
from django.db import migrations, models


class Migration(migrations.Migration):

    dependencies = [
        ("stiftung", "0021_land_adresse_land_aktueller_paechter_and_more"),
    ]

    operations = [
        migrations.AddField(
            model_name="dokumentlink",
            name="land_verpachtung_id",
            field=models.UUIDField(
                blank=True, null=True, verbose_name="Landverpachtung ID (Neu)"
            ),
        ),
        migrations.AlterField(
            model_name="dokumentlink",
            name="verpachtung_id",
            field=models.UUIDField(
                blank=True, null=True, verbose_name="Verpachtung ID (Legacy)"
            ),
        ),
        migrations.CreateModel(
            name="LandVerpachtung",
            fields=[
                (
                    "id",
                    models.UUIDField(
                        default=uuid.uuid4,
                        editable=False,
                        primary_key=True,
                        serialize=False,
                    ),
                ),
                (
                    "vertragsnummer",
                    models.CharField(
                        max_length=50, unique=True, verbose_name="Vertragsnummer"
                    ),
                ),
                ("pachtbeginn", models.DateField(verbose_name="Pachtbeginn")),
                (
                    "pachtende",
                    models.DateField(blank=True, null=True, verbose_name="Pachtende"),
                ),
                (
                    "verlaengerung_klausel",
                    models.BooleanField(
                        default=False, verbose_name="Automatische Verlängerung"
                    ),
                ),
                (
                    "verpachtete_flaeche",
                    models.DecimalField(
                        decimal_places=2,
                        max_digits=12,
                        validators=[django.core.validators.MinValueValidator(0.01)],
                        verbose_name="Verpachtete Fläche (qm)",
                    ),
                ),
                (
                    "pachtzins_pauschal",
                    models.DecimalField(
                        decimal_places=2,
                        max_digits=12,
                        validators=[django.core.validators.MinValueValidator(0)],
                        verbose_name="Pachtzins pauschal/Jahr (€)",
                    ),
                ),
                (
                    "pachtzins_pro_ha",
                    models.DecimalField(
                        blank=True,
                        decimal_places=2,
                        max_digits=12,
                        null=True,
                        validators=[django.core.validators.MinValueValidator(0)],
                        verbose_name="Pachtzins pro ha (€)",
                    ),
                ),
                (
                    "zahlungsweise",
                    models.CharField(
                        choices=[
                            ("jaehrlich", "Jährlich"),
                            ("halbjaehrlich", "Halbjährlich"),
                            ("vierteljaehrlich", "Vierteljährlich"),
                            ("monatlich", "Monatlich"),
                        ],
                        default="jaehrlich",
                        max_length=20,
                        verbose_name="Zahlungsweise",
                    ),
                ),
                (
                    "ust_option",
                    models.BooleanField(default=False, verbose_name="USt-Option"),
                ),
                (
                    "ust_satz",
                    models.DecimalField(
                        decimal_places=2,
                        default=19.0,
                        max_digits=4,
                        verbose_name="USt-Satz (%)",
                    ),
                ),
                (
                    "grundsteuer_umlage",
                    models.BooleanField(
                        default=True, verbose_name="Grundsteuer umlagefähig"
                    ),
                ),
                (
                    "versicherungen_umlage",
                    models.BooleanField(
                        default=True, verbose_name="Versicherungen umlagefähig"
                    ),
                ),
                (
                    "verbandsbeitraege_umlage",
                    models.BooleanField(
                        default=True, verbose_name="Verbandsbeiträge umlagefähig"
                    ),
                ),
                (
                    "jagdpacht_anteil_umlage",
                    models.BooleanField(
                        default=False, verbose_name="Jagdpachtanteile umlagefähig"
                    ),
                ),
                (
                    "status",
                    models.CharField(
                        choices=[
                            ("aktiv", "Aktiv"),
                            ("beendet", "Beendet"),
                            ("gekuendigt", "Gekündigt"),
                            ("verlängert", "Verlängert"),
                        ],
                        default="aktiv",
                        max_length=20,
                        verbose_name="Status",
                    ),
                ),
                (
                    "bemerkungen",
                    models.TextField(blank=True, null=True, verbose_name="Bemerkungen"),
                ),
                ("erstellt_am", models.DateTimeField(auto_now_add=True)),
                ("aktualisiert_am", models.DateTimeField(auto_now=True)),
                (
                    "land",
                    models.ForeignKey(
                        on_delete=django.db.models.deletion.CASCADE,
                        related_name="neue_verpachtungen",
                        to="stiftung.land",
                        verbose_name="Länderei",
                    ),
                ),
                (
                    "paechter",
                    models.ForeignKey(
                        on_delete=django.db.models.deletion.CASCADE,
                        related_name="neue_verpachtungen",
                        to="stiftung.paechter",
                        verbose_name="Pächter",
                    ),
                ),
            ],
            options={
                "verbose_name": "Landverpachtung",
                "verbose_name_plural": "Landverpachtungen",
                "ordering": ["-pachtbeginn", "land"],
            },
        ),
    ]
