Commit 3827445b authored by Jean-Philippe Metivier's avatar Jean-Philippe Metivier
Browse files

Correction sql +formulaire d'entretien pro

parent 57d16645
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -13,7 +13,7 @@
    "unicaen/authentification": "^5",
    "unicaen/utilisateur": "^5",
    "unicaen/privilege": "^5",
    "unicaen/renderer": "^5",
    "unicaen/renderer": "emc2_1.0.0",
    "unicaen/pdf": "^5",
    "unicaen/mail": "^5",
    "unicaen/parametre": "^5",
@@ -24,7 +24,7 @@
    "unicaen/autoform": "^5",
    "unicaen/aide": "dev-master",
    "ext-json": "*",
    "unicaen/db-import": "dev-release_5.2.1"
    "unicaen/db-import": "dev-utilisateur"
  },
  "require-dev": {
    "laminas/laminas-developer-tools": ">=1.0"
+1 −30
Original line number Diff line number Diff line
@@ -55,35 +55,6 @@ return [
         */
        'session_refresh_period' => 0, // 0 <=> aucune requête exécutée

        /**
         * Paramètres de fonctionnement LDAP.
         */
        'ldap' => [
            'dn' => [
                'UTILISATEURS_BASE_DN'                  => 'ou=people,dc=unicaen,dc=fr',
                'UTILISATEURS_DESACTIVES_BASE_DN'       => 'ou=deactivated,dc=unicaen,dc=fr',
                'GROUPS_BASE_DN'                        => 'ou=groups,dc=unicaen,dc=fr',
                'STRUCTURES_BASE_DN'                    => 'ou=structures,dc=unicaen,dc=fr',
            ],
            'filters' => [
                'LOGIN_FILTER'                          => '(supannAliasLogin=%s)',
                'UTILISATEUR_STD_FILTER'                => '(|(uid=p*)(&(uid=e*)(eduPersonAffiliation=student)))',
                'CN_FILTER'                             => '(cn=%s)',
                'NAME_FILTER'                           => '(cn=%s*)',
                'UID_FILTER'                            => '(uid=%s)',
                'NO_INDIVIDU_FILTER'                    => '(supannEmpId=%08s)',
                'AFFECTATION_FILTER'                    => '(&(uid=*)(eduPersonOrgUnitDN=%s))',
                'AFFECTATION_CSTRUCT_FILTER'            => '(&(uid=*)(|(ucbnSousStructure=%s;*)(supannAffectation=%s;*)))',
                'LOGIN_OR_NAME_FILTER'                  => '(|(supannAliasLogin=%s)(cn=%s*))',
                'MEMBERSHIP_FILTER'                     => '(memberOf=%s)',
                'AFFECTATION_ORG_UNIT_FILTER'           => '(eduPersonOrgUnitDN=%s)',
                'AFFECTATION_ORG_UNIT_PRIMARY_FILTER'   => '(eduPersonPrimaryOrgUnitDN=%s)',
                'ROLE_FILTER'                           => '(supannRoleEntite=[role={SUPANN}%s][type={SUPANN}%s][code=%s]*)',
                'PROF_STRUCTURE'                        => '(&(eduPersonAffiliation=teacher)(eduPersonOrgUnitDN=%s))',
                'FILTER_STRUCTURE_DN'		            => '(%s)',
                'FILTER_STRUCTURE_CODE_ENTITE'	        => '(supannCodeEntite=%s)',
                'FILTER_STRUCTURE_CODE_ENTITE_PARENT'   => '(supannCodeEntiteParent=%s)',
            ],
        ],

    ],
];
+0 −426
Original line number Diff line number Diff line
<?php

namespace Application;

use UnicaenDbImport\Privilege\ImportPrivilege;
use UnicaenDbImport\Privilege\LogPrivilege;
use UnicaenDbImport\Privilege\ObservationPrivilege;
use UnicaenDbImport\Privilege\SynchroPrivilege;
use UnicaenPrivilege\Guard\PrivilegeController;

return [
    'navigation' => [
        'default' => [
            'home' => [
                'pages' => [
                    'unicaen-db-import' => [
                        'label' => "Import/Synchro",
                        'route' => 'unicaen-db-import/import',
                        'resource' => ImportPrivilege::getResourceId(ImportPrivilege::LISTER),
                        'order' => 100,
                        'visible' => false,
                    ],
                    'administration' => [
                        'pages' => [
                            'import_synchro' => [
                                'label' => "Import/Synchro",
                                'route' => 'unicaen-db-import/import',
                                'resource' => ImportPrivilege::getResourceId(ImportPrivilege::LISTER),
                                'order' => 90000,
                                'dropdown-header' => true,
                            ],
                            'import' => [
                                'label' => "Imports",
                                'route' => 'unicaen-db-import/import',
                                'resource' => ImportPrivilege::getResourceId(ImportPrivilege::LISTER),
                                'order' => 90010,
                                'icon' => 'fas fa-angle-right',
                            ],
                            'synchro' => [
                                'label' => "Synchros",
                                'route' => 'unicaen-db-import/synchro',
                                'resource' => SynchroPrivilege::getResourceId(SynchroPrivilege::LISTER),
                                'order' => 90020,
                                'icon' => 'fas fa-angle-right',
                            ],
                            'log' => [
                                'label' => "Logs",
                                'route' => 'unicaen-db-import/log',
                                'resource' => LogPrivilege::getResourceId(LogPrivilege::LISTER),
                                'order' => 90030,
                                'icon' => 'fas fa-angle-right',
                            ],
                            'observ' => [
                                'label' => "Observations",
                                'route' => 'unicaen-db-import/observ',
                                'resource' => ObservationPrivilege::getResourceId(ObservationPrivilege::LISTER),
                                'order' => 90040,
                                'icon' => 'fas fa-angle-right',
                            ],
                        ],
                    ],
                ],
            ],
        ],
    ],

    /**
     * Configuration globale du module UnicaenDbImport.
     */
    'import' => [
        'connections' => [
            'default' => 'doctrine.connection.orm_default',
            'octopus' => 'doctrine.connection.orm_octopus',
        ],

        'histo_columns_aliases' => [
//            'created_on' => 'HISTO_CREATION',     // date/heure de création de l'enregistrement
//            'updated_on' => 'HISTO_MODIFICATION', // date/heure de modification
//            'deleted_on' => 'HISTO_DESTRUCTION',  // date/heure de suppression
            'created_by' => 'HISTO_CREATEUR_ID',     // auteur de la création de l'enregistrement
            'updated_by' => 'HISTO_MODIFICATEUR_ID', // auteur de la modification
            'deleted_by' => 'HISTO_DESTRUCTEUR_ID',  // auteur de la suppression
        ],

        'histo_columns_values' => [
            'created_by' => 1, // auteur de la création de l'enregistrement
            'updated_by' => 1, // auteur de la modification
            'deleted_by' => 1, // auteur de la suppression
        ],
        'use_import_observ' => false,

        'imports' => [],
        'synchros' => [
            [
                'name' => 'CARRIERE_CORRESPONDANCE',
                'order' => 1000,
                'source' => [
                    'name' => 'octopus',
                    'code' => 'OCTOPUS',
                    'select'             => "
                        SELECT B.ID AS ID_ORIG, B.C_BAP, B.LIB_COURT, B.LIB_LONG, 
                               B.D_OUVERTURE,  B.D_FERMETURE 
                        FROM BAP B 
                        WHERE HISTO_DESTRUCTION IS NULL
                    ",
                    'connection' => 'octopus',
                    'source_code_column' => 'ID_ORIG',
                ],
                'destination' => [
                    'name' => 'Listing des Correspondances (BAP, ...)',
                    'table' => 'carriere_correspondance',
                    'connection' => 'default',
                    'source_code_column' => 'id_orig',
                    'intermediate_table_auto_drop' => true,
                    'preserved_id' => true,
                ],
            ],
            [
                'name' => 'CARRIERE_CORPS',
                'order' => 1100,
                'source' => [
                    'name' => 'octopus',
                    'code' => 'OCTOPUS',
                    'select'             => "
                            SELECT C.ID AS ID_ORIG, C.LIB_COURT, C.LIB_LONG, 
                                   C.C_CORPS AS CODE, C.C_CATEGORIE AS CATEGORIE,
                                   C.D_OUVERTURE,  C.D_FERMETURE 
                            FROM CORPS C 
                            WHERE HISTO_DESTRUCTION IS NULL
                        ",
                    'connection' => 'octopus',
                    'source_code_column' => 'ID_ORIG',
                ],
                'destination' => [
                    'name' => 'Listing des Corps',
                    'table' => 'carriere_corps',
                    'connection' => 'default',
                    'source_code_column' => 'id_orig',
                    'intermediate_table_auto_drop' => true,
                    'preserved_id' => true,
                ],
            ],
            [
                'name' => 'CARRIERE_GRADE',
                'order' => 1200,
                'source' => [
                    'name' => 'octopus',
                    'code' => 'OCTOPUS',
                    'select'             => "
                            SELECT G.ID AS ID_ORIG, G.LIB_COURT, G.LIB_LONG, 
                                   G.C_GRADE AS CODE,
                                   G.D_OUVERTURE,  G.D_FERMETURE 
                            FROM GRADE G 
                            WHERE HISTO_DESTRUCTION IS NULL
                        ",
                    'connection' => 'octopus',
                    'source_code_column' => 'ID_ORIG',
                ],
                'destination' => [
                    'name' => 'Listing des Grades',
                    'table' => 'carriere_grade',
                    'connection' => 'default',
                    'source_code_column' => 'id_orig',
                    'intermediate_table_auto_drop' => true,
                    'preserved_id' => true,
                ],
            ],
            [
                'name' => 'STRUCTURE_TYPE',
                'order' => 2000,
                'source' => [
                    'name' => 'octopus',
                    'code' => 'OCTOPUS',
                    'select'             => "
                            SELECT ST.ID AS ID_ORIG, ST.LIBELLE, ST.DESCRIPTION,  
                                   ST.CODE AS CODE
                            FROM STRUCTURE_TYPE ST 
                        ",
                    'connection' => 'octopus',
                    'source_code_column' => 'ID_ORIG',
                ],
                'destination' => [
                    'name' => 'Listing des types de structure',
                    'table' => 'structure_type',
                    'connection' => 'default',
                    'source_code_column' => 'id_orig',
                    'intermediate_table_auto_drop' => true,
                    'preserved_id' => true,
                ],
            ],
            [
                'name' => 'STRUCTURE',
                'order' => 2100,
                'source' => [
                    'name' => 'octopus',
                    'code' => 'OCTOPUS',
                    'select'             => "
                            SELECT S.ID AS ID_ORIG, S.LIBELLE_COURT, S.LIBELLE_LONG, S.TYPE_ID AS TYPE_ID,
                                   S.CODE AS CODE, S.SIGLE AS SIGLE, S.EMAIL_GENERIQUE AS ADRESSE_FONCTIONNELLE,
                                   S.DATE_OUVERTURE AS D_OUVERTURE, S.DATE_FERMETURE AS D_FERMETURE,    
                                   S.PARENT_ID AS PARENT_ID, S.NIV2_ID AS NIV2_ID
                            FROM V_STRUCTURE S
                        ",
                    'connection' => 'octopus',
                    'source_code_column' => 'ID_ORIG',
                ],
                'destination' => [
                    'name' => 'Listing des structures',
                    'table' => 'structure',
                    'connection' => 'default',
                    'source_code_column' => 'id_orig',
                    'intermediate_table_auto_drop' => true,
                    'preserved_id' => true,
                ],
            ],
            [
                'name' => 'AGENT',
                'order' => 3000,
                'source' => [
                    'name' => 'octopus',
                    'code' => 'OCTOPUS',
                    'select'             => "
                            SELECT A.C_INDIVIDU AS ID_ORIG, A.*
                            FROM V_PREECOG_AGENT A
                        ",
                    'connection' => 'octopus',
                    'source_code_column' => 'ID_ORIG',
                ],
                'destination' => [
                    'name' => 'Listing des agents',
                    'table' => 'agent',
                    'connection' => 'default',
                    'source_code_column' => 'id_orig',
                    'intermediate_table_auto_drop' => true,
                    'preserved_id' => true,
                ],
            ],
            [
                'name' => 'AGENT_AFFECTATION',
                'order' => 3100,
                'source' => [
                    'name' => 'octopus',
                    'code' => 'OCTOPUS',
                    'select'             => "
                            SELECT IAE.AFFECTATION_ID AS ID_ORIG, IAE.AGENT_ID, IAE.STRUCTURE_ID, 
                                   IAE.T_PRINCIPALE, IAE.DATE_DEBUT, IAE.DATE_FIN 
                            FROM V_PREECOG_AFFECTATION  IAE
                        ",
                    'connection' => 'octopus',
                    'source_code_column' => 'ID_ORIG',
                ],
                'destination' => [
                    'name' => 'Listing des affectations des agents',
                    'table' => 'agent_carriere_affectation',
                    'connection' => 'default',
                    'source_code_column' => 'id_orig',
                    'intermediate_table_auto_drop' => true,
                    'preserved_id' => true,
                ],
            ],
            [
                'name' => 'AGENT_ECHELON',
                'order' => 3200,
                'source' => [
                    'name' => 'octopus',
                    'code' => 'OCTOPUS',
                    'select'             => "
                            SELECT IE.ID AS ID_ORIG, IE.INDIVIDU_ID AS AGENT_ID, IE.ECHELON, 
                                   IE.D_DEBUT, IE.D_FIN 
                            FROM INDIVIDU_ECHELON IE
                            JOIN V_PREECOG_AGENT A ON A.C_INDIVIDU = IE.INDIVIDU_ID
                        ",
                    'connection' => 'octopus',
                    'source_code_column' => 'ID_ORIG',
                ],
                'destination' => [
                    'name' => 'Listing des affectations des agents',
                    'table' => 'agent_carriere_echelon',
                    'connection' => 'default',
                    'source_code_column' => 'id_orig',
                    'intermediate_table_auto_drop' => true,
                    'preserved_id' => true,
                ],
            ],
            [
                'name' => 'AGENT_GRADE',
                'order' => 3300,
                'source' => [
                    'name' => 'octopus',
                    'code' => 'OCTOPUS',
                    'select'             => "
                            SELECT IAG.ID AS ID_ORIG, IAG.AGENT_ID, IAG.STRUCTURE_ID, 
                                   IAG.CORPS_ID, IAG.GRADE_ID, IAG.BAP_ID, 
                                   IAG.D_DEBUT, IAG.D_FIN 
                            FROM V_PREECOG_GRADE IAG
                        ",
                    'connection' => 'octopus',
                    'source_code_column' => 'ID_ORIG',
                ],
                'destination' => [
                    'name' => 'Listing des grades des agents',
                    'table' => 'agent_carriere_grade',
                    'connection' => 'default',
                    'source_code_column' => 'id_orig',
                    'intermediate_table_auto_drop' => true,
                    'preserved_id' => true,
                ],
            ],
            [
                'name' => 'AGENT_QUOTITE',
                'order' => 3400,
                'source' => [
                    'name' => 'octopus',
                    'code' => 'OCTOPUS',
                    'select'             => "
                            SELECT IQ.ID AS ID_ORIG, IQ.INDIVIDU_ID AS AGENT_ID, IQ.QUOTITE, 
                                   IQ.D_DEBUT, IQ.D_FIN 
                            FROM INDIVIDU_QUOTITE IQ
                            JOIN V_PREECOG_AGENT A ON A.C_INDIVIDU = IQ.INDIVIDU_ID
                        ",
                    'connection' => 'octopus',
                    'source_code_column' => 'ID_ORIG',
                ],
                'destination' => [
                    'name' => 'Listing des quotités des agents',
                    'table' => 'agent_carriere_quotite',
                    'connection' => 'default',
                    'source_code_column' => 'id_orig',
                    'intermediate_table_auto_drop' => true,
                    'preserved_id' => true,
                ],
            ],
            [
                'name' => 'AGENT_STATUT',
                'order' => 3500,
                'source' => [
                    'name' => 'octopus',
                    'code' => 'OCTOPUS',
                    'select'             => "
                            SELECT IAS.ID AS ID_ORIG, IAS.AGENT_ID, IAS.STRUCTURE_ID,
                                   IAS.D_DEBUT, IAS.D_FIN,
                                   IAS.T_TITULAIRE, IAS.T_CDI, IAS.T_CDD,
                                   IAS.T_ADMINISTRATIF, IAS.T_ENSEIGNANT, IAS.T_CHERCHEUR, IAS.T_VACATAIRE, IAS.T_DOCTORANT,
                                   IAS.T_DETACHE_IN, IAS.T_DETACHE_OUT, IAS.T_HEBERGE, IAS.T_DISPO, IAS.T_EMERITE, IAS.T_RETRAITE
                            FROM V_PREECOG_STATUT IAS
                        ",
                    'connection' => 'octopus',
                    'source_code_column' => 'ID_ORIG',
                ],
                'destination' => [
                    'name' => 'Listing des statuts des agents',
                    'table' => 'agent_carriere_statut',
                    'connection' => 'default',
                    'source_code_column' => 'id_orig',
                    'intermediate_table_auto_drop' => true,
                    'preserved_id' => true,
                ],
            ],
            [
                'name' => 'STRUCTURE_RESPONSABLE',
                'order' => 4100,
                'source' => [
                    'name' => 'octopus',
                    'code' => 'OCTOPUS',
                    'select'             => "
                            SELECT PR.ID AS ID_ORIG, PR.AGENT_ID, PR.STRUCTURE_ID, PR.FONCTION_ID, 
                                   PR.DATE_DEBUT, PR.DATE_FIN 
                            FROM V_PREECOG_RESPONSABLE PR
                            JOIN V_PREECOG_AGENT A ON A.C_INDIVIDU = PR.AGENT_ID
                            JOIN V_STRUCTURE S ON S.ID = PR.STRUCTURE_ID
                        ",
                    'connection' => 'octopus',
                    'source_code_column' => 'ID_ORIG',
                ],
                'destination' => [
                    'name' => 'Listing des responsables de structures',
                    'table' => 'structure_responsable',
                    'connection' => 'default',
                    'source_code_column' => 'id_orig',
                    'intermediate_table_auto_drop' => true,
                    'preserved_id' => true,
                ],
            ],
            [
                'name' => 'STRUCTURE_GESTIONNAIRE',
                'order' => 4200,
                'source' => [
                    'name' => 'octopus',
                    'code' => 'OCTOPUS',
                    'select'             => "
                            SELECT PG.ID AS ID_ORIG, PG.AGENT_ID, PG.STRUCTURE_ID, PG.FONCTION_ID, 
                                   PG.DATE_DEBUT, PG.DATE_FIN 
                            FROM V_PREECOG_GESTIONNAIRE PG
                            JOIN V_PREECOG_AGENT A ON A.C_INDIVIDU = PG.AGENT_ID
                        ",
                    'connection' => 'octopus',
                    'source_code_column' => 'ID_ORIG',
                ],
                'destination' => [
                    'name' => 'Listing des gestionnaires de structures',
                    'table' => 'structure_gestionnaire',
                    'connection' => 'default',
                    'source_code_column' => 'id_orig',
                    'intermediate_table_auto_drop' => true,
                    'preserved_id' => true,
                ],
            ],
        ],
    ],

    'bjyauthorize'    => [
        'guards' => [
            PrivilegeController::class => [
                [
                    'controller' => 'UnicaenDbImport\Controller\Console',
                    'action'     => [
                        'runImport',
                        'runSynchro',
                    ],
                    'roles' => [],
                ],
            ],
        ],
    ],

];
+0 −280

File deleted.

Preview size limit exceeded, changes collapsed.

+0 −265

File deleted.

Preview size limit exceeded, changes collapsed.

Loading