#36 Quality checks

* adds quality check logic for EcoAccount with EcoAccountQualityChecker
* adds/updates translations
* adds quality check logic for EMA with EmaQualityChecker
This commit is contained in:
2021-10-25 14:36:58 +02:00
parent ba04788064
commit 0e4113249f
7 changed files with 124 additions and 49 deletions

View File

@@ -6,8 +6,9 @@ from django.db.models import QuerySet
from compensation.models import AbstractCompensation
from ema.managers import EmaManager
from ema.utils.quality import EmaQualityChecker
from konova.models import AbstractDocument, generate_document_file_upload_path
from konova.settings import DEFAULT_SRID_RLP, LANIS_LINK_TEMPLATE, EMA_DOC_PATH
from konova.settings import DEFAULT_SRID_RLP, LANIS_LINK_TEMPLATE
from user.models import UserActionLogEntry
@@ -80,17 +81,15 @@ class Ema(AbstractCompensation):
y,
)
def quality_check(self) -> list:
def quality_check(self) -> EmaQualityChecker:
""" Quality check
Returns:
ret_msgs (list): Holds error messages
ret_msgs (EmaQualityChecker): Holds validity error messages
"""
ret_msgs = []
# ToDo: Add check methods!
return ret_msgs
checker = EmaQualityChecker(self)
checker.run_check()
return checker
def get_documents(self) -> QuerySet:
""" Getter for all documents of an EMA

View File

@@ -5,16 +5,26 @@ Contact: michel.peltriaux@sgdnord.rlp.de
Created on: 25.10.21
"""
from konova.utils.quality import AbstractQualityChecker
from django.utils.translation import gettext_lazy as _
from compensation.utils.quality import CompensationQualityChecker
class EmaQualityChecker(AbstractQualityChecker):
class EmaQualityChecker(CompensationQualityChecker):
def run_check(self):
""" Perform all defined data checks
super().run_check()
self._check_responsible_data()
def _check_responsible_data(self):
""" Checks on responsible data quality
Returns:
"""
self._check_geometry()
self.valid = len(self.messages) == 0
try:
resp = self.obj.responsible
if resp.conservation_office is None:
self._add_missing_attr_name(_("Conservation office"))
if resp.conservation_file_number is None or len(resp.conservation_file_number) == 0:
self._add_missing_attr_name(_("Conservation office file number"))
except AttributeError:
self._add_missing_attr_name(_("Responsible data"))