Projet

Général

Profil

Actions

Anomalie #16835

fermé

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

Ajouté par Ludovic ARAUJO il y a plus de 3 ans. Mis à jour il y a presque 2 ans.

Statut:
R&D - Terminé
Priorité:
2-Sérieux
Assigné à:
Ludovic ARAUJO
Version cible:
Début:
09/04/2021
Echéance:

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 1 (0 ouverte1 fermée)

Lié à Backlog Courrier - Fonctionnalité #13273: Batch synchronisation LDAPR&D - TerminéLaurent GIOVANNONI19/02/2020Actions

Mis à jour par Support Maarch il y a plus de 3 ans

  • Statut changé de A qualifier à A traiter

Mis à jour par Emmanuel DILLARD il y a plus de 3 ans

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

Mis à jour par Florian AZIZIAN il y a plus de 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 ?

Mis à jour par Ludovic ARAUJO il y a plus de 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.

Mis à jour par Florian AZIZIAN il y a plus de 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.

Mis à jour par Florian AZIZIAN il y a plus de 3 ans

Mis à jour par Florian AZIZIAN il y a plus de 3 ans

  • Projet changé de 298 à 299
  • Statut changé de R&D - A planifier à R&D - En cours
  • Version cible changé de Inscription Backlog Courrier à Courrier Develop

Mis à jour par Florian AZIZIAN il y a plus de 3 ans

  • Assigné à mis à Florian AZIZIAN

Mis à jour par Florian AZIZIAN il y a plus de 3 ans

  • Assigné à Florian AZIZIAN supprimé

Mis à jour par Guillaume HEURTIER il y a plus de 3 ans

  • Assigné à mis à Guillaume HEURTIER

Mis à jour par Guillaume HEURTIER il y a plus de 3 ans

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

Mis à jour par Emmanuel DILLARD il y a plus de 3 ans

  • Projet changé de 299 à 298

Mis à jour par Emmanuel DILLARD il y a plus de 3 ans

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

Mis à jour par Emmanuel DILLARD il y a plus de 3 ans

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

Mis à jour par Emmanuel DILLARD il y a presque 2 ans

  • Version cible changé de Develop à 2301

MAJ version cible Develop->2301

Actions

Formats disponibles : Atom PDF