Anomalie #23131
ferméTMA - impossibilité de viser ou signer si une délégation en place
Ajouté par Charles BATIONO il y a presque 2 ans. Mis à jour il y a presque 2 ans.
Description
1.) Quand un utilisateur met en place une délégation , il ne peut plus viser ou signer de document , message d'erreur : pas les droits.
Un viseur/signataire doit pouvoir continuer à viser ou signer même si il a mis en place une délégation
2.) Par ailleurs, lorsque l'utilisateur qui a délégué ses documents à un autre essaye de signer/viser (au moins 2 tentatives sans succès),
L’utilisateur à qui les documents ont été délégués n'arriva pas non plus à signer/viser.
Reproduite sur la démo.
Fichiers
Peek 13-12-2022 12-03.gif (7,6 Mo) Peek 13-12-2022 12-03.gif | Charles BATIONO, 13/12/2022 12:08 | ||
Peek 13-12-2022 11-59.gif (9,08 Mo) Peek 13-12-2022 11-59.gif | Charles BATIONO, 13/12/2022 12:08 | ||
Capture d’écran du 2022-12-22 15-48-51.png (91,8 ko) Capture d’écran du 2022-12-22 15-48-51.png | Charles BATIONO, 22/12/2022 15:49 |
Mis à jour par Charles BATIONO il y a presque 2 ans
- Fichier Peek 13-12-2022 12-03.gif Peek 13-12-2022 12-03.gif ajouté
- Fichier Peek 13-12-2022 11-59.gif Peek 13-12-2022 11-59.gif ajouté
Mis à jour par Charles BATIONO il y a presque 2 ans
Quand je modifie les lignes ( à partir de la ligne 613) suivantes du fichier DocumentController.php, cela corrige le premier point, mais pas le second.
Je vous laisse étudier l'impact de cette modification avant de l'intégrer et livrer au client.
Avant :
if ($GLOBALS['id'] != ($substitute['substitute'] ?? $workflow['user_id'])) {
return $response->withStatus(403)->withJson(['errors' => 'Current user unauthorized for this step']);
}
Après
if ($GLOBALS['id'] != ($substitute['substitute'] ?? $workflow['user_id'])) {
if ($GLOBALS['id'] != $workflow['user_id']) {
return $response->withStatus(403)->withJson(['errors' => 'Current user unauthorized for this step']);
}
}
Mis à jour par Emmanuel DILLARD il y a presque 2 ans
- Sujet changé de impossibilité de viser ou signer si une délégation en place à TMA - impossibilité de viser ou signer si une délégation en place
- Echéance mis à 03/01/2023
- Statut changé de A qualifier à R&D - En cours
- Assigné à
Emmanuel DILLARDsupprimé
Mis à jour par Emmanuel DILLARD il y a presque 2 ans
- Priorité changé de 0-Bloquant à 1-Majeur
Mis à jour par GIT LAB il y a presque 2 ans
Commit ajouté sur la branche fix/23131/21.03 de MaarchParapheur
FIX #23131 TIME 0:40 Fix fixed error not the rights when the delegation is activated
https://labs.maarch.org/maarch/MaarchParapheur/commit/9568d8f7bbcc9f5c0bc8b268b7cc0fc6a81596c8
Mis à jour par Emmanuel DILLARD il y a presque 2 ans
- Statut changé de R&D - En cours à R&D - En test
Mis à jour par Charles BATIONO il y a presque 2 ans
- Fichier Peek 22-12-2022 15-35.gif ajouté
J'ai tester faire des tests avec le correctif, et nous avons un autre soucis.
Lorsqu'un utilisateur délègue ses documments à un autre, la personnes à qui les documents ont été
délégués n'arrive pas à signer ( Voir PJ).
L'anomalie se trouve au niveau de la condition ci-dessous de la fonction hasRightById du fichier DocumentController.php.
Les modifs suivantes corrigent l'anomalie
Avant :
if (!$args['readOnly']) {
$currentStep = WorkflowModel::getCurrentStep(['select' => ['user_id'], 'documentId' => $args['id']]);
if (empty($currentStep) || empty($currentStep['user_id'])) {
return false;
}
if ($currentStep['user_id'] == $args['userId']) {
return true;
} else {
$user = UserModel::getById(['id' => $args['userId'], 'select' => ['substitute']]);
return $currentStep['user_id'] == $user['substitute'];
}
}
Après:
if (!$args['readOnly']) {
$currentStep = WorkflowModel::getCurrentStep(['select' => ['user_id'], 'documentId' => $args['id']]);
if (empty($currentStep)) {
return false;
}
$user = UserModel::getById(['id' => $args['userId'], 'select' => ['substitute']]);
if ($currentStep['user_id'] == $args['userId'] || $GLOBALS['id'] == $user['substitute']) {
return true;
} else{
return false;
}
}
Mis à jour par Charles BATIONO il y a presque 2 ans
- Fichier
Peek 22-12-2022 15-35.gifsupprimé
Mis à jour par Charles BATIONO il y a presque 2 ans
Mis à jour par GIT LAB il y a presque 2 ans
Commit ajouté sur la branche fix/23131/21.03 de MaarchParapheur
FIX #23131 TIME 1:00 Correction of the document out of perimeter when the document is delegated
https://labs.maarch.org/maarch/MaarchParapheur/commit/a29b6f972b9b711e7c5c8a7bb0463663b25ea703
Mis à jour par GIT LAB il y a presque 2 ans
Commit ajouté sur la branche fix/23131/21.03 de MaarchParapheur
FIX #23131 TIME 0:30 Fix check access on substitute
https://labs.maarch.org/maarch/MaarchParapheur/commit/b754b186e5ecfef74df42918bcb809f05b2df287
Mis à jour par Hamza HRAMCHI il y a presque 2 ans
- Statut changé de R&D - En test à R&D - Terminé
Mis à jour par GIT LAB il y a presque 2 ans
Commit ajouté sur la branche fix/23131/develop de MaarchParapheur
FIX #23131 TIME 0:10 Fix check access on substitute
https://labs.maarch.org/maarch/MaarchParapheur/commit/a56a850854eb4cdc6c41208eacc1fe46161ff93f
Mis à jour par Hamza HRAMCHI il y a presque 2 ans
- Statut changé de R&D - Terminé à R&D - En test
Mis à jour par Emmanuel DILLARD il y a presque 2 ans
- Statut changé de R&D - En test à R&D - En cours
Mis à jour par Emmanuel DILLARD il y a presque 2 ans
- Statut changé de R&D - En cours à R&D - En test
Mis à jour par GIT LAB il y a presque 2 ans
Commit ajouté sur la branche 21.03_TMA5 de MaarchParapheur
FIX #23131 Correction of the document out of perimeter when the document is delegated
https://labs.maarch.org/maarch/MaarchParapheur/commit/66f5b96ccc1455a3f8b9938eb2b48101b1cac655
Mis à jour par GIT LAB il y a presque 2 ans
Commit ajouté sur la branche fix/23131/develop de MaarchParapheur
FIX #23131 TIME 0:05 Correction test ko
https://labs.maarch.org/maarch/MaarchParapheur/commit/b185e10b80e564425bcd3657afa9ca51d36857e6
Mis à jour par Emmanuel DILLARD il y a presque 2 ans
- Projet Parapheur 21.03.15 ajouté
RAF TEST Develop
Mis à jour par Emmanuel DILLARD il y a presque 2 ans
- Echéance changé de 03/01/2023 à 17/01/2023
Mis à jour par Hamza HRAMCHI il y a presque 2 ans
- Statut changé de R&D - En test à R&D - Terminé