Projet

Général

Profil

Actions

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.

Statut:
R&D - Terminé
Priorité:
1-Majeur
Assigné à:
Version cible:
Début:
12/12/2022
Echéance:
17/01/2023
Projet Parapheur:
21.03.15

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

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 DILLARD supprimé

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 Nicolas LE BOZEC il y a presque 2 ans

  • Assigné à mis à Nicolas LE BOZEC

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.gif supprimé

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é
Actions

Formats disponibles : Atom PDF