Commit 97ad20bc authored by Bertrand Gauthier's avatar Bertrand Gauthier
Browse files

Notes de version 6.0.0

parent 8c4d34b8
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
Journal des modifications
=========================

6.0.0
-----
- Substitution de structures : réalisation des jointures dans les requêtes Doctrine et suppression dans les vues SRC_*.

5.2.2
-----
- [FIX] exploitation de la récupération des chemins plutôt que des contenus pour la génération des convocations
+108 −0
Original line number Diff line number Diff line
# Version 6.0.0

## 1. Sur le serveur d'application

- Placez-vous dans le répertoire de l'application puis lancez la commande suivante
  pour installer la nouvelle version :

```bash
git fetch --tags && git checkout --force 6.0.0 && bash ./install.sh
```

- Selon le moteur PHP que vous avez installé, rechargez le service, exemple :
    - php7.4-fpm         : `service php7.4-fpm reload`
    - apache2-mod-php7.4 : `service apache2 reload`


## 2. Dans la base de données

```sql
-- 
-- Substitution de structures retirée des vues SRC_*. 
-- 
 
create or replace view src_acteur(id, source_code, source_id, individu_id, these_id, role_id, acteur_etablissement_id, qualite, lib_role_compl) as
  SELECT NULL::text                         AS id,
         tmp.source_code,
         src.id                             AS source_id,
         i.id                               AS individu_id,
         t.id                               AS these_id,
         r.id                               AS role_id,
         eact.id                            AS acteur_etablissement_id,
         tmp.lib_cps                        AS qualite,
         tmp.lib_roj_compl                  AS lib_role_compl
  FROM tmp_acteur tmp
         JOIN source src ON src.id = tmp.source_id
         JOIN individu i ON i.source_code::text = tmp.individu_id::text
         JOIN these t ON t.source_code::text = tmp.these_id::text
         JOIN role r ON r.source_code::text = tmp.role_id::text AND r.code::text = 'P'::text
         LEFT JOIN etablissement eact ON eact.source_code::text = tmp.acteur_etablissement_id::text
  UNION ALL
  SELECT NULL::text                         AS id,
         tmp.source_code::text || 'P'::text AS source_code,
         src.id                             AS source_id,
         i.id                               AS individu_id,
         t.id                               AS these_id,
         r_pj.id                            AS role_id,
         eact.id                            AS acteur_etablissement_id,
         tmp.lib_cps                        AS qualite,
         NULL::character varying            AS lib_role_compl
  FROM tmp_acteur tmp
         JOIN source src ON src.id = tmp.source_id
         JOIN individu i ON i.source_code::text = tmp.individu_id::text
         JOIN these t ON t.source_code::text = tmp.these_id::text
         JOIN role r ON r.source_code::text = tmp.role_id::text AND r.code::text = 'M'::text
         JOIN role r_pj ON r_pj.code::text = 'P'::text AND r_pj.structure_id = r.structure_id
         LEFT JOIN etablissement eact ON eact.source_code::text = tmp.acteur_etablissement_id::text
  WHERE tmp.lib_roj_compl::text = 'Président du jury'::text
  UNION ALL
  SELECT NULL::text                         AS id,
         tmp.source_code,
         src.id                             AS source_id,
         i.id                               AS individu_id,
         t.id                               AS these_id,
         r.id                               AS role_id,
         eact.id                            AS acteur_etablissement_id,
         tmp.lib_cps                        AS qualite,
         NULL::character varying            AS lib_role_compl
  FROM tmp_acteur tmp
         JOIN source src ON src.id = tmp.source_id
         JOIN individu i ON i.source_code::text = tmp.individu_id::text
         JOIN these t ON t.source_code::text = tmp.these_id::text
         JOIN role r ON r.source_code::text = tmp.role_id::text AND r.code::text <> 'P'::text
         LEFT JOIN etablissement eact ON eact.source_code::text = tmp.acteur_etablissement_id::text;
  
create or replace view src_these(id, source_code, source_id, etablissement_id, doctorant_id, ecole_doct_id, unite_rech_id, titre, etat_these, resultat, code_sise_disc, lib_disc, date_prem_insc, date_prev_soutenance, date_soutenance, date_fin_confid, lib_etab_cotut, lib_pays_cotut, correc_autorisee, correc_effectuee, soutenance_autoris, date_autoris_soutenance, tem_avenant_cotut, date_abandon, date_transfert) as
  SELECT NULL::text                     AS id,
         tmp.source_code,
         src.id                         AS source_id,
         e.id                           AS etablissement_id,
         d.id                           AS doctorant_id,
         ed.id                          AS ecole_doct_id,
         ur.id                          AS unite_rech_id,
         tmp.lib_ths                    AS titre,
         tmp.eta_ths                    AS etat_these,
         tmp.cod_neg_tre::numeric       AS resultat,
         tmp.code_sise_disc,
         tmp.lib_int1_dis               AS lib_disc,
         tmp.dat_deb_ths                AS date_prem_insc,
         tmp.dat_prev_sou               AS date_prev_soutenance,
         tmp.dat_sou_ths                AS date_soutenance,
         tmp.dat_fin_cfd_ths            AS date_fin_confid,
         tmp.lib_etab_cotut,
         tmp.lib_pays_cotut,
         tmp.correction_possible        AS correc_autorisee,
         tmp.correction_effectuee       AS correc_effectuee,
         tmp.tem_sou_aut_ths            AS soutenance_autoris,
         tmp.dat_aut_sou_ths            AS date_autoris_soutenance,
         tmp.tem_avenant_cotut,
         tmp.dat_abandon                AS date_abandon,
         tmp.dat_transfert_dep          AS date_transfert
  FROM tmp_these tmp
         JOIN source src ON src.id = tmp.source_id
         JOIN etablissement e ON e.id = src.etablissement_id
         JOIN doctorant d ON d.source_code::text = tmp.doctorant_id::text
         LEFT JOIN ecole_doct ed ON ed.source_code::text = tmp.ecole_doct_id::text
         LEFT JOIN unite_rech ur ON ur.source_code::text = tmp.unite_rech_id::text;

```
 No newline at end of file