Commit 3fe0396d authored by Thomas Hamel's avatar Thomas Hamel
Browse files

Merge branch 'sygal_admission' into release_8.0.0

parents cceadbc2 249f73c3
Loading
Loading
Loading
Loading
+24 −18
Changes for doc/release-notes/8.0.0/admission/admission.sql: 24 added lines, 18 removed lines.
Original line number Diff line number Diff line
@@ -220,6 +220,7 @@ create table IF NOT EXISTS admission_inscription
    discipline_doctorat                       varchar(60),
    specialite_doctorat                       varchar(255),
    composante_doctorat_id                    bigint REFERENCES composante_ens (id),
    composante_doctorat_libelle               varchar(255),
    ecole_doctorale_id                        bigint REFERENCES ecole_doct (id),
    unite_recherche_id                        bigint REFERENCES unite_rech (id),
    etablissement_inscription_id              bigint REFERENCES etablissement (id),
@@ -746,26 +747,11 @@ from unicaen_avis_type t,
     unicaen_avis_valeur v
where t.code = 'AVIS_ADMISSION_PRESIDENCE'
  and v.code in (
                 'AVIS_ADMISSION_VALEUR_INCOMPLET',
                 'AVIS_ADMISSION_VALEUR_POSITIF',
                 'AVIS_ADMISSION_VALEUR_NEGATIF'
    )
    ON CONFLICT DO NOTHING;

insert into unicaen_avis_type_valeur_complem (avis_type_valeur_id, code, obligatoire_un_au_moins, type, libelle)
with tmp (code, oblig, type, libelle) as (select 'PB_INFOS',
                                                 false,
                                                 'information',
                                                 'Si le dossier d''admission est jugé incomplet, l''étudiant devra reprendre le circuit de signatures depuis le début...')
select tv.id, concat(t.code, '__', v.code, '__', tmp.code), tmp.oblig, tmp.type, tmp.libelle
from tmp,
     unicaen_avis_type_valeur tv
         join unicaen_avis_type t on t.id = tv.avis_type_id and t.code = 'AVIS_ADMISSION_PRESIDENCE'
         join unicaen_avis_valeur v on v.id = tv.avis_valeur_id and v.code in (
         'AVIS_ADMISSION_VALEUR_INCOMPLET'
         )
    ON CONFLICT DO NOTHING;

insert into unicaen_avis_type_valeur_complem (avis_type_valeur_id, code, obligatoire_un_au_moins, type, libelle)
with tmp (code, oblig, type, libelle) as (select 'PB_MOTIF', true, 'textarea', 'Motif')
select tv.id, concat(t.code, '__', v.code, '__', tmp.code), tmp.oblig, tmp.type, tmp.libelle
@@ -785,7 +771,6 @@ from tmp,
     unicaen_avis_type_valeur tv
         join unicaen_avis_type t on t.id = tv.avis_type_id and t.code = 'AVIS_ADMISSION_PRESIDENCE'
         join unicaen_avis_valeur v on v.id = tv.avis_valeur_id and v.code in (
                                                                               'AVIS_ADMISSION_VALEUR_INCOMPLET',
                                                                               'AVIS_ADMISSION_VALEUR_POSITIF',
                                                                               'AVIS_ADMISSION_VALEUR_NEGATIF'
         )
@@ -859,7 +844,8 @@ VALUES (207, 'ADMISSION_DIPLOME_BAC', 'Diplôme de Bac + 5 permettant l''accès
        'Photocopie du passeport (ou de la carte d''identité pour les ressortissants européens)'),
       (216, 'ADMISSION_DIPLOMES_TRAVAUX_EXPERIENCE_PRO', 'Diplômes, travaux et expérience professionnelle détaillés'),
       (217, 'ADMISSION_DEMANDE_COTUTELLE', 'Formulaire de demande de cotutelle'),
       (218, 'ADMISSION_DEMANDE_COENCADREMENT', 'Formulaire de demande de co-encadrement')
       (218, 'ADMISSION_DEMANDE_COENCADREMENT', 'Formulaire de demande de co-encadrement'),
       (219, 'ADMISSION_RECAPITULATIF_DOSSIER_SIGNE', 'Récapitulatif du dossier d''admission signé par la direction de l''établissement')
    ON CONFLICT DO NOTHING;

-- GESTION DES RôLES
@@ -974,6 +960,14 @@ with d(ordre, code, lib) as (select 1,
                                    'admission-telecharger-son-document',
                                    'Télécharger un document dans son dossier d''admission'
                             union
                             select 17,
                                    'admission-gerer-recapitulatif-signe-dossier',
                                    'Gérer l''ajout/retrait du récapitulatif signé du dossier d''admission'
                             union
                             select 17,
                                    'admission-acceder-recapitulatif-signe-dossier',
                                    'Accéder au récapitulatif signé du dossier d''admission'
                             union
                             select 19,
                                    'admission-commentaires-ajoutes',
                                    'Notifier l''étudiant des commentaires ajoutés sur son dossier d''admission'
@@ -1062,6 +1056,10 @@ with data(categ, priv) as (select 'admission', 'admission-lister-mes-dossiers-ad
                           union
                           select 'admission', 'admission-telecharger-son-document'
                           union
                           select 'admission', 'admission-gerer-recapitulatif-signe-dossier'
                           union
                           select 'admission', 'admission-acceder-recapitulatif-signe-dossier'
                           union
                           select 'admission', 'admission-commentaires-ajoutes'
                           union
                           select 'admission', 'admission-notifier-dossier-incomplet'
@@ -1116,6 +1114,8 @@ with data(categ, priv) as (select 'admission', 'admission-rechercher-dossiers-ad
                           union
                           select 'admission', 'admission-telecharger-son-document'
                           union
                           select 'admission', 'admission-acceder-recapitulatif-signe-dossier'
                           union
                           select 'admission', 'admission-acceder-commentaires'
                           union
                           select 'admission', 'admission-convention-formation-visualiser'
@@ -1144,6 +1144,8 @@ with data(categ, priv) as (select 'admission', 'admission-afficher-son-dossier-a
                           union
                           select 'admission', 'admission-telecharger-son-document'
                           union
                           select 'admission', 'admission-acceder-recapitulatif-signe-dossier'
                           union
                           select 'admission', 'admission-acceder-commentaires'
                           union
                           select 'admission', 'admission-convention-formation-generer'
@@ -1168,7 +1170,9 @@ with data(categ, priv) as (select 'admission', 'admission-commentaires-ajoutes'
                           union
                           select 'admission', 'admission-verifier'
                           union
                           select 'admission', 'admission-generer-recapitulatif')
                           select 'admission', 'admission-generer-recapitulatif'
                           union
                           select 'admission', 'admission-gerer-recapitulatif-signe-dossier')
select p.id as PRIVILEGE_ID, profil.id as PROFIL_ID
from data
         join PROFIL on profil.ROLE_ID in (
@@ -1205,6 +1209,8 @@ with data(categ, priv) as (select 'admission', 'admission-afficher-son-dossier-a
                           union
                           select 'admission', 'admission-telecharger-son-document'
                           union
                           select 'admission', 'admission-acceder-recapitulatif-signe-dossier'
                           union
                           select 'admission', 'admission-convention-formation-visualiser'
                           union
                           select 'admission', 'admission-convention-formation-generer')
+38 −0
Changes for doc/release-notes/8.0.0/formation/formation.sql: 38 added lines, 0 removed lines.
Original line number Diff line number Diff line
-- Module Formation

alter table formation_inscription
    ADD COLUMN if not exists sursis_enquete bigint;

insert into PRIVILEGE(ID, CATEGORIE_ID, CODE, LIBELLE, ORDRE)
with d(ordre, code, lib) as (select 847,
                                    'accorder_sursis',
                                    'Accorder un sursis concernant la saisie de l''enquête')
select nextval('privilege_id_seq'), cp.id, d.code, d.lib, d.ordre
from d
         join CATEGORIE_PRIVILEGE cp on cp.CODE = 'formation_inscription'
WHERE NOT EXISTS (SELECT 1
                  FROM PRIVILEGE p
                  WHERE p.CODE = d.code);

--
-- Accord de privilèges à des profils.
--
INSERT INTO PROFIL_PRIVILEGE (PRIVILEGE_ID, PROFIL_ID)
with data(categ, priv) as (select 'formation_inscription', 'accorder_sursis')
select p.id as PRIVILEGE_ID, profil.id as PROFIL_ID
from data
         join PROFIL on profil.ROLE_ID in (
                                           'ADMIN_TECH',
                                           'BDD'
    )
         join CATEGORIE_PRIVILEGE cp on cp.CODE = data.categ
         join PRIVILEGE p on p.CATEGORIE_ID = cp.id and p.code = data.priv
where not exists (select * from PROFIL_PRIVILEGE where PRIVILEGE_ID = p.id and PROFIL_ID = profil.id);

insert into ROLE_PRIVILEGE (ROLE_ID, PRIVILEGE_ID)
select p2r.ROLE_ID, pp.PRIVILEGE_ID
from PROFIL_TO_ROLE p2r
         join profil pr on pr.id = p2r.PROFIL_ID
         join PROFIL_PRIVILEGE pp on pp.PROFIL_ID = pr.id
where not exists (select * from role_privilege where role_id = p2r.role_id and privilege_id = pp.privilege_id)
;
 No newline at end of file
+29 −22
Changes for module/Admission/Sql/admission.sql: 29 added lines, 22 removed lines.
Original line number Diff line number Diff line
@@ -220,6 +220,7 @@ create table IF NOT EXISTS admission_inscription
    discipline_doctorat                       varchar(60),
    specialite_doctorat                       varchar(255),
    composante_doctorat_id                    bigint REFERENCES composante_ens (id),
    composante_doctorat_libelle               varchar(255),
    ecole_doctorale_id                        bigint REFERENCES ecole_doct (id),
    unite_recherche_id                        bigint REFERENCES unite_rech (id),
    etablissement_inscription_id              bigint REFERENCES etablissement (id),
@@ -460,12 +461,13 @@ WHERE avis_id IN (SELECT id
                                           FROM unicaen_avis ua
                                                    JOIN unicaen_avis_valeur uav ON ua.avis_valeur_id = uav.id
                                           WHERE uav.code LIKE 'AVIS_ADMISSION_%'));
DELETE
FROM unicaen_avis
WHERE avis_valeur_id IN (SELECT ua.avis_valeur_id
DELETE FROM unicaen_avis
WHERE avis_valeur_id IN (
    SELECT ua.avis_valeur_id
    FROM unicaen_avis ua
             JOIN unicaen_avis_valeur uav ON ua.avis_valeur_id = uav.id
                         WHERE uav.code LIKE 'AVIS_ADMISSION_%');
    WHERE uav.code LIKE 'AVIS_ADMISSION_%'
);
DELETE
FROM unicaen_avis_type_valeur_complem
WHERE code LIKE 'AVIS_ADMISSION_%';
@@ -745,26 +747,11 @@ from unicaen_avis_type t,
     unicaen_avis_valeur v
where t.code = 'AVIS_ADMISSION_PRESIDENCE'
  and v.code in (
                 'AVIS_ADMISSION_VALEUR_INCOMPLET',
                 'AVIS_ADMISSION_VALEUR_POSITIF',
                 'AVIS_ADMISSION_VALEUR_NEGATIF'
    )
    ON CONFLICT DO NOTHING;

insert into unicaen_avis_type_valeur_complem (avis_type_valeur_id, code, obligatoire_un_au_moins, type, libelle)
with tmp (code, oblig, type, libelle) as (select 'PB_INFOS',
                                                 false,
                                                 'information',
                                                 'Si le dossier d''admission est jugé incomplet, l''étudiant devra reprendre le circuit de signatures depuis le début...')
select tv.id, concat(t.code, '__', v.code, '__', tmp.code), tmp.oblig, tmp.type, tmp.libelle
from tmp,
     unicaen_avis_type_valeur tv
         join unicaen_avis_type t on t.id = tv.avis_type_id and t.code = 'AVIS_ADMISSION_PRESIDENCE'
         join unicaen_avis_valeur v on v.id = tv.avis_valeur_id and v.code in (
         'AVIS_ADMISSION_VALEUR_INCOMPLET'
         )
    ON CONFLICT DO NOTHING;

insert into unicaen_avis_type_valeur_complem (avis_type_valeur_id, code, obligatoire_un_au_moins, type, libelle)
with tmp (code, oblig, type, libelle) as (select 'PB_MOTIF', true, 'textarea', 'Motif')
select tv.id, concat(t.code, '__', v.code, '__', tmp.code), tmp.oblig, tmp.type, tmp.libelle
@@ -784,7 +771,6 @@ from tmp,
     unicaen_avis_type_valeur tv
         join unicaen_avis_type t on t.id = tv.avis_type_id and t.code = 'AVIS_ADMISSION_PRESIDENCE'
         join unicaen_avis_valeur v on v.id = tv.avis_valeur_id and v.code in (
                                                                               'AVIS_ADMISSION_VALEUR_INCOMPLET',
                                                                               'AVIS_ADMISSION_VALEUR_POSITIF',
                                                                               'AVIS_ADMISSION_VALEUR_NEGATIF'
         )
@@ -858,7 +844,8 @@ VALUES (207, 'ADMISSION_DIPLOME_BAC', 'Diplôme de Bac + 5 permettant l''accès
        'Photocopie du passeport (ou de la carte d''identité pour les ressortissants européens)'),
       (216, 'ADMISSION_DIPLOMES_TRAVAUX_EXPERIENCE_PRO', 'Diplômes, travaux et expérience professionnelle détaillés'),
       (217, 'ADMISSION_DEMANDE_COTUTELLE', 'Formulaire de demande de cotutelle'),
       (218, 'ADMISSION_DEMANDE_COENCADREMENT', 'Formulaire de demande de co-encadrement')
       (218, 'ADMISSION_DEMANDE_COENCADREMENT', 'Formulaire de demande de co-encadrement'),
       (219, 'ADMISSION_RECAPITULATIF_DOSSIER_SIGNE', 'Récapitulatif du dossier d''admission signé par la direction de l''établissement')
    ON CONFLICT DO NOTHING;

-- GESTION DES RôLES
@@ -973,6 +960,14 @@ with d(ordre, code, lib) as (select 1,
                                    'admission-telecharger-son-document',
                                    'Télécharger un document dans son dossier d''admission'
                             union
                             select 17,
                                    'admission-gerer-recapitulatif-signe-dossier',
                                    'Gérer l''ajout/retrait du récapitulatif signé du dossier d''admission'
                             union
                             select 17,
                                    'admission-acceder-recapitulatif-signe-dossier',
                                    'Accéder au récapitulatif signé du dossier d''admission'
                             union
                             select 19,
                                    'admission-commentaires-ajoutes',
                                    'Notifier l''étudiant des commentaires ajoutés sur son dossier d''admission'
@@ -1061,6 +1056,10 @@ with data(categ, priv) as (select 'admission', 'admission-lister-mes-dossiers-ad
                           union
                           select 'admission', 'admission-telecharger-son-document'
                           union
                           select 'admission', 'admission-gerer-recapitulatif-signe-dossier'
                           union
                           select 'admission', 'admission-acceder-recapitulatif-signe-dossier'
                           union
                           select 'admission', 'admission-commentaires-ajoutes'
                           union
                           select 'admission', 'admission-notifier-dossier-incomplet'
@@ -1115,6 +1114,8 @@ with data(categ, priv) as (select 'admission', 'admission-rechercher-dossiers-ad
                           union
                           select 'admission', 'admission-telecharger-son-document'
                           union
                           select 'admission', 'admission-acceder-recapitulatif-signe-dossier'
                           union
                           select 'admission', 'admission-acceder-commentaires'
                           union
                           select 'admission', 'admission-convention-formation-visualiser'
@@ -1143,6 +1144,8 @@ with data(categ, priv) as (select 'admission', 'admission-afficher-son-dossier-a
                           union
                           select 'admission', 'admission-telecharger-son-document'
                           union
                           select 'admission', 'admission-acceder-recapitulatif-signe-dossier'
                           union
                           select 'admission', 'admission-acceder-commentaires'
                           union
                           select 'admission', 'admission-convention-formation-generer'
@@ -1167,7 +1170,9 @@ with data(categ, priv) as (select 'admission', 'admission-commentaires-ajoutes'
                           union
                           select 'admission', 'admission-verifier'
                           union
                           select 'admission', 'admission-generer-recapitulatif')
                           select 'admission', 'admission-generer-recapitulatif'
                           union
                           select 'admission', 'admission-gerer-recapitulatif-signe-dossier')
select p.id as PRIVILEGE_ID, profil.id as PROFIL_ID
from data
         join PROFIL on profil.ROLE_ID in (
@@ -1204,6 +1209,8 @@ with data(categ, priv) as (select 'admission', 'admission-afficher-son-dossier-a
                           union
                           select 'admission', 'admission-telecharger-son-document'
                           union
                           select 'admission', 'admission-acceder-recapitulatif-signe-dossier'
                           union
                           select 'admission', 'admission-convention-formation-visualiser'
                           union
                           select 'admission', 'admission-convention-formation-generer')
+1 −12
Changes for module/Admission/config/module.config.php: 1 added line, 12 removed lines.
Original line number Diff line number Diff line
@@ -5,24 +5,14 @@ namespace Admission;

use Admission\Assertion\AdmissionAssertion;
use Admission\Assertion\AdmissionAssertionFactory;
use Admission\Assertion\Validation\AdmissionValidationAssertion;
use Admission\Assertion\Validation\AdmissionValidationAssertionFactory;
use Admission\Config\ModuleConfig;
use Admission\Config\ModuleConfigFactory;
use Admission\Controller\AdmissionController;
use Admission\Controller\AdmissionControllerFactory;
use Admission\Controller\AdmissionRechercheController;
use Admission\Controller\AdmissionRechercheControllerFactory;
use Admission\Controller\Validation\AdmissionValidationController;
use Admission\Controller\Validation\AdmissionValidationControllerFactory;
use Admission\Event\AdmissionEventListener;
use Admission\Event\AdmissionEventListenerFactory;
use Admission\Event\Validation\AdmissionValidationEventListener;
use Admission\Event\Validation\AdmissionValidationEventListenerFactory;
use Admission\Form\Admission\AdmissionForm;
use Admission\Form\Admission\AdmissionFormFactory;
use Admission\Form\ConventionFormationDoctorale\ConventionFormationDoctoraleForm;
use Admission\Form\ConventionFormationDoctorale\ConventionFormationDoctoraleFormFactory;
use Admission\Form\Fieldset\Document\DocumentFieldset;
use Admission\Form\Fieldset\Document\DocumentFieldsetFactory;
use Admission\Form\Fieldset\Etudiant\EtudiantFieldset;
@@ -54,8 +44,6 @@ use Admission\Service\Admission\AdmissionRechercheService;
use Admission\Service\Admission\AdmissionRechercheServiceFactory;
use Admission\Service\Admission\AdmissionService;
use Admission\Service\Admission\AdmissionServiceFactory;
use Admission\Service\ConventionFormationDoctorale\ConventionFormationDoctoraleService;
use Admission\Service\ConventionFormationDoctorale\ConventionFormationDoctoraleServiceFactory;
use Admission\Service\Document\DocumentService;
use Admission\Service\Document\DocumentServiceFactory;
use Admission\Service\Etudiant\EtudiantService;
@@ -122,6 +110,7 @@ return array(
                            AdmissionPrivileges::ADMISSION_NOTIFIER_COMMENTAIRES_AJOUTES,
                            AdmissionPrivileges::ADMISSION_NOTIFIER_DOSSIER_INCOMPLET,
                            AdmissionPrivileges::ADMISSION_GENERER_RECAPITULATIF,
                            AdmissionPrivileges::ADMISSION_ACCEDER_RECAPITULATIF_DOSSIER,
                            AdmissionPrivileges::ADMISSION_AFFICHER_SON_DOSSIER_ADMISSION_DANS_LISTE
                        ],
                        'resources'  => ['Admission'],
+2 −1
Changes for module/Admission/config/others/document.config.php: 2 added lines, 1 removed line.
Original line number Diff line number Diff line
@@ -6,7 +6,6 @@ use Admission\Assertion\AdmissionAssertion;
use Admission\Controller\Document\DocumentController;
use Admission\Controller\Document\DocumentControllerFactory;
use Admission\Provider\Privilege\AdmissionPrivileges;
use Laminas\Router\Http\Literal;
use Laminas\Router\Http\Segment;
use UnicaenAuth\Guard\PrivilegeController;

@@ -33,6 +32,7 @@ return array(
                    'privileges' => [
                        AdmissionPrivileges::ADMISSION_TELEVERSER_TOUT_DOCUMENT,
                        AdmissionPrivileges::ADMISSION_TELEVERSER_SON_DOCUMENT,
                        AdmissionPrivileges::ADMISSION_GERER_RECAPITULATIF_DOSSIER
                    ],
                    'assertion' => AdmissionAssertion::class,
                ],
@@ -44,6 +44,7 @@ return array(
                    'privileges' => [
                        AdmissionPrivileges::ADMISSION_SUPPRIMER_TOUT_DOCUMENT,
                        AdmissionPrivileges::ADMISSION_SUPPRIMER_SON_DOCUMENT,
                        AdmissionPrivileges::ADMISSION_GERER_RECAPITULATIF_DOSSIER
                    ],
                    'assertion' => AdmissionAssertion::class,
                ],
Loading