Commit 3d1853cd authored by Bertrand Gauthier's avatar Bertrand Gauthier
Browse files

Déplacement de la config des imports/synchros dans le module Import.

parent bfdad8ee
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -5,6 +5,7 @@ Journal des modifications
------
- Menu Formations : élargissement du nombre de rôles habilités à voir le menu.
- Page 'Mes formations' pour le doctorant : suppression de la colonne 'Etablissement'.
- Déplacement de la config des imports/synchros dans le module Import.
- [FIX] Rapports d'activité : correction du plantage empêchant l'envoi de la notification en cas de validation/avis.
- [FIX] Correction de la config des imports api_import_inscription_administrative et api_import_inscription_administrative_apprenant.
- [FIX] Rapport CSI : rétablissement du bouton de suppression d'un rapport.
+0 −125
Original line number Diff line number Diff line
@@ -2,10 +2,7 @@

namespace Application;

use Application\Entity\Db\Source;
use Application\Navigation\NavigationFactoryFactory;
use Import\Model\ImportObserv;
use Import\Model\ImportObservResult;
use Retraitement\Filter\Command\RetraitementShellCommandMines;

$config = [
@@ -91,128 +88,6 @@ $config = [
            ],
        ],
    ],
    'import' => [

        'import_observ_entity_class' => ImportObserv::class,
        'import_observ_result_entity_class' => ImportObservResult::class,

        'connections' => [
            // Cf. config locale
        ],

        //
        // Classe de l'entité Doctrine représentant une "Source".
        //
        'source_entity_class' => Source::class,

        //
        // Code de la Source par défaut (injectée dans les entités implémentant SoucreAwareInterface).
        //
        'default_source_code' => 'SYGAL::sygal',

        //
        // Alias éventuels des noms de colonnes d'historique.
        //
        '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
        ],

        //
        // Forçage éventuel de valeur pour les colonnes d'historique.
        //
        '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
        ],

        //
        // Témoin indiquant si la table IMPORT_OBSERV doit être prise en compte.
        // La table IMPORT_OBSERV permet d'inscrire les changements de valeurs à détecter pendant la synchro.
        // Les changements détectés sont consignés dans la table IMPORT_OBSERV_RESULT.
        //
        'use_import_observ' => true,

        //
        // Imports.
        //
        'imports' => [
            [
                'name' => 'domaine-hal',
                'order' => 160,
                'source' => [
                    'name' => 'HAL',
                    'connection' => 'api-archives-ouvertes',
                    'select' => '/domain/?q=*:*&wt=json&fl=*&rows=500',
                    'code' => 'HAL',
                    'columns' => [
                        'docid',
                        'code_s',
                        'haveNext_bool',
                        'en_domain_s',
                        'fr_domain_s',
                        'level_i',
                        'parent_i',
                    ],
                    'column_name_filter' => [
                        'docid' => 'docid',
                        'haveNext_bool' => 'havenext_bool',
                        'code_s' => 'source_code',
                        'en_domain_s' => 'en_domain_s',
                        'fr_domain_s' => 'fr_domain_s',
                        'level_i' => 'level_i',
                        'parent_i' => 'parent_id'
                    ],
                    'source_code_column' => 'source_code',
                    'request_options' => [
                        'debug' => true,
                    ],
                ],
                'destination' => [
                    'name' => 'application',
                    'table' => 'tmp_domaine_hal',
                    'connection' => 'default',
                    'source_code_column' => 'source_code',
                    'id_strategy' => null,
                    'id_sequence' => null,
                ],
            ]
        ],

        //
        // Synchros.
        //
        'synchros' => [
            // <==== la config des synchros sera injectée ici
            ////////////////////////////////////////////// DOMAINES HAL //////////////////////////////////////////////
            [
                'name' => 'domaine-hal',
                'order' => 160,
                'source' => [
                    'name' => 'sygal',
                    'code' => 'app',
                    'table' => 'src_domaine_hal',
                    'connection' => 'default',
                    'source_code_column' => 'source_code',
                ],
                'destination' => [
                    'name' => 'application',
                    'table' => 'domaine_hal',
                    'connection' => 'default',
                    'source_code_column' => 'source_code',
                    'id_strategy' => 'SEQUENCE',
                    'id_sequence' => null,
                    'where' => NULL,
                ],
            ],
        ],
    ],
    // Options pour le service de notification par mail
    'notification' => [
        // préfixe à ajouter systématiquement devant le sujet des mails
+126 −0
Original line number Diff line number Diff line
<?php

use Application\Entity\Db\Source;
use Import\Model\ImportObserv;
use Import\Model\ImportObservResult;
use UnicaenDbImport\Privilege\ImportPrivilege;
use UnicaenDbImport\Privilege\ObservationPrivilege;
use UnicaenDbImport\Privilege\SynchroPrivilege;

return [
    'import' => [

        'import_observ_entity_class' => ImportObserv::class,
        'import_observ_result_entity_class' => ImportObservResult::class,

        'connections' => [
            // Cf. config locale
        ],

        //
        // Classe de l'entité Doctrine représentant une "Source".
        //
        'source_entity_class' => Source::class,

        //
        // Code de la Source par défaut (injectée dans les entités implémentant SoucreAwareInterface).
        //
        'default_source_code' => 'SYGAL::sygal',

        //
        // Alias éventuels des noms de colonnes d'historique.
        //
        '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
        ],

        //
        // Forçage éventuel de valeur pour les colonnes d'historique.
        //
        '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
        ],

        //
        // Témoin indiquant si la table IMPORT_OBSERV doit être prise en compte.
        // La table IMPORT_OBSERV permet d'inscrire les changements de valeurs à détecter pendant la synchro.
        // Les changements détectés sont consignés dans la table IMPORT_OBSERV_RESULT.
        //
        'use_import_observ' => true,

        //
        // Imports.
        //
        'imports' => [
            [
                'name' => 'domaine-hal',
                'order' => 160,
                'source' => [
                    'name' => 'HAL',
                    'connection' => 'api-archives-ouvertes',
                    'select' => '/domain/?q=*:*&wt=json&fl=*&rows=500',
                    'code' => 'HAL',
                    'columns' => [
                        'docid',
                        'code_s',
                        'haveNext_bool',
                        'en_domain_s',
                        'fr_domain_s',
                        'level_i',
                        'parent_i',
                    ],
                    'column_name_filter' => [
                        'docid' => 'docid',
                        'haveNext_bool' => 'havenext_bool',
                        'code_s' => 'source_code',
                        'en_domain_s' => 'en_domain_s',
                        'fr_domain_s' => 'fr_domain_s',
                        'level_i' => 'level_i',
                        'parent_i' => 'parent_id'
                    ],
                    'source_code_column' => 'source_code',
                    'request_options' => [
                        'debug' => true,
                    ],
                ],
                'destination' => [
                    'name' => 'application',
                    'table' => 'tmp_domaine_hal',
                    'connection' => 'default',
                    'source_code_column' => 'source_code',
                    'id_strategy' => null,
                    'id_sequence' => null,
                ],
            ]
        ],

        //
        // Synchros.
        //
        'synchros' => [
            // <==== la config des synchros sera injectée ici
            ////////////////////////////////////////////// DOMAINES HAL //////////////////////////////////////////////
            [
                'name' => 'domaine-hal',
                'order' => 160,
                'source' => [
                    'name' => 'sygal',
                    'code' => 'app',
                    'table' => 'src_domaine_hal',
                    'connection' => 'default',
                    'source_code_column' => 'source_code',
                ],
                'destination' => [
                    'name' => 'application',
                    'table' => 'domaine_hal',
                    'connection' => 'default',
                    'source_code_column' => 'source_code',
                    'id_strategy' => 'SEQUENCE',
                    'id_sequence' => null,
                    'where' => NULL,
                ],
            ],
        ],
    ],

    'navigation' => [
        'default' => [
            'home' => [