diff --git a/compensation/models/compensation.py b/compensation/models/compensation.py index 491a8208..4dd2b4c2 100644 --- a/compensation/models/compensation.py +++ b/compensation/models/compensation.py @@ -331,28 +331,6 @@ class Compensation(AbstractCompensation, CEFMixin, CoherenceMixin): """ return self.intervention.users.all() - def get_LANIS_link(self) -> str: - """ Generates a link for LANIS depending on the geometry - - Returns: - - """ - try: - geom = self.geometry.geom.transform(DEFAULT_SRID_RLP, clone=True) - x = geom.centroid.x - y = geom.centroid.y - zoom_lvl = 16 - except AttributeError: - # If no geometry has been added, yet. - x = 1 - y = 1 - zoom_lvl = 6 - return LANIS_LINK_TEMPLATE.format( - zoom_lvl, - x, - y, - ) - def get_documents(self) -> QuerySet: """ Getter for all documents of a compensation diff --git a/compensation/models/eco_account.py b/compensation/models/eco_account.py index 895d537f..6d95b399 100644 --- a/compensation/models/eco_account.py +++ b/compensation/models/eco_account.py @@ -123,28 +123,6 @@ class EcoAccount(AbstractCompensation, ShareableObjectMixin, RecordableObjectMix return ret_val_total, ret_val_relative - def get_LANIS_link(self) -> str: - """ Generates a link for LANIS depending on the geometry - - Returns: - - """ - try: - geom = self.geometry.geom.transform(DEFAULT_SRID_RLP, clone=True) - x = geom.centroid.x - y = geom.centroid.y - zoom_lvl = 16 - except AttributeError: - # If no geometry has been added, yet. - x = 1 - y = 1 - zoom_lvl = 6 - return LANIS_LINK_TEMPLATE.format( - zoom_lvl, - x, - y, - ) - def quality_check(self) -> EcoAccountQualityChecker: """ Quality check diff --git a/ema/models/ema.py b/ema/models/ema.py index b145acba..983bdbd7 100644 --- a/ema/models/ema.py +++ b/ema/models/ema.py @@ -51,28 +51,6 @@ class Ema(AbstractCompensation, ShareableObjectMixin, RecordableObjectMixin): self.identifier = new_id super().save(*args, **kwargs) - def get_LANIS_link(self) -> str: - """ Generates a link for LANIS depending on the geometry - - Returns: - - """ - try: - geom = self.geometry.geom.transform(DEFAULT_SRID_RLP, clone=True) - x = geom.centroid.x - y = geom.centroid.y - zoom_lvl = 16 - except AttributeError: - # If no geometry has been added, yet. - x = 1 - y = 1 - zoom_lvl = 6 - return LANIS_LINK_TEMPLATE.format( - zoom_lvl, - x, - y, - ) - def quality_check(self) -> EmaQualityChecker: """ Quality check diff --git a/intervention/models/intervention.py b/intervention/models/intervention.py index 8f54a2ae..e2e736d7 100644 --- a/intervention/models/intervention.py +++ b/intervention/models/intervention.py @@ -100,34 +100,6 @@ class Intervention(BaseObject, ShareableObjectMixin, RecordableObjectMixin, Chec checker.run_check() return checker - def get_LANIS_link(self) -> str: - """ Generates a link for LANIS depending on the geometry - - Returns: - - """ - try: - geom = self.geometry.geom.transform(DEFAULT_SRID_RLP, clone=True) - x = geom.centroid.x - y = geom.centroid.y - area = int(geom.envelope.area) - z_l = 16 - for k_area, v_zoom in LANIS_ZOOM_LUT.items(): - if k_area < area: - z_l = v_zoom - break - zoom_lvl = z_l - except (AttributeError, IndexError) as e: - # If no geometry has been added, yet. - x = 1 - y = 1 - zoom_lvl = 6 - return LANIS_LINK_TEMPLATE.format( - zoom_lvl, - x, - y, - ) - def get_documents(self) -> (QuerySet, QuerySet): """ Getter for all documents of an intervention diff --git a/konova/models/object.py b/konova/models/object.py index 06256abb..a6164f5a 100644 --- a/konova/models/object.py +++ b/konova/models/object.py @@ -12,6 +12,7 @@ from abc import abstractmethod from django.contrib import messages from django.db.models import QuerySet +from konova.sub_settings.lanis_settings import DEFAULT_SRID_RLP, LANIS_ZOOM_LUT, LANIS_LINK_TEMPLATE from konova.tasks import celery_send_mail_shared_access_removed, celery_send_mail_shared_access_given, \ celery_send_mail_shared_data_recorded, celery_send_mail_shared_data_unrecorded, \ celery_send_mail_shared_data_deleted, celery_send_mail_shared_data_checked @@ -544,3 +545,31 @@ class GeoReferencedMixin(models.Model): message_str = GEOMETRY_CONFLICT_WITH_TEMPLATE.format(instance_identifiers) messages.info(request, message_str) return request + + def get_LANIS_link(self) -> str: + """ Generates a link for LANIS depending on the geometry + + Returns: + + """ + try: + geom = self.geometry.geom.transform(DEFAULT_SRID_RLP, clone=True) + x = geom.centroid.x + y = geom.centroid.y + area = int(geom.envelope.area) + z_l = 16 + for k_area, v_zoom in LANIS_ZOOM_LUT.items(): + if k_area < area: + z_l = v_zoom + break + zoom_lvl = z_l + except (AttributeError, IndexError) as e: + # If no geometry has been added, yet. + x = 1 + y = 1 + zoom_lvl = 6 + return LANIS_LINK_TEMPLATE.format( + zoom_lvl, + x, + y, + ) \ No newline at end of file