#36 Quality checks
* adds AbstractQualityChecker as base for all quality checker instances * adds InterventionQualityChecker, inheriting from AbstractQualityChecker * adds functionality to InterventionQualityChecker * adds/updates translations
This commit is contained in:
34
konova/utils/quality.py
Normal file
34
konova/utils/quality.py
Normal file
@@ -0,0 +1,34 @@
|
||||
"""
|
||||
Author: Michel Peltriaux
|
||||
Organization: Struktur- und Genehmigungsdirektion Nord, Rhineland-Palatinate, Germany
|
||||
Contact: michel.peltriaux@sgdnord.rlp.de
|
||||
Created on: 25.10.21
|
||||
|
||||
"""
|
||||
from abc import abstractmethod
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
|
||||
from konova.models import BaseObject
|
||||
|
||||
|
||||
class AbstractQualityChecker:
|
||||
valid = False
|
||||
messages = []
|
||||
obj = None
|
||||
|
||||
class Meta:
|
||||
abstract = True
|
||||
|
||||
def __init__(self, obj: BaseObject):
|
||||
self.obj = obj
|
||||
self.messages = []
|
||||
self.valid = False
|
||||
|
||||
@abstractmethod
|
||||
def run_check(self):
|
||||
raise NotImplementedError
|
||||
|
||||
def _add_missing_attr_name(self, attr_name: str):
|
||||
missing = _('missing')
|
||||
self.messages.append(f"{attr_name} {missing}")
|
||||
|
||||
Reference in New Issue
Block a user