Skip to content

[BACKEND] Delete site with visits is allowed #417

Open
@andriacap

Description

@andriacap

Bonjour,

L'issue concerne le problème concernant la suppression de site ayant des visites via l'entrée par protocole.

Le fonctionnement actuel s'appuie sur un controle sur la suppression qui est réalisé coté frontend (voir ici :

const nb_childrens =
this.obj.properties['nb_sites'] ||
0 + this.obj.properties['nb_visits'] ||
0 + this.obj.properties['nb_observations'] ||
0;
if (this.obj.objectType == 'module') {
this.canDelete = false; // On ne peut pas supprimer un module
} else if (this.obj.cruved['D'] && nb_childrens > 0) {
this.canDelete = false; // On ne peut pas supprimer un objet s'il a des enfants
this.toolTipNotAllowed = TOOLTIPMESSAGEALERT_CHILD;
} else {
this.canDelete = this.obj.cruved['D'];
}
) .

Cependant il y a un cas où le bouton "Supprimer" devient accessible malgré le fait q'un site possède des visites :

  • Un site de type "mare" est enregistré dans un protocole spécifique ( protocole Amphibiens)
  • On ajout une visite au site dans ce protocole Amphibiens
  • Le site est accessible via un autre protocole Odonates car il partage le même type de site "Mare".
  • Je vais sur le formulaire d'édition du site via le protocole Odonates , j'ai le bouton "Supprimer" qui est accessible car aucune visite n'est reliée au site via ce protocole.

Ce que je propose si ça convient, c'est de rajouter un controle sur la suppression de site coté backend en regardant si le site possède des visites quelque soit les modules .

Dites moi si ça vous et je propose une PR .

Merci d'avance

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions