Loading CHANGELOG.md +5 −0 Original line number Diff line number Diff line Journal des modifications ========================= 1.3.3 (11/03/2020) ------------------ - Financement de thèse : ajout du code et du libellé des types de financement. 1.3.2 (24/01/2020) ------------------ Loading config/autoload/version.global.php +3 −3 Original line number Diff line number Diff line Loading @@ -2,9 +2,9 @@ return [ 'unicaen-app' => [ 'app_infos' => [ 'version' => '1.3.2', 'date' => '24/01/2020', 'version' => '1.3.3', 'date' => '11/03/2020', ], ], 'comment' => 'Fichier généré le 24/01/2020 à 11:44:25 avec /home/gauthierb/workspace/sygal-import-ws/bump-version', 'comment' => 'Fichier généré le 11/03/2020 à 14:05:58 avec /home/gauthierb/workspace/sygal-import-ws/bump-version', ]; doc/developpement.md +11 −7 Original line number Diff line number Diff line Loading @@ -8,18 +8,20 @@ Ajouter un champ dans un service Exemple : ajouter l'INE des doctorants. ### Marche à suivre - Désactivez l'exécution périodique du script de remplissage des tables `SYGAL_*` à partir des vues `V_SYGAL_*` *qui impacterait la base de données source sur laquelle vous allez intervenir*. - Dans la base de données source (ex: Apogée) : - Modifier la vue `V_SYGAL_DOCTORANT` pour ajouter la nouvelle colonne. - Modifier la vue `SYGAL_DOCTORANT` pour ajouter la nouvelle colonne, exemple : `alter table SYGAL_DOCTORANT add INE VARCHAR(20);` - Modifier la table `SYGAL_DOCTORANT` pour ajouter la nouvelle colonne, exemple : `alter table SYGAL_DOCTORANT add INE VARCHAR2(20);` - Dans les sources PHP : - Mettre à jour le mapping Doctorant dans le fichier - Mettre à jour le mapping `Doctorant` dans le fichier `module/ImportData/src/V1/Entity/Db/Mapping/ImportData.V1.Entity.Db.Doctorant.dcm.xml` - Ajouter la nouvelle propriété `$ine` ainsi que son getter associé `getIne()` dans la classe d'entité Loading @@ -27,8 +29,6 @@ Exemple : ajouter l'INE des doctorants. NB: pas besoin de setter puisqu'il s'agit d'une vue en base de données. ### Tests - En ligne de commande : - Lancer si besoin le web service dans Docker : Loading @@ -40,5 +40,9 @@ Exemple : ajouter l'INE des doctorants. - Vérifier que le nouveau champ figure dans la réponse du web service, ex : `curl --insecure --header "Accept: application/json" --header "Authorization: Basic c3lnYWwtYXBwOmF6ZXJ0eQ==" https://localhost:8443/doctorant` - Le reste du travail se fait côté application interrogeant le web service... - Réactivez l'exécution périodique (cron) du script de remplissage des tables `SYGAL_*` à partir des vues `V_SYGAL_*`. Le reste du travail se fait côté application interrogeant le web service... doc/release-notes/v1.3.3.md 0 → 100644 +86 −0 Original line number Diff line number Diff line Version 1.3.3 ============= Sources PHP ----------- Sur le serveur, placez-vous dans le répertoire du web service (sans doute `/var/www/sygal-import-ws`) puis lancez les commandes suivantes pour installer la nouvelle version : ```bash git fetch && git fetch --tags && git checkout --force 1.3.3 && bash install.sh ``` Selon le moteur PHP que vous avez installé, rechargez le service, exemple : - php7.0-fpm : `service php7.0-fpm reload` - apache2-mod-php7.0 : `service apache2 reload` Base de données --------------- Il faut corriger la vue `V_SYGAL_FINANCEMENT` ainsi que la table `SYGAL_FINANCEMENT` pour inclure le code et le libellé du type de financement. #### Apogée - Voici le nouveau script de la vue `V_SYGAL_FINANCEMENT` : ```sql create or replace view V_SYGAL_FINANCEMENT as with inscription_admin as ( select iae.cod_ind, iae.cod_dip, iae.cod_vrs_vdi, dip.lib_dip, min ( iae.cod_anu ) cod_anu_prm_iae from ins_adm_etp iae join diplome dip on dip.cod_dip = iae.cod_dip join typ_diplome tpd on tpd.cod_tpd_etb = dip.cod_tpd_etb where iae.eta_iae = 'E' -- Inscription administrative non annulee and iae.eta_pmt_iae = 'P' -- Inscription administrative payee and dip.cod_tpd_etb in ( '39', '40' ) and tpd.eta_ths_hdr_drt = 'T' -- Inscription en these and tpd.tem_sante = 'N' -- Exclusion des theses d exercice group by iae.cod_ind, iae.cod_dip, iae.cod_vrs_vdi, dip.lib_dip ) select min ( tfi.cod_seq_tfi ) as id, -- Premier numero de sequence du financement 'apogee' as source_id, tfi.cod_ths as these_id, min ( nvl ( tfi.cod_anu, iae.cod_anu_prm_iae ) ) as annee_id, -- Identifiant de l annee universitaire (ex. 2018 pour 2018/2019) min ( tfi.cod_afi ) keep ( dense_rank first order by tfi.cod_ths, tfi.cod_ofi, tfi.quotite_tfi ) as code_type_financement, min ( afi.lib_afi ) keep ( dense_rank first order by tfi.cod_ths, tfi.cod_ofi, tfi.quotite_tfi ) as libelle_type_financement, tfi.cod_ofi as origine_financement_id, listagg ( tfi.compl_tfi, ' / ' ) within group ( order by tfi.cod_ths, tfi.cod_ofi, tfi.quotite_tfi, nvl ( tfi.cod_anu, iae.cod_anu_prm_iae ), tfi.cod_seq_tfi ) as complement_financement, tfi.quotite_tfi as quotite_financement, min ( tfi.dat_deb_tfi ) as date_debut_financement, max ( tfi.dat_fin_tfi ) as date_fin_financement from inscription_admin iae join these_hdr_sout ths on ths.cod_ind = iae.cod_ind and ths.cod_dip = iae.cod_dip and ths.cod_vrs_vdi = iae.cod_vrs_vdi join ths_financement tfi on tfi.cod_ths = ths.cod_ths join origine_financement ofi on ofi.cod_ofi = tfi.cod_ofi left join aide_financiere afi on afi.cod_afi = tfi.cod_afi where ths.cod_ths_trv = '1' -- Exclusion des travaux and ofi.tem_en_sve_ofi = 'O' -- Exclusion des anciens codes des origines de financements group by tfi.cod_ths, tfi.cod_ofi, tfi.quotite_tfi ; ``` - Et voici de quoi mettre à jour la table `SYGAL_FINANCEMENT` : ```sql alter table SYGAL_FINANCEMENT add CODE_TYPE_FINANCEMENT varchar2(8) ; alter table SYGAL_FINANCEMENT add LIBELLE_TYPE_FINANCEMENT varchar2(100) ; ``` #### Physalis À définir. module/ImportData/src/V1/Entity/Db/Financement.php +18 −0 Original line number Diff line number Diff line Loading @@ -18,6 +18,8 @@ class Financement protected $quotiteFinancement; protected $dateDebutFinancement; protected $dateFinFinancement; protected $codeTypeFinancement; protected $libelleTypeFinancement; private $sourceInsertDate; Loading Loading @@ -100,4 +102,20 @@ class Financement { return $this->sourceInsertDate; } /** * @return mixed */ public function getCodeTypeFinancement() { return $this->codeTypeFinancement; } /** * @return mixed */ public function getLibelleTypeFinancement() { return $this->libelleTypeFinancement; } } Loading
CHANGELOG.md +5 −0 Original line number Diff line number Diff line Journal des modifications ========================= 1.3.3 (11/03/2020) ------------------ - Financement de thèse : ajout du code et du libellé des types de financement. 1.3.2 (24/01/2020) ------------------ Loading
config/autoload/version.global.php +3 −3 Original line number Diff line number Diff line Loading @@ -2,9 +2,9 @@ return [ 'unicaen-app' => [ 'app_infos' => [ 'version' => '1.3.2', 'date' => '24/01/2020', 'version' => '1.3.3', 'date' => '11/03/2020', ], ], 'comment' => 'Fichier généré le 24/01/2020 à 11:44:25 avec /home/gauthierb/workspace/sygal-import-ws/bump-version', 'comment' => 'Fichier généré le 11/03/2020 à 14:05:58 avec /home/gauthierb/workspace/sygal-import-ws/bump-version', ];
doc/developpement.md +11 −7 Original line number Diff line number Diff line Loading @@ -8,18 +8,20 @@ Ajouter un champ dans un service Exemple : ajouter l'INE des doctorants. ### Marche à suivre - Désactivez l'exécution périodique du script de remplissage des tables `SYGAL_*` à partir des vues `V_SYGAL_*` *qui impacterait la base de données source sur laquelle vous allez intervenir*. - Dans la base de données source (ex: Apogée) : - Modifier la vue `V_SYGAL_DOCTORANT` pour ajouter la nouvelle colonne. - Modifier la vue `SYGAL_DOCTORANT` pour ajouter la nouvelle colonne, exemple : `alter table SYGAL_DOCTORANT add INE VARCHAR(20);` - Modifier la table `SYGAL_DOCTORANT` pour ajouter la nouvelle colonne, exemple : `alter table SYGAL_DOCTORANT add INE VARCHAR2(20);` - Dans les sources PHP : - Mettre à jour le mapping Doctorant dans le fichier - Mettre à jour le mapping `Doctorant` dans le fichier `module/ImportData/src/V1/Entity/Db/Mapping/ImportData.V1.Entity.Db.Doctorant.dcm.xml` - Ajouter la nouvelle propriété `$ine` ainsi que son getter associé `getIne()` dans la classe d'entité Loading @@ -27,8 +29,6 @@ Exemple : ajouter l'INE des doctorants. NB: pas besoin de setter puisqu'il s'agit d'une vue en base de données. ### Tests - En ligne de commande : - Lancer si besoin le web service dans Docker : Loading @@ -40,5 +40,9 @@ Exemple : ajouter l'INE des doctorants. - Vérifier que le nouveau champ figure dans la réponse du web service, ex : `curl --insecure --header "Accept: application/json" --header "Authorization: Basic c3lnYWwtYXBwOmF6ZXJ0eQ==" https://localhost:8443/doctorant` - Le reste du travail se fait côté application interrogeant le web service... - Réactivez l'exécution périodique (cron) du script de remplissage des tables `SYGAL_*` à partir des vues `V_SYGAL_*`. Le reste du travail se fait côté application interrogeant le web service...
doc/release-notes/v1.3.3.md 0 → 100644 +86 −0 Original line number Diff line number Diff line Version 1.3.3 ============= Sources PHP ----------- Sur le serveur, placez-vous dans le répertoire du web service (sans doute `/var/www/sygal-import-ws`) puis lancez les commandes suivantes pour installer la nouvelle version : ```bash git fetch && git fetch --tags && git checkout --force 1.3.3 && bash install.sh ``` Selon le moteur PHP que vous avez installé, rechargez le service, exemple : - php7.0-fpm : `service php7.0-fpm reload` - apache2-mod-php7.0 : `service apache2 reload` Base de données --------------- Il faut corriger la vue `V_SYGAL_FINANCEMENT` ainsi que la table `SYGAL_FINANCEMENT` pour inclure le code et le libellé du type de financement. #### Apogée - Voici le nouveau script de la vue `V_SYGAL_FINANCEMENT` : ```sql create or replace view V_SYGAL_FINANCEMENT as with inscription_admin as ( select iae.cod_ind, iae.cod_dip, iae.cod_vrs_vdi, dip.lib_dip, min ( iae.cod_anu ) cod_anu_prm_iae from ins_adm_etp iae join diplome dip on dip.cod_dip = iae.cod_dip join typ_diplome tpd on tpd.cod_tpd_etb = dip.cod_tpd_etb where iae.eta_iae = 'E' -- Inscription administrative non annulee and iae.eta_pmt_iae = 'P' -- Inscription administrative payee and dip.cod_tpd_etb in ( '39', '40' ) and tpd.eta_ths_hdr_drt = 'T' -- Inscription en these and tpd.tem_sante = 'N' -- Exclusion des theses d exercice group by iae.cod_ind, iae.cod_dip, iae.cod_vrs_vdi, dip.lib_dip ) select min ( tfi.cod_seq_tfi ) as id, -- Premier numero de sequence du financement 'apogee' as source_id, tfi.cod_ths as these_id, min ( nvl ( tfi.cod_anu, iae.cod_anu_prm_iae ) ) as annee_id, -- Identifiant de l annee universitaire (ex. 2018 pour 2018/2019) min ( tfi.cod_afi ) keep ( dense_rank first order by tfi.cod_ths, tfi.cod_ofi, tfi.quotite_tfi ) as code_type_financement, min ( afi.lib_afi ) keep ( dense_rank first order by tfi.cod_ths, tfi.cod_ofi, tfi.quotite_tfi ) as libelle_type_financement, tfi.cod_ofi as origine_financement_id, listagg ( tfi.compl_tfi, ' / ' ) within group ( order by tfi.cod_ths, tfi.cod_ofi, tfi.quotite_tfi, nvl ( tfi.cod_anu, iae.cod_anu_prm_iae ), tfi.cod_seq_tfi ) as complement_financement, tfi.quotite_tfi as quotite_financement, min ( tfi.dat_deb_tfi ) as date_debut_financement, max ( tfi.dat_fin_tfi ) as date_fin_financement from inscription_admin iae join these_hdr_sout ths on ths.cod_ind = iae.cod_ind and ths.cod_dip = iae.cod_dip and ths.cod_vrs_vdi = iae.cod_vrs_vdi join ths_financement tfi on tfi.cod_ths = ths.cod_ths join origine_financement ofi on ofi.cod_ofi = tfi.cod_ofi left join aide_financiere afi on afi.cod_afi = tfi.cod_afi where ths.cod_ths_trv = '1' -- Exclusion des travaux and ofi.tem_en_sve_ofi = 'O' -- Exclusion des anciens codes des origines de financements group by tfi.cod_ths, tfi.cod_ofi, tfi.quotite_tfi ; ``` - Et voici de quoi mettre à jour la table `SYGAL_FINANCEMENT` : ```sql alter table SYGAL_FINANCEMENT add CODE_TYPE_FINANCEMENT varchar2(8) ; alter table SYGAL_FINANCEMENT add LIBELLE_TYPE_FINANCEMENT varchar2(100) ; ``` #### Physalis À définir.
module/ImportData/src/V1/Entity/Db/Financement.php +18 −0 Original line number Diff line number Diff line Loading @@ -18,6 +18,8 @@ class Financement protected $quotiteFinancement; protected $dateDebutFinancement; protected $dateFinFinancement; protected $codeTypeFinancement; protected $libelleTypeFinancement; private $sourceInsertDate; Loading Loading @@ -100,4 +102,20 @@ class Financement { return $this->sourceInsertDate; } /** * @return mixed */ public function getCodeTypeFinancement() { return $this->codeTypeFinancement; } /** * @return mixed */ public function getLibelleTypeFinancement() { return $this->libelleTypeFinancement; } }