Anomalie #29413
Mis à jour par Emmanuel DILLARD il y a 5 mois
Lors de tests effectués pour le ticket #28951, un problème est apparu
https://labs.maarch.org/devteam/maarch-courrier-dev/-/merge_requests/1#note_64770
Voila le scénario :
- Enregistrement d'un courrier avec une PJ
- Envoi dans le parapheur interne vers (au moins) 2 signataires
- Chez le premier signataire, valider et continuer le circuit de visa **en signant électroniquement**
- Chez le 2ème signataire, valider le circuit de visa **en décochant la case de signature électronique**
=> Problème de signature
**Analyse :**
Après test pas à pas, il semblerait que le cycle de signature passe par la fonction signDocument (CertificateSignatureController.php) dans MP Api à cause du rôle rgs_2stars qui est envoyé dans le circuit à l'indexation du document côté MP. Dans la mesure où on décoche la case d'apposition d'un certificat, il n'y a pas de certificat envoyé côté MP pour l'étape de signature donc ça plante à l'intérieur de la fonction signDocument (la variable $_SESSION['module'] n'étant pas initialisée car ceci s'effectue à l'étape de hash du certificat)
Un rôle signataire :
N'appose pas de griffe ni de certificat
est considéré comme viseur
si au moins un document possède déjà un certificat,
obligation certificat (case cochée et grisée, non modifiable)
Contournement : modifier le circuit
"Au moins un document possède un certificat électronique" -> survol case à cocher
Si certificat est décoché par l'utilisateur et pas de griffe sur au moins un doc
la poursuite du circuit est bloquée (modale valider et poursuivre...)
Contournement : modifier le circuit
"Au moins un document n'a pas de griffe. En l'absence de certificat, une griffe sur chaque document est requise"
Check en API avec les contrôlés identiques.
Action bloquée si :
- Un doc avec certificat : certificat requis
- si un doc n'as pas de griffe