Projet

Général

Profil

Anomalie #16835

[Synchro LDAP] users : perte de l'entité par défaut a la création

Ajouté par Ludovic ARAUJO il y a environ 3 ans. Mis à jour il y a environ un an.

Statut:
R&D - Terminé
Priorité:
2-Sérieux
Assigné à:
Ludovic ARAUJO
Version cible:
Début:
09/04/2021
Echéance:
Version applicable MC:
Tags Courrier:
20.10.11, 21.03.3

Description

Bonjour,

Suite à plusieurs tests et corrections, je vous propose la modification suivante pour le fichier : /bin/ldap/synchronizationScript.php
L'entité par défaut n'est plus présente suite à une correction.

ajout d'une fonction :

function userAddEntity($userId, $user)
{
    $entityId = null;
    $entityExists = \Entity\models\EntityModel::getByEntityId(['entityId' => $user['entityId'], 'select' => [1]]);
    $defaultEntityExists = \Entity\models\EntityModel::getByEntityId(['entityId' => $user['defaultEntity'], 'select' => [1]]);

    if(count($entityExists) > 0) $entityId = $user['entityId'];
    else if (count($defaultEntityExists) > 0) $entityId = $user['defaultEntity'];

    if(!empty($entityId))
    {
        $curlResponse = \SrcCore\models\CurlModel::execSimple([
            'url'           => rtrim($GLOBALS['maarchUrl'], '/') . '/rest/users/' . $userId . '/entities',
            'basicAuth'     => ['user' => $GLOBALS['user'], 'password' => $GLOBALS['password']],
            'headers'       => ['content-type:application/json'],
            'method'        => 'POST',
            'body'          => json_encode(['entityId' => $entityId])
        ]);
        if ($curlResponse['code'] != 200) {
            writeLog(['message' => "[ERROR] Add entity to user failed : {$curlResponse['response']['errors']}"]);
        }
    }
    else{
        writeLog(['message' => "[ERROR] Add entity to user failed : {Entity not found}"]);
    }
}

Remplacer le code ligne 342 a 366 par :

userAddEntity($maarchUsersLogin[$user['user_id']]['id'], $user);

Remplacer le code ligne 388 a 399 par :

userAddEntity($curlResponse['response']['id'], $user);

Demandes liées

Lié à Backlog Courrier - Fonctionnalité #13273: Batch synchronisation LDAPR&D - Terminé2020-02-19

Historique

#1 Mis à jour par Support Maarch il y a environ 3 ans

  • Statut changé de A qualifier à A traiter

#2 Mis à jour par Emmanuel DILLARD il y a environ 3 ans

  • Statut changé de A traiter à R&D - A étudier
  • Assigné à changé de EDI PO à Florian AZIZIAN

#3 Mis à jour par Florian AZIZIAN il y a environ 3 ans

  • Statut changé de R&D - A étudier à Complément d'Informations
  • Assigné à changé de Florian AZIZIAN à Ludovic ARAUJO

Effectivement , après analyse du code, defaultEntity est utilisé seulement si l'entité du ldap n'existe pas dans MaarchCourrier
Donc si l'utilisateur n'a pas d'entité dans le ldap, on ne lui ajoute pas l'entité par défaut dans Courrier (20.10, 21.03, develop)

La demande initiale était : mettre une entité par défaut si l'utilisateur n'a pas d'entité de rattachement ou une entité non existante
Après avoir testé la proposition de code, on pourrait donc intégrer le code dans l'application.

Question : Est-ce que c'est normal que l'utilisateur n'ait pas d'entité dans le ldap ?

#4 Mis à jour par Ludovic ARAUJO il y a environ 3 ans

  • Assigné à Ludovic ARAUJO supprimé

L'utilisateur a une entité mais elle n'existe pas encore dans maarch, le client a donc une entité par defaut pour ajouté l'utilisateur dans tout les cas.

#5 Mis à jour par Florian AZIZIAN il y a environ 3 ans

  • Statut changé de Complément d'Informations à R&D - A planifier

Si l'utilisateur a une entité dans le ldap (et qui n'existe pas dans Maarch), le code initial aurait bien dû positionner l'entité par défaut.
A la vu du code, je ne vois pas de problème.
Il faut que l'on teste sur notre serveur ldap.

#7 Mis à jour par Florian AZIZIAN il y a environ 3 ans

#8 Mis à jour par Florian AZIZIAN il y a environ 3 ans

  • Projet changé de Backlog à CURRENT SPRINT
  • Statut changé de R&D - A planifier à R&D - En cours
  • Version cible changé de Inscription Backlog Courrier à Courrier Develop
  • Tags Courrier 20.10.10, 21.03.3 ajouté

#9 Mis à jour par Florian AZIZIAN il y a environ 3 ans

  • Assigné à mis à Florian AZIZIAN

#10 Mis à jour par Florian AZIZIAN il y a environ 3 ans

  • Tags Courrier 20.10.11 ajouté
  • Tags Courrier 20.10.10 supprimé

#11 Mis à jour par Florian AZIZIAN il y a presque 3 ans

  • Assigné à Florian AZIZIAN supprimé

#12 Mis à jour par Guillaume HEURTIER il y a presque 3 ans

  • Assigné à mis à Guillaume HEURTIER

#13 Mis à jour par Guillaume HEURTIER il y a presque 3 ans

  • Statut changé de R&D - En cours à R&D - Terminé

#15 Mis à jour par Emmanuel DILLARD il y a presque 3 ans

  • Projet changé de CURRENT SPRINT à Backlog

#17 Mis à jour par Emmanuel DILLARD il y a presque 3 ans

  • Assigné à changé de Guillaume HEURTIER à Ludovic ARAUJO

#18 Mis à jour par Emmanuel DILLARD il y a presque 3 ans

  • Projet changé de Backlog à Backlog Courrier
  • Version cible changé de Courrier Develop à Develop

#19 Mis à jour par Emmanuel DILLARD il y a environ un an

  • Version cible changé de Develop à 2301

MAJ version cible Develop->2301

Formats disponibles : Atom PDF