Commit 55d7a6b0 authored by Jean-Philippe Metivier's avatar Jean-Philippe Metivier
Browse files

Push

parent 56f3242d
Loading
Loading
Loading
Loading
+80 −0
Changes for documentation/vue_SIRH/V_EMC2_STRUCTURE.sql: 80 added lines, 0 removed lines.
Original line number Diff line number Diff line
CREATE OR REPLACE VIEW V_STRUCTURE AS
(
WITH multi_heritage AS
         (SELECT STRUCTURE.ID                   id,
                 LEVEL                          niveau,
                 STRUCTURE_PARENT.PARENT_ID     parent_id,
                 CONNECT_BY_ROOT STRUCTURE.ID   racine_id, CONNECT_BY_ROOT STRUCTURE.CODE racine_code, SYS_CONNECT_BY_PATH(LIBELLE_COURT, ' > ') chemin,
                 SYS_CONNECT_BY_PATH(ID, ' > ') chemin_id
          FROM STRUCTURE
                   LEFT JOIN STRUCTURE_PARENT ON STRUCTURE.ID = STRUCTURE_PARENT.STRUCTURE_ID
    CONNECT BY NOCYCLE
    PRIOR STRUCTURE.ID = STRUCTURE_PARENT.PARENT_ID
START WITH STRUCTURE_PARENT.PARENT_ID IS NULL
    )
SELECT STRUCTURE.ID,
       STRUCTURE.CODE,
       STRUCTURE.SIGLE,
       STRUCTURE.LIBELLE_COURT,
       STRUCTURE.LIBELLE_LONG,
       STRUCTURE.LIBELLE_COMMUNICATION,
       STRUCTURE.SITE_URL,
       STRUCTURE.EMAIL_GENERIQUE,
       STRUCTURE.CODE_UAI,
       STRUCTURE.LOGO,
       STRUCTURE.TYPE_ID,
       STRUCTURE.TYPE_SUPANN,
       STRUCTURE.AFFICHAGE_ANNUAIRE,
       STRUCTURE_RECHERCHE.ID                                                          STRUCTURE_RECHERCHE_ID,
       STRUCTURE_RECHERCHE_POLE.LIBELLE                                                STRUCTURE_RECHERCHE_POLE,
       STRUCTURE.LOCAL_PRINCIPAL_ID,
       heritage.racine_id                                                              RACINE_ID,
       REPLACE(regexp_substr(heritage.chemin_id, ' > [^( > )]+( > |$)', 2), ' > ', '') NIV2_ID,
       heritage.parent_id                                                              PARENT_ID,
       heritage.niveau                                                                 NIVEAU,
       CASE
           WHEN heritage.racine_code = 'UNIV'
               THEN 1
           ELSE 0 END                                                                  INTERNE,
       STRUCTURE.DATE_OUVERTURE,
       STRUCTURE.DATE_FERMETURE,
       STRUCTURE.CENTRE_FINANCIER,
       heritage.chemin                                                                 CHEMIN
FROM STRUCTURE
         LEFT JOIN STRUCTURE_RECHERCHE ON STRUCTURE.ID = STRUCTURE_RECHERCHE.STRUCTURE_ID
         LEFT JOIN STRUCTURE_RECHERCHE_POLE ON STRUCTURE_RECHERCHE.POLE_RATTACHEMENT_ID = STRUCTURE_RECHERCHE_POLE.ID
         LEFT JOIN
     (SELECT DISTINCT id,
                      first_value(niveau)
                                  OVER (PARTITION BY id ORDER BY racine_id ASC RANGE UNBOUNDED PRECEDING)         niveau,
                      first_value(parent_id)
                                  OVER (PARTITION BY id ORDER BY racine_id ASC RANGE UNBOUNDED PRECEDING)         parent_id,
                      first_value(racine_id)
                                  OVER (PARTITION BY id ORDER BY racine_id ASC RANGE UNBOUNDED PRECEDING)         racine_id,
                      first_value(racine_code)
                                  OVER (PARTITION BY id ORDER BY racine_id ASC RANGE UNBOUNDED PRECEDING)         racine_code,
                      first_value(chemin)
                                  OVER (PARTITION BY id ORDER BY racine_id ASC RANGE UNBOUNDED PRECEDING)         chemin,
                      first_value(chemin_id)
                                  OVER (PARTITION BY id ORDER BY racine_id ASC RANGE UNBOUNDED PRECEDING)         chemin_id
      FROM multi_heritage
      ORDER BY id ASC) heritage ON STRUCTURE.ID = heritage.id
WHERE HISTO_DESTRUCTION IS NULL
ORDER BY STRUCTURE.ID ASC
);

CREATE OR REPLACE VIEW V_EMC2_STRUCTURE AS (
   select
       ID,
       LIBELLE_COURT,
       LIBELLE_LONG,
       CODE,
       SIGLE,
       TYPE_ID,
       TO_CHAR(DATE_OUVERTURE,'YYYY-MM-DD HH:MM:SS') AS DATE_OUVERTURE,
       TO_CHAR(DATE_FERMETURE,'YYYY-MM-DD HH:MM:SS') AS DATE_FERMETURE,
       PARENT_ID,
       NIV2_ID,
       EMAIL_GENERIQUE
   FROM V_STRUCTURE;
);
 No newline at end of file
+21 −13
Changes for documentation/vue_SIRH/V_EMC2_STRUCTURE_RESPONSABLE.sql: 21 added lines, 13 removed lines.
Original line number Diff line number Diff line
-- ---------------------------------------------
-- RESPONSABILITE DE STRUCTURE -----------------
-- ---------------------------------------------

-- Requete remontant les fonctions
SELECT F.ID, MIN(FL.LIBELLE)
FROM FONCTION F
JOIN FONCTION_LIBELLE FL on F.ID = FL.FONCTION_ID
GROUP BY F.ID
;

-- Creation de la vue contenant les fonctions eligibles
CREATE OR REPLACE VIEW V_EMC2_FONCTION_RESPONSABLE AS
(
    SELECT F.ID
    SELECT F.ID, MAX(F.CODE) AS CODE, MIN(FL.LIBELLE) AS LIBELLE_1, MAX(FL.LIBELLE) AS LIBELLE_2
    FROM FONCTION F
    WHERE F.ID IN (1, 22, 27, 28, 7, 19, 11, 16, 17, 141)
             JOIN FONCTION_LIBELLE FL on FL.FONCTION_ID = F.ID
    WHERE F.ID IN (
        -- Directeur                                 et Sous-fonction
                   1,                                   2, 3, 4, 5, 121,
        -- Responsable de bureau
                   7,
        -- Directeur adjoint                         et Sous-fonction
                   11, 12,
        -- Directeur Général des Services            et Sous-fonction
                   16, 17, 141,
        -- Responsable                               et Sous-fonction
                   19, 20, 21, 161,
        -- Responsable Adminsitratif                 et Sous-fonction
                   22, 23, 24, 25, 26,
        -- Agent comptable                           et Sous-fonction
                   27, 28
    )
GROUP BY F.ID
    );

-- Requete recuperant les individus ayant une de ces fonctions "actives"
SELECT *
FROM INDIVIDU_FONCTION IFO
WHERE IFO.FONCTION_ID IN (SELECT * FROM V_EMC2_FONCTION_RESPONSABLE)
WHERE IFO.FONCTION_ID IN (SELECT ID FROM V_EMC2_FONCTION_RESPONSABLE)
  AND DATE_DEBUT <= sysdate
  AND (DATE_FIN IS NULL OR DATE_FIN >= sysdate)
  AND IFO.HISTO_DESTRUCTION IS NULL
@@ -37,7 +45,7 @@ CREATE OR REPLACE VIEW V_EMC2_STRUCTURE_RESPONSABLE AS
           TO_CHAR(IFO.DATE_FIN, 'YYYY-MM-DD HH:MM:SS')   AS DATE_FIN
    FROM INDIVIDU_FONCTION IFO
    join V_EMC2_STRUCTURE VS ON VS.ID = IFO.STRUCTURE_ID
    WHERE IFO.FONCTION_ID IN (SELECT * FROM V_EMC2_FONCTION_RESPONSABLE)
    WHERE IFO.FONCTION_ID IN (SELECT ID FROM V_EMC2_FONCTION_RESPONSABLE)
      AND IFO.HISTO_DESTRUCTION IS NULL
      AND IFO.DATE_DEBUT <= sysdate
      AND (IFO.DATE_FIN IS NULL OR IFO.DATE_FIN >= sysdate)
+1 −1
Changes for module/Application/src/Application/Entity/Db/Agent.php: 1 added line, 1 removed line.
Original line number Diff line number Diff line
@@ -211,7 +211,7 @@ class Agent implements
        $prenom = $this->getPrenom();
        $prenom = str_replace("É", "é", $prenom);
        $prenom = str_replace("È", "è", $prenom);
        return ucwords(strtolower($prenom), "-") . ' ' . $this->getNomUsuel();
        return ucwords(strtolower($prenom), "- ") . ' ' . ($this->getNomUsuel())??('<em>'.$this->getNomFamille().'</em>');

    }