From 31ae3dd4307902e48f712ebbd66488ecbc533abe Mon Sep 17 00:00:00 2001 From: mpeltriaux Date: Tue, 19 Oct 2021 16:06:19 +0200 Subject: [PATCH] #26 Annual conservation report * WIP: EcoAccountReport --- .../templates/analysis/reports/detail.html | 2 +- .../reports/includes/eco_account/amount.html | 32 ++++ .../{ => eco_account}/card_eco_account.html | 4 +- .../includes/eco_account/deductions.html | 23 +++ analysis/utils/report.py | 65 +++++++- analysis/views.py | 5 - konova/models.py | 3 +- locale/de/LC_MESSAGES/django.mo | Bin 26230 -> 26257 bytes locale/de/LC_MESSAGES/django.po | 144 ++++++++++-------- 9 files changed, 208 insertions(+), 70 deletions(-) create mode 100644 analysis/templates/analysis/reports/includes/eco_account/amount.html rename analysis/templates/analysis/reports/includes/{ => eco_account}/card_eco_account.html (80%) create mode 100644 analysis/templates/analysis/reports/includes/eco_account/deductions.html diff --git a/analysis/templates/analysis/reports/detail.html b/analysis/templates/analysis/reports/detail.html index 42322418..4497adf3 100644 --- a/analysis/templates/analysis/reports/detail.html +++ b/analysis/templates/analysis/reports/detail.html @@ -11,7 +11,7 @@
{% include 'analysis/reports/includes/intervention/card_intervention.html' %} {% include 'analysis/reports/includes/compensation/card_compensation.html' %} - {% include 'analysis/reports/includes/card_eco_account.html' %} + {% include 'analysis/reports/includes/eco_account/card_eco_account.html' %} {% include 'analysis/reports/includes/old_intervention/card_old_interventions.html' %}
{% endblock %} \ No newline at end of file diff --git a/analysis/templates/analysis/reports/includes/eco_account/amount.html b/analysis/templates/analysis/reports/includes/eco_account/amount.html new file mode 100644 index 00000000..092ee9a8 --- /dev/null +++ b/analysis/templates/analysis/reports/includes/eco_account/amount.html @@ -0,0 +1,32 @@ +{% load i18n fontawesome_5 ksp_filters %} + +

{% trans 'Amount' %}

+ + {% blocktrans %} + Checked = Has been checked by the registration office according to LKompVzVo + {% endblocktrans %} +
+ {% blocktrans %} + Recorded = Has been checked and published by the conservation office + {% endblocktrans %} +
+
+ + + + + + + + + + + + + + + + + +
{% trans 'Before' %} LKompVzVo{% trans 'After' %} LKompVzVo{% fa5_icon 'bookmark' %} {% trans 'Recorded' %}{% trans 'Total' %}
{{report.eco_account_report.queryset_old.count|default_if_zero:"-"}}{{report.eco_account_report.queryset.count|default_if_zero:"-"}}{{report.eco_account_report.queryset_recorded.count|default_if_zero:"-"}}{{report.eco_account_report.queryset_total.count|default_if_zero:"-"}}
+
\ No newline at end of file diff --git a/analysis/templates/analysis/reports/includes/card_eco_account.html b/analysis/templates/analysis/reports/includes/eco_account/card_eco_account.html similarity index 80% rename from analysis/templates/analysis/reports/includes/card_eco_account.html rename to analysis/templates/analysis/reports/includes/eco_account/card_eco_account.html index 744ce07f..850ac60a 100644 --- a/analysis/templates/analysis/reports/includes/card_eco_account.html +++ b/analysis/templates/analysis/reports/includes/eco_account/card_eco_account.html @@ -15,7 +15,9 @@
- {% include 'form/table/generic_table_form_body.html' %} + {% include 'analysis/reports/includes/eco_account/amount.html' %} +
+ {% include 'analysis/reports/includes/eco_account/deductions.html' %}
diff --git a/analysis/templates/analysis/reports/includes/eco_account/deductions.html b/analysis/templates/analysis/reports/includes/eco_account/deductions.html new file mode 100644 index 00000000..1520e080 --- /dev/null +++ b/analysis/templates/analysis/reports/includes/eco_account/deductions.html @@ -0,0 +1,23 @@ +{% load i18n fontawesome_5 ksp_filters %} + +

{% trans 'Deductions' %}

+
+ + + + + + + + + + + + + + + + + +
{% fa5_icon 'bookmark' %} {% trans 'Recorded' %}{% fa5_icon 'bookmark' %} {% trans 'Recorded' %} {% trans 'Surface' %}{% trans 'Total' %}{% trans 'Total' %} {% trans 'Surface' %}
{{report.eco_account_report.queryset_deductions_recorded.count|default_if_zero:"-"}}{{report.eco_account_report.recorded_deductions_sq_m|default_if_zero:"-"}}m²{{report.eco_account_report.queryset_deductions_recorded.count|default_if_zero:"-"}}{{report.eco_account_report.deductions_sq_m|default_if_zero:"-"}}m²
+
\ No newline at end of file diff --git a/analysis/utils/report.py b/analysis/utils/report.py index 12d0a46c..4792a166 100644 --- a/analysis/utils/report.py +++ b/analysis/utils/report.py @@ -5,13 +5,16 @@ Contact: michel.peltriaux@sgdnord.rlp.de Created on: 18.10.21 """ +from django.contrib.gis.db.models import MultiPolygonField from django.contrib.gis.db.models.functions import NumGeometries +from django.contrib.gis.measure import Area from django.db.models import Count, Sum, Q +from django.db.models.functions import Cast from analysis.settings import LKOMPVZVO_PUBLISH_DATE from codelist.models import KonovaCode from codelist.settings import CODELIST_LAW_ID -from compensation.models import Compensation, Payment, EcoAccountDeduction +from compensation.models import Compensation, Payment, EcoAccountDeduction, EcoAccount from intervention.models import Intervention from konova.models import Geometry @@ -217,7 +220,9 @@ class TimespanReport: return Geometry.objects.filter( id__in=ids ).annotate( - num=NumGeometries("geom") + geom_cast=Cast("geom", MultiPolygonField()) + ).annotate( + num=NumGeometries("geom_cast") ).aggregate( num_geoms=Sum("num") )["num_geoms"] or 0 @@ -265,6 +270,61 @@ class TimespanReport: intervention__checked__isnull=False, ) + class EcoAccountReport: + queryset = EcoAccount.objects.none() + queryset_recorded = EcoAccount.objects.none() + queryset_old = EcoAccount.objects.none() + queryset_deductions = EcoAccountDeduction.objects.none() + queryset_deductions_recorded = EcoAccountDeduction.objects.none() + queryset_has_deductions = EcoAccountDeduction.objects.none() + + # Total size of deductions + deductions_sq_m = -1 + recorded_deductions_sq_m = -1 + + def __init__(self, id: str): + # First fetch all eco account for this office + self.queryset_total = EcoAccount.objects.filter( + responsible__conservation_office__id=id, + deleted=None, + ) + self.queryset_recorded = self.queryset_total.filter( + recorded__isnull=False + ) + # Then fetch the old ones (pre-LKompVzVo) + self.queryset_old = self.queryset_total.filter( + recorded__timestamp__lte=LKOMPVZVO_PUBLISH_DATE, + ) + # Then fetch the default queryset with the new ones (post-LKompVzVo) + self.queryset = self.queryset_total.filter( + recorded__timestamp__gte=LKOMPVZVO_PUBLISH_DATE, + ) + # Fetch all related deductions + self.queryset_deductions = EcoAccountDeduction.objects.filter( + account__id__in=self.queryset.values_list("id") + ) + # Fetch deductions for interventions which are already recorded + self.queryset_deductions_recorded = self.queryset_deductions.filter( + intervention__recorded__isnull=False + ) + self._create_report() + + def _create_report(self): + """ Creates all report information + + Returns: + + """ + self._evaluate_deductions() + + def _evaluate_deductions(self): + self.deductions_sq_m = self.queryset_deductions.aggregate( + sum=Sum("surface") + )["sum"] + self.recorded_deductions_sq_m = self.queryset_deductions_recorded.aggregate( + sum=Sum("surface") + )["sum"] + class OldInterventionReport: queryset = Compensation.objects.none() queryset_checked = Compensation.objects.none() @@ -287,4 +347,5 @@ class TimespanReport: self.office_id = office_id self.intervention_report = self.InterventionReport(self.office_id) self.compensation_report = self.CompensationReport(self.office_id) + self.eco_account_report = self.EcoAccountReport(self.office_id) self.old_intervention_report = self.OldInterventionReport(self.office_id) diff --git a/analysis/views.py b/analysis/views.py index b7699719..7e297e6a 100644 --- a/analysis/views.py +++ b/analysis/views.py @@ -1,14 +1,9 @@ from django.contrib.auth.decorators import login_required -from django.db.models import Count, Q, Sum from django.http import HttpRequest from django.shortcuts import render, get_object_or_404 from analysis.utils.report import TimespanReport from codelist.models import KonovaCode -from codelist.settings import CODELIST_LAW_ID -from compensation.models import EcoAccount, Compensation -from ema.models import Ema -from intervention.models import Intervention from konova.contexts import BaseContext from konova.decorators import conservation_office_group_required diff --git a/konova/models.py b/konova/models.py index f9f87584..2b351e14 100644 --- a/konova/models.py +++ b/konova/models.py @@ -312,4 +312,5 @@ class Geometry(BaseResource): Outsourced geometry model so multiple versions of the same object can refer to the same geometry if it is not changed """ from konova.settings import DEFAULT_SRID - geom = MultiPolygonField(null=True, blank=True, srid=DEFAULT_SRID) + # Read more about geography=True here: https://docs.djangoproject.com/en/3.2/ref/contrib/gis/model-api/#geography + geom = MultiPolygonField(null=True, blank=True, srid=DEFAULT_SRID, geography=True) diff --git a/locale/de/LC_MESSAGES/django.mo b/locale/de/LC_MESSAGES/django.mo index 1523b7ae2d3e587da16b406cbee6b727124a13cb..5a1733c1f00002998058c4654832abdf7a2d8932 100644 GIT binary patch delta 8238 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 XlLHEiLuY#w&WsowUU;R$)*Al-Q|?ww diff --git a/locale/de/LC_MESSAGES/django.po b/locale/de/LC_MESSAGES/django.po index 17306e74..85533a66 100644 --- a/locale/de/LC_MESSAGES/django.po +++ b/locale/de/LC_MESSAGES/django.po @@ -19,7 +19,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-10-19 13:23+0200\n" +"POT-Creation-Date: 2021-10-19 16:04+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -37,20 +37,10 @@ msgstr "" msgid "Report" msgstr "Bericht" -#: analysis/templates/analysis/reports/includes/card_eco_account.html:11 -msgid "Eco-Accounts" -msgstr "Ökokonten" - -#: analysis/templates/analysis/reports/includes/card_old_interventions.html:11 -msgid "Old interventions" -msgstr "Altfälle" - -#: analysis/templates/analysis/reports/includes/card_old_interventions.html:13 -msgid "Before" -msgstr "Vor" - #: analysis/templates/analysis/reports/includes/compensation/amount.html:3 +#: analysis/templates/analysis/reports/includes/eco_account/amount.html:3 #: analysis/templates/analysis/reports/includes/intervention/amount.html:3 +#: analysis/templates/analysis/reports/includes/old_intervention/amount.html:3 #: compensation/forms/modalForms.py:351 #: compensation/templates/compensation/detail/eco_account/includes/deductions.html:34 #: intervention/templates/intervention/detail/includes/deductions.html:31 @@ -58,7 +48,9 @@ msgid "Amount" msgstr "Menge" #: analysis/templates/analysis/reports/includes/compensation/amount.html:5 +#: analysis/templates/analysis/reports/includes/eco_account/amount.html:5 #: analysis/templates/analysis/reports/includes/intervention/amount.html:5 +#: analysis/templates/analysis/reports/includes/old_intervention/amount.html:5 msgid "" "\n" " Checked = Has been checked by the registration office according to " @@ -70,7 +62,9 @@ msgstr "" " " #: analysis/templates/analysis/reports/includes/compensation/amount.html:9 +#: analysis/templates/analysis/reports/includes/eco_account/amount.html:9 #: analysis/templates/analysis/reports/includes/intervention/amount.html:9 +#: analysis/templates/analysis/reports/includes/old_intervention/amount.html:9 msgid "" "\n" " Recorded = Has been checked and published by the conservation office\n" @@ -86,17 +80,25 @@ msgid "Area of responsibility" msgstr "Zuständigkeitsbereich" #: analysis/templates/analysis/reports/includes/compensation/amount.html:18 -#: analysis/templates/analysis/reports/includes/compensation/card_compensation.html:11 -#: compensation/tables.py:62 -#: intervention/templates/intervention/detail/includes/compensations.html:8 -#: intervention/templates/intervention/report/report.html:49 -msgid "Compensations" -msgstr "Kompensationen" +#: analysis/templates/analysis/reports/includes/intervention/amount.html:17 +#: analysis/templates/analysis/reports/includes/intervention/compensated_by.html:8 +#: analysis/templates/analysis/reports/includes/intervention/laws.html:17 +#: analysis/templates/analysis/reports/includes/old_intervention/amount.html:17 +#: compensation/tables.py:35 +#: compensation/templates/compensation/detail/compensation/view.html:43 +#: intervention/tables.py:33 +#: intervention/templates/intervention/detail/view.html:68 user/models.py:48 +msgid "Checked" +msgstr "Geprüft" #: analysis/templates/analysis/reports/includes/compensation/amount.html:19 -#: analysis/templates/analysis/reports/includes/intervention/amount.html:19 -#: analysis/templates/analysis/reports/includes/intervention/compensated_by.html:10 +#: analysis/templates/analysis/reports/includes/eco_account/amount.html:19 +#: analysis/templates/analysis/reports/includes/eco_account/deductions.html:8 +#: analysis/templates/analysis/reports/includes/eco_account/deductions.html:9 +#: analysis/templates/analysis/reports/includes/intervention/amount.html:18 +#: analysis/templates/analysis/reports/includes/intervention/compensated_by.html:9 #: analysis/templates/analysis/reports/includes/intervention/laws.html:20 +#: analysis/templates/analysis/reports/includes/old_intervention/amount.html:18 #: compensation/tables.py:41 compensation/tables.py:181 #: compensation/templates/compensation/detail/compensation/view.html:57 #: compensation/templates/compensation/detail/eco_account/includes/deductions.html:31 @@ -111,37 +113,70 @@ msgstr "Verzeichnet" msgid "Number single areas" msgstr "Einzelflächen" -#: analysis/templates/analysis/reports/includes/compensation/amount.html:25 -msgid "Conservation office by law" -msgstr "Naturschutzbehörde (§17 Abs.3 BNatSchG)" - -#: analysis/templates/analysis/reports/includes/compensation/amount.html:31 -msgid "Other registration office" -msgstr "Andere Zulassungsbehörden" - -#: analysis/templates/analysis/reports/includes/compensation/amount.html:37 -msgid "Land-use planning" -msgstr "Träger Bauleitplanung" - -#: analysis/templates/analysis/reports/includes/compensation/amount.html:43 -#: analysis/templates/analysis/reports/includes/intervention/amount.html:17 -#: analysis/templates/analysis/reports/includes/intervention/compensated_by.html:8 +#: analysis/templates/analysis/reports/includes/compensation/amount.html:21 +#: analysis/templates/analysis/reports/includes/compensation/amount.html:47 +#: analysis/templates/analysis/reports/includes/eco_account/amount.html:20 +#: analysis/templates/analysis/reports/includes/eco_account/deductions.html:10 +#: analysis/templates/analysis/reports/includes/eco_account/deductions.html:11 +#: analysis/templates/analysis/reports/includes/intervention/amount.html:19 +#: analysis/templates/analysis/reports/includes/intervention/compensated_by.html:10 #: analysis/templates/analysis/reports/includes/intervention/laws.html:23 #: analysis/templates/analysis/reports/includes/intervention/laws.html:43 +#: analysis/templates/analysis/reports/includes/old_intervention/amount.html:19 #: konova/templates/konova/home.html:23 konova/templates/konova/home.html:61 #: konova/templates/konova/home.html:100 msgid "Total" msgstr "Insgesamt" -#: analysis/templates/analysis/reports/includes/intervention/amount.html:18 -#: analysis/templates/analysis/reports/includes/intervention/compensated_by.html:9 -#: analysis/templates/analysis/reports/includes/intervention/laws.html:17 -#: compensation/tables.py:35 -#: compensation/templates/compensation/detail/compensation/view.html:43 -#: intervention/tables.py:33 -#: intervention/templates/intervention/detail/view.html:68 user/models.py:48 -msgid "Checked" -msgstr "Geprüft" +#: analysis/templates/analysis/reports/includes/compensation/amount.html:26 +msgid "Conservation office by law" +msgstr "Naturschutzbehörde (§17 Abs.3 BNatSchG)" + +#: analysis/templates/analysis/reports/includes/compensation/amount.html:33 +msgid "Land-use planning" +msgstr "Träger Bauleitplanung" + +#: analysis/templates/analysis/reports/includes/compensation/amount.html:40 +msgid "Other registration office" +msgstr "Andere Zulassungsbehörden" + +#: analysis/templates/analysis/reports/includes/compensation/card_compensation.html:11 +#: compensation/tables.py:62 +#: intervention/templates/intervention/detail/includes/compensations.html:8 +#: intervention/templates/intervention/report/report.html:49 +msgid "Compensations" +msgstr "Kompensationen" + +#: analysis/templates/analysis/reports/includes/eco_account/amount.html:17 +#: analysis/templates/analysis/reports/includes/old_intervention/card_old_interventions.html:13 +msgid "Before" +msgstr "Vor" + +#: analysis/templates/analysis/reports/includes/eco_account/amount.html:18 +msgid "After" +msgstr "Nach" + +#: analysis/templates/analysis/reports/includes/eco_account/card_eco_account.html:11 +msgid "Eco-Accounts" +msgstr "Ökokonten" + +#: analysis/templates/analysis/reports/includes/eco_account/deductions.html:3 +#: analysis/templates/analysis/reports/includes/intervention/compensated_by.html:27 +msgid "Deductions" +msgstr "Abbuchungen" + +#: analysis/templates/analysis/reports/includes/eco_account/deductions.html:9 +#: analysis/templates/analysis/reports/includes/eco_account/deductions.html:11 +#: compensation/forms/modalForms.py:152 +#: compensation/templates/compensation/detail/compensation/includes/states-after.html:36 +#: compensation/templates/compensation/detail/compensation/includes/states-before.html:36 +#: compensation/templates/compensation/detail/eco_account/includes/states-after.html:36 +#: compensation/templates/compensation/detail/eco_account/includes/states-before.html:36 +#: ema/templates/ema/detail/includes/states-after.html:36 +#: ema/templates/ema/detail/includes/states-before.html:36 +#: intervention/forms/modalForms.py:274 +msgid "Surface" +msgstr "Fläche" #: analysis/templates/analysis/reports/includes/intervention/card_intervention.html:10 #: intervention/tables.py:66 @@ -168,10 +203,6 @@ msgstr "Kompensation" msgid "Payment" msgstr "Zahlung" -#: analysis/templates/analysis/reports/includes/intervention/compensated_by.html:27 -msgid "Deductions" -msgstr "Abbuchungen" - #: analysis/templates/analysis/reports/includes/intervention/laws.html:2 msgid "Law usage" msgstr "Gesetzesanwendungen" @@ -197,6 +228,10 @@ msgstr "" msgid "Law" msgstr "Gesetz" +#: analysis/templates/analysis/reports/includes/old_intervention/card_old_interventions.html:11 +msgid "Old interventions" +msgstr "Altfälle" + #: analysis/templates/analysis/reports/index.html:6 #: templates/navbars/navbar.html:46 msgid "Reports" @@ -400,17 +435,6 @@ msgstr "Biotoptyp" msgid "Select the biotope type" msgstr "Biotoptyp wählen" -#: compensation/forms/modalForms.py:152 -#: compensation/templates/compensation/detail/compensation/includes/states-after.html:36 -#: compensation/templates/compensation/detail/compensation/includes/states-before.html:36 -#: compensation/templates/compensation/detail/eco_account/includes/states-after.html:36 -#: compensation/templates/compensation/detail/eco_account/includes/states-before.html:36 -#: ema/templates/ema/detail/includes/states-after.html:36 -#: ema/templates/ema/detail/includes/states-before.html:36 -#: intervention/forms/modalForms.py:274 -msgid "Surface" -msgstr "Fläche" - #: compensation/forms/modalForms.py:155 intervention/forms/modalForms.py:276 msgid "in m²" msgstr ""