diff --git a/app/bird/admin.py b/app/bird/admin.py index f62e0ed..5b19e87 100644 --- a/app/bird/admin.py +++ b/app/bird/admin.py @@ -7,6 +7,7 @@ from .models import Bird, FallenBird, BirdStatus, Circumstance class FallenBirdAdmin(admin.ModelAdmin): list_display = [ "bird", + "age", "date_found", "place", "created", diff --git a/app/bird/forms.py b/app/bird/forms.py index 11a301e..c7b31b7 100644 --- a/app/bird/forms.py +++ b/app/bird/forms.py @@ -22,6 +22,7 @@ class BirdAddForm(forms.ModelForm): fields = [ "bird_identifier", "bird", + "age", "date_found", "place", "find_circumstances", @@ -30,6 +31,7 @@ class BirdAddForm(forms.ModelForm): labels = { "bird_identifier": _("Kennung"), "bird": _("Vogel"), + "age": _("Alter"), "date_found": _("Datum des Fundes"), "place": _("Fundort"), "find_circumstances": _("Fundumstände"), diff --git a/app/bird/models.py b/app/bird/models.py index 7c18e25..4761a8e 100644 --- a/app/bird/models.py +++ b/app/bird/models.py @@ -10,27 +10,36 @@ from aviary.models import Aviary from rescuer.models import Rescuer +CHOICE_AGE = [ + ("Ei", "Ei"), + ("Nestling", "Nestling"), + ("Ästling", "Ästling"), + ("Adult", "Adult"), +] + + def costs_default(): return [{"date": date.today().strftime("%Y-%m-%d"), "cost_entry": "0.00"}] class FallenBird(models.Model): id = models.UUIDField(primary_key=True, default=uuid4, editable=False) - bird_identifier = models.CharField( - max_length=256, verbose_name=_("Kennung")) + bird_identifier = models.CharField(max_length=256, verbose_name=_("Kennung")) bird = models.ForeignKey( "Bird", on_delete=models.CASCADE, verbose_name=_("Patient") ) + age = models.CharField( + max_length=15, + choices=CHOICE_AGE, + verbose_name=_("Alter") + ) date_found = models.DateField(verbose_name=_("Datum des Fundes")) place = models.CharField(max_length=256, verbose_name=_("Ort des Fundes")) - created = models.DateTimeField( - auto_now_add=True, - verbose_name=_("angelegt am")) - updated = models.DateTimeField( - auto_now=True, verbose_name=_("geändert am")) + created = models.DateTimeField(auto_now_add=True, verbose_name=_("angelegt am")) + updated = models.DateTimeField(auto_now=True, verbose_name=_("geändert am")) find_circumstances = models.ForeignKey( - "Circumstance", on_delete=models.CASCADE, - verbose_name=_("Fundumstände")) + "Circumstance", on_delete=models.CASCADE, verbose_name=_("Fundumstände") + ) diagnostic_finding = models.CharField( max_length=256, verbose_name=_("Diagnose bei Fund") ) @@ -42,13 +51,9 @@ class FallenBird(models.Model): verbose_name=_("Finder"), ) user = models.ForeignKey( - settings.AUTH_USER_MODEL, - on_delete=models.CASCADE, - verbose_name=_("Benutzer")) - status = models.ForeignKey( - "BirdStatus", - on_delete=models.CASCADE, - default=1) + settings.AUTH_USER_MODEL, on_delete=models.CASCADE, verbose_name=_("Benutzer") + ) + status = models.ForeignKey("BirdStatus", on_delete=models.CASCADE, default=1) aviary = models.ForeignKey( Aviary, on_delete=models.SET_NULL, @@ -70,10 +75,7 @@ class FallenBird(models.Model): class Bird(models.Model): id = models.BigAutoField(primary_key=True) - name = models.CharField( - max_length=256, - unique=True, - verbose_name=_("Bezeichnung")) + name = models.CharField(max_length=256, unique=True, verbose_name=_("Bezeichnung")) description = RichTextField(blank=True, null=True) class Meta: @@ -100,8 +102,7 @@ class BirdStatus(models.Model): class Circumstance(models.Model): id = models.BigAutoField(primary_key=True) - description = models.CharField( - max_length=256, verbose_name=_("Bezeichnung")) + description = models.CharField(max_length=256, verbose_name=_("Bezeichnung")) class Meta: verbose_name = _("Fundumstand") diff --git a/app/bird/templates/bird/bird_all.html b/app/bird/templates/bird/bird_all.html index cc99589..19e96fc 100644 --- a/app/bird/templates/bird/bird_all.html +++ b/app/bird/templates/bird/bird_all.html @@ -60,6 +60,7 @@ Status Voliere Kosten + Alter @@ -75,6 +76,7 @@ {{ bird.status }} {{ bird.aviary|default_if_none:"" }} {{ bird.total_costs|default_if_none:"0,00" }} € + {{ bird.age|default_if_none:"" }} {% endfor %} diff --git a/app/bird/templates/bird/bird_inactive.html b/app/bird/templates/bird/bird_inactive.html index f3dc716..dc65af0 100644 --- a/app/bird/templates/bird/bird_inactive.html +++ b/app/bird/templates/bird/bird_inactive.html @@ -53,6 +53,7 @@ Fundort Status Kosten + Alter @@ -67,6 +68,7 @@ {{ bird.place }} {{ bird.status }} {{ bird.total_costs|default_if_none:"0,00" }} € + {{ bird.age|default_if_none:"" }} {% endfor %} diff --git a/app/bird/templates/bird/bird_single.html b/app/bird/templates/bird/bird_single.html index f43a671..f4df739 100644 --- a/app/bird/templates/bird/bird_single.html +++ b/app/bird/templates/bird/bird_single.html @@ -4,7 +4,8 @@ {% block content %}

Patient {{ bird.bird_identifier }} bearbeiten

-

Finder des Patienten: {{ bird.rescuer|default_if_none:"" }}

+

Finder des Patienten: {{ bird.rescuer|default_if_none:"" }}. + Das Alter des Patienten bei Fund wurde mit {{ bird.age }} angegeben.