Commit 7c18ec4d authored by joriot221's avatar joriot221
Browse files

Mise en place d'un setting pour les avenants

parent f0325fc7
Loading
Loading
Loading
Loading
+35 −56
Changes for data/ddl/package/UNICAEN_TBL/body.sql: 35 added lines, 56 removed lines.
Original line number Diff line number Diff line
@@ -1896,90 +1896,90 @@ CREATE OR REPLACE PACKAGE BODY "UNICAEN_TBL" AS
          CASE WHEN p.heures > COALESCE(p.PLAFOND,ps.heures,pa.heures,0) + COALESCE(pd.heures, 0) + 0.05 THEN 1 ELSE 0 END depassement
        FROM
          (
          SELECT 2 PLAFOND_ID, NULL PLAFOND, p.* FROM (
          SELECT 1 PLAFOND_ID, NULL PLAFOND, p.* FROM (
            SELECT
                i.annee_id                          annee_id,
                fr.type_volume_horaire_id           type_volume_horaire_id,
                i.id                                intervenant_id,
                fr.total - fr.heures_compl_fc_majorees heures
                fr.heures_compl_fc_majorees         heures
              /*  ROUND( (COALESCE(si.plafond_hc_remu_fc,0) - COALESCE(i.montant_indemnite_fc,0)) / a.taux_hetd, 2 ) plafond*/

              FROM
                     intervenant                i
                JOIN annee                      a ON a.id = i.annee_id
                JOIN statut                    si ON si.id = i.statut_id
                JOIN etat_volume_horaire      evh ON evh.code = ''saisi''
                JOIN formule_resultat          fr ON fr.intervenant_id = i.id AND fr.etat_volume_horaire_id = evh.id
                JOIN statut                    si ON si.id = i.statut_id
            ) p

            UNION ALL

          SELECT 5 PLAFOND_ID, NULL PLAFOND, p.* FROM (
          SELECT 2 PLAFOND_ID, NULL PLAFOND, p.* FROM (
            SELECT
                i.annee_id                             annee_id,
                fr.type_volume_horaire_id              type_volume_horaire_id,
                fr.intervenant_id                   intervenant_id,
                fr.heures_compl_fi + fr.heures_compl_fc + fr.heures_compl_fa + fr.heures_compl_referentiel heures
                i.id                                   intervenant_id,
                fr.total - fr.heures_compl_fc_majorees heures
              FROM
                intervenant                     i
                JOIN statut                    si ON si.id = i.statut_id
                JOIN etat_volume_horaire      evh ON evh.code = ''saisi''
                JOIN formule_resultat          fr ON fr.intervenant_id = i.id AND fr.etat_volume_horaire_id = evh.id
                JOIN statut                    si ON si.id = i.statut_id
            ) p

            UNION ALL

          SELECT 4 PLAFOND_ID, NULL PLAFOND, p.* FROM (
          SELECT 8 PLAFOND_ID, NULL PLAFOND, p.* FROM (
            SELECT
                i.annee_id                annee_id,
                fr.type_volume_horaire_id type_volume_horaire_id,
                i.id                      intervenant_id,
                fr.total - fr.heures_compl_fc_majorees heures
                SUM(frvh.heures_compl_fi) heures
              FROM
                intervenant                     i
                JOIN etat_volume_horaire      evh ON evh.code = ''saisi''
                JOIN formule_resultat          fr ON fr.intervenant_id = i.id AND fr.etat_volume_horaire_id = evh.id
                JOIN formule_resultat_vh     frvh ON frvh.formule_resultat_id = fr.id
                JOIN volume_horaire            vh ON vh.id = frvh.volume_horaire_id
                JOIN type_intervention         ti ON ti.id = vh.type_intervention_id
                JOIN statut                    si ON si.id = i.statut_id
              WHERE
                ti.regle_foad = 0
              GROUP BY
                fr.type_volume_horaire_id,
                i.annee_id,
                i.id,
                i.statut_id
            ) p

            UNION ALL

          SELECT 1 PLAFOND_ID, NULL PLAFOND, p.* FROM (
          SELECT 4 PLAFOND_ID, NULL PLAFOND, p.* FROM (
            SELECT
                i.annee_id                             annee_id,
                fr.type_volume_horaire_id              type_volume_horaire_id,
                i.id                                   intervenant_id,
                fr.heures_compl_fc_majorees         heures
              /*  ROUND( (COALESCE(si.plafond_hc_remu_fc,0) - COALESCE(i.montant_indemnite_fc,0)) / a.taux_hetd, 2 ) plafond*/

                fr.total - fr.heures_compl_fc_majorees heures
              FROM
                intervenant                     i
                JOIN annee                      a ON a.id = i.annee_id
                JOIN statut                    si ON si.id = i.statut_id
                JOIN etat_volume_horaire      evh ON evh.code = ''saisi''
                JOIN formule_resultat          fr ON fr.intervenant_id = i.id AND fr.etat_volume_horaire_id = evh.id
                JOIN statut                    si ON si.id = i.statut_id
            ) p

            UNION ALL

          SELECT 8 PLAFOND_ID, NULL PLAFOND, p.* FROM (
          SELECT 5 PLAFOND_ID, NULL PLAFOND, p.* FROM (
            SELECT
                i.annee_id                          annee_id,
                fr.type_volume_horaire_id           type_volume_horaire_id,
                i.id                      intervenant_id,
                SUM(frvh.heures_compl_fi) heures
                fr.intervenant_id                   intervenant_id,
                fr.heures_compl_fi + fr.heures_compl_fc + fr.heures_compl_fa + fr.heures_compl_referentiel heures
              FROM
                     intervenant                i
                JOIN statut                    si ON si.id = i.statut_id
                JOIN etat_volume_horaire      evh ON evh.code = ''saisi''
                JOIN formule_resultat          fr ON fr.intervenant_id = i.id AND fr.etat_volume_horaire_id = evh.id
                JOIN formule_resultat_vh     frvh ON frvh.formule_resultat_id = fr.id
                JOIN volume_horaire            vh ON vh.id = frvh.volume_horaire_id
                JOIN type_intervention         ti ON ti.id = vh.type_intervention_id
                JOIN statut                    si ON si.id = i.statut_id
              WHERE
                ti.regle_foad = 0
              GROUP BY
                fr.type_volume_horaire_id,
                i.annee_id,
                i.id,
                i.statut_id
            ) p
          ) p
          JOIN intervenant i ON i.id = p.intervenant_id
@@ -2072,7 +2072,7 @@ CREATE OR REPLACE PACKAGE BODY "UNICAEN_TBL" AS
          CASE WHEN p.heures > COALESCE(p.PLAFOND,ps.heures,pa.heures,0) + COALESCE(pd.heures, 0) + 0.05 THEN 1 ELSE 0 END depassement
        FROM
          (
          SELECT 6 PLAFOND_ID, NULL PLAFOND, p.* FROM (
          SELECT 3 PLAFOND_ID, NULL PLAFOND, p.* FROM (
            SELECT
                i.annee_id                        annee_id,
                vhr.type_volume_horaire_id        type_volume_horaire_id,
@@ -2082,18 +2082,15 @@ CREATE OR REPLACE PACKAGE BODY "UNICAEN_TBL" AS
              FROM
                     service_referentiel       sr
                JOIN intervenant                i ON i.id = sr.intervenant_id
                JOIN fonction_referentiel      frf ON frf.id = sr.fonction_id
                JOIN fonction_referentiel      fr ON fr.id = frf.parent_id
                JOIN fonction_referentiel      fr ON fr.id = sr.fonction_id
                JOIN volume_horaire_ref       vhr ON vhr.service_referentiel_id = sr.id AND vhr.histo_destruction IS NULL
              WHERE
                sr.histo_destruction IS NULL
              GROUP BY
                i.annee_id, vhr.type_volume_horaire_id, i.id, fr.id
            ) p

              UNION ALL

          SELECT 3 PLAFOND_ID, NULL PLAFOND, p.* FROM (
              SELECT
                i.annee_id                 annee_id,
                vhr.type_volume_horaire_id type_volume_horaire_id,
@@ -2103,15 +2100,18 @@ CREATE OR REPLACE PACKAGE BODY "UNICAEN_TBL" AS
              FROM
                service_referentiel       sr
                JOIN intervenant i ON i.id = sr.intervenant_id
                JOIN fonction_referentiel      fr ON fr.id = sr.fonction_id
                JOIN fonction_referentiel      frf ON frf.id = sr.fonction_id
                JOIN fonction_referentiel      fr ON fr.id = frf.parent_id
                JOIN volume_horaire_ref       vhr ON vhr.service_referentiel_id = sr.id AND vhr.histo_destruction IS NULL
              WHERE
                sr.histo_destruction IS NULL
              GROUP BY
                i.annee_id, vhr.type_volume_horaire_id, i.id, fr.id
            ) p

            UNION ALL

          SELECT 6 PLAFOND_ID, NULL PLAFOND, p.* FROM (
            SELECT
                i.annee_id                 annee_id,
                vhr.type_volume_horaire_id type_volume_horaire_id,
@@ -2242,27 +2242,6 @@ CREATE OR REPLACE PACKAGE BODY "UNICAEN_TBL" AS
              GROUP BY
                i.annee_id, vhr.type_volume_horaire_id, i.id, s.id
            ) p

            UNION ALL

          SELECT 25 PLAFOND_ID, NULL PLAFOND, p.* FROM (
            SELECT
                      i.annee_id                 annee_id,
                      vh.type_volume_horaire_id  type_volume_horaire_id,
                      i.id                       intervenant_id,
                      str.id                     structure_id,
                      SUM(vh.heures)             heures
                    FROM
                      service                    s
                      JOIN element_pedagogique  ep ON ep.id = s.element_pedagogique_id
                      JOIN intervenant           i ON i.id = s.intervenant_id
                      JOIN structure           str ON str.id = ep.structure_id
                      JOIN volume_horaire       vh ON vh.service_id = s.id AND vh.histo_destruction IS NULL
                    WHERE
                      s.histo_destruction IS NULL
                    GROUP BY
                      i.annee_id, vh.type_volume_horaire_id, i.id, str.id
            ) p
          ) p
          JOIN intervenant i ON i.id = p.intervenant_id
          LEFT JOIN plafond_application pa ON pa.plafond_id = p.plafond_id AND p.annee_id = pa.annee_id
+71 −71
Changes for data/ddl/sequence.php: 71 added lines, 71 removed lines.
Original line number Diff line number Diff line
@@ -5,93 +5,36 @@
return [
    'ADRESSE_INTERVENANT_ID_SEQ',
    'ADRESSE_STRUCTURE_ID_SEQ',
    'AFFECTATION_ID_SEQ',
    'AFFECTATION_RECHERCHE_ID_SEQ',
    'AGREMENT_ID_SEQ',
    'CAMPAGNE_SAISIE_ID_SEQ',
    'CATEGORIE_PRIVILEGE_ID_SEQ',
    'CC_ACTIVITE_ID_SEQ',
    'CENTRE_COUT_EP_ID_SEQ',
    'CENTRE_COUT_ID_SEQ',
    'CENTRE_COUT_STRUCTURE_ID_SEQ',
    'CHEMIN_PEDAGOGIQUE_ID_SEQ',
    'CIVILITE_ID_SEQ',
    'CONTRAT_FICHIER_ID_SEQ',
    'CONTRAT_ID_SEQ',
    'CORPS_ID_SEQ',
    'DEPARTEMENT_ID_SEQ',
    'DISCIPLINE_ID_SEQ',
    'DISCIPLINE_MAPPING_ID_SEQ',
    'DOMAINE_FONCTIONNEL_ID_SEQ',
    'DOSSIER_ID_SEQ',
    'DOTATION_ID_SEQ',
    'EFFECTIFS_ETAPE_ID_SEQ',
    'EFFECTIFS_ID_SEQ',
    'ELEMENT_MODULATEUR_ID_SEQ',
    'ELEMENT_PEDAGOGIQUE_ID_SEQ',
    'ELEMENT_TAUX_REGIMES_ID_SEQ',
    'EMPLOYEUR_ID_SEQ',
    'ETABLISSEMENT_ID_SEQ',
    'ETAPE_ID_SEQ',
    'ETAT_SORTIE_ID_SEQ',
    'FICHIER_ID_SEQ',
    'FONCTION_REFERENTIEL_ID_SEQ',
    'FORMULE_RESULTAT_ID_SEQ',
    'FORMULE_RESULTAT_SERREF_ID_SEQ',
    'FORMULE_RESULTAT_SERVIC_ID_SEQ',
    'FORMULE_RESULTAT_VH_ID_SEQ',
    'FORMULE_RESULTAT_VH_REF_ID_SEQ',
    'FTEST_INTERVENANT_ID_SEQ',
    'FTEST_STRUCTURE_ID_SEQ',
    'FTEST_VOLUME_HORAIRE_ID_SEQ',
    'GRADE_ID_SEQ',
    'GROUPE_ID_SEQ',
    'GROUPE_TYPE_FORMATION_ID_SEQ',
    'HISTO_INTERVENANT_SERVI_ID_SEQ',
    'INDICATEUR_ID_SEQ',
    'INDIC_MODIF_DOSSIER_ID_SEQ',
    'INTERVENANT_DOSSIER_ID_SEQ',
    'INTERVENANT_ID_SEQ',
    'INTERVENANT_PAR_DEFAUT_ID_SEQ',
    'INTERVENANT_SAISIE_ID_SEQ',
    'LIEN_ID_SEQ',
    'MISE_EN_PAIEMENT_ID_SEQ',
    'MODELE_CONTRAT_ID_SEQ',
    'MODIFICATION_SERVICE_DU_ID_SEQ',
    'MODULATEUR_ID_SEQ',
    'MOTIF_MODIFICATION_SERV_ID_SEQ',
    'MOTIF_NON_PAIEMENT_ID_SEQ',
    'NOEUD_ID_SEQ',
    'NOTE_ID_SEQ',
    'NOTIFICATION_INDICATEUR_ID_SEQ',
    'PARAMETRE_ID_SEQ',
    'PIECE_JOINTE_FICHIER_ID_SEQ',
    'PAYS_ID_SEQ',
    'PERIMETRE_ID_SEQ',
    'PERIODE_ID_SEQ',
    'PIECE_JOINTE_FICHIER_ID_SEQ',
    'PIECE_JOINTE_ID_SEQ',
    'PLAFOND_ID_SEQ',
    'PLAFOND_APPLICATION_ID_SEQ',
    'PLAFOND_DEROGATION_ID_SEQ',
    'PLAFOND_ETAT_ID_SEQ',
    'PLAFOND_ID_SEQ',
    'PLAFOND_REFERENTIEL_ID_SEQ',
    'PLAFOND_STATUT_ID_SEQ',
    'PLAFOND_STRUCTURE_ID_SEQ',
    'PRIVILEGE_ID_SEQ',
    'REGLE_STRUCTURE_VALIDAT_ID_SEQ',
    'ROLE_ID_SEQ',
    'ROLE_PRIVILEGE_ID_SEQ',
    'SCENARIO_ID_SEQ',
    'SCENARIO_LIEN_ID_SEQ',
    'SCENARIO_NOEUD_EFFECTIF_ID_SEQ',
    'SCENARIO_NOEUD_ID_SEQ',
    'SCENARIO_NOEUD_EFFECTIF_ID_SEQ',
    'SCENARIO_NOEUD_SEUIL_ID_SEQ',
    'SERVICE_ID_SEQ',
    'SERVICE_REFERENTIEL_ID_SEQ',
    'SEUIL_CHARGE_ID_SEQ',
    'SOURCE_ID_SEQ',
    'STATUT_ID_SEQ',
    'STATUT_INTERVENANT_MAPP_ID_SEQ',
    'STRUCTURE_ID_SEQ',
    'SYNC_LOG_ID_SEQ',
    'TAUX_HORAIRE_HETD_ID_SEQ',
@@ -100,15 +43,13 @@ return [
    'TBL_CHARGENS_SEUILS_DEF_ID_SEQ',
    'TBL_CLOTURE_REALISE_ID_SEQ',
    'TBL_CONTRAT_ID_SEQ',
    'TBL_DEMS_ID_SEQ',
    'TBL_DMEP_LIQUIDATION_ID_SEQ',
    'TBL_DOSSIER_ID_SEQ',
    'TBL_LIEN_ID_SEQ',
    'TBL_NOEUD_ID_SEQ',
    'TBL_PAIEMENT_ID_SEQ',
    'TBL_PIECE_JOINTE_ID_SEQ',
    'TBL_PIECE_JOINTE_DEMAND_ID_SEQ',
    'TBL_PIECE_JOINTE_FOURNI_ID_SEQ',
    'TBL_PIECE_JOINTE_ID_SEQ',
    'TBL_PLAFOND_ELEMENT_ID_SEQ',
    'TBL_PLAFOND_INTERVENANT_ID_SEQ',
    'TBL_PLAFOND_REFERENTIEL_ID_SEQ',
@@ -120,19 +61,17 @@ return [
    'TBL_VALIDATION_REFERENT_ID_SEQ',
    'TBL_WORKFLOW_ID_SEQ',
    'TEST_BUFFER_ID_SEQ',
    'TPJS_NUM_REGLE_SEQ',
    'TYPE_AGREMENT_ID_SEQ',
    'TYPE_CONTRAT_ID_SEQ',
    'TYPE_DOTATION_ID_SEQ',
    'TYPE_FORMATION_ID_SEQ',
    'TYPE_HEURES_ID_SEQ',
    'TYPE_INTERVENANT_ID_SEQ',
    'TYPE_INTERVENTION_EP_ID_SEQ',
    'TYPE_INTERVENTION_ID_SEQ',
    'TYPE_INTERVENTION_EP_ID_SEQ',
    'TYPE_INTERVENTION_STATU_ID_SEQ',
    'TYPE_INTERVENTION_STRUC_ID_SEQ',
    'TYPE_MODULATEUR_EP_ID_SEQ',
    'TYPE_MODULATEUR_ID_SEQ',
    'TYPE_MODULATEUR_EP_ID_SEQ',
    'TYPE_MODULATEUR_STRUCTU_ID_SEQ',
    'TYPE_NOTE_ID_SEQ',
    'TYPE_PIECE_JOINTE_ID_SEQ',
@@ -141,16 +80,77 @@ return [
    'TYPE_VALIDATION_ID_SEQ',
    'UTILISATEUR_ID_SEQ',
    'VALIDATION_ID_SEQ',
    'VALIDATION_VOL_HORAIRE_ID_SEQ',
    'VALIDATION_VOL_HORAIRE__ID_SEQ',
    'VOIRIE_ID_SEQ',
    'VOLUME_HORAIRE_ID_SEQ',
    'VOLUME_HORAIRE_CHARGE_ID_SEQ',
    'VOLUME_HORAIRE_ENS_ID_SEQ',
    'VOLUME_HORAIRE_ID_SEQ',
    'VOLUME_HORAIRE_REF_ID_SEQ',
    'WF_DEP_BLOQUANTE_ID_SEQ',
    'WF_ETAPE_DEP_ID_SEQ',
    'WF_ETAPE_ID_SEQ',
    'WF_ETAPE_DEP_ID_SEQ',
    'AFFECTATION_ID_SEQ',
    'AFFECTATION_RECHERCHE_ID_SEQ',
    'AGREMENT_ID_SEQ',
    'CAMPAGNE_SAISIE_ID_SEQ',
    'CATEGORIE_PRIVILEGE_ID_SEQ',
    'CC_ACTIVITE_ID_SEQ',
    'CENTRE_COUT_ID_SEQ',
    'CENTRE_COUT_EP_ID_SEQ',
    'CENTRE_COUT_STRUCTURE_ID_SEQ',
    'CHEMIN_PEDAGOGIQUE_ID_SEQ',
    'CIVILITE_ID_SEQ',
    'CONTRAT_ID_SEQ',
    'CORPS_ID_SEQ',
    'DEPARTEMENT_ID_SEQ',
    'DISCIPLINE_ID_SEQ',
    'DOMAINE_FONCTIONNEL_ID_SEQ',
    'DOTATION_ID_SEQ',
    'EFFECTIFS_ID_SEQ',
    'EFFECTIFS_ETAPE_ID_SEQ',
    'ELEMENT_MODULATEUR_ID_SEQ',
    'ELEMENT_PEDAGOGIQUE_ID_SEQ',
    'ELEMENT_TAUX_REGIMES_ID_SEQ',
    'EMPLOYEUR_ID_SEQ',
    'ETABLISSEMENT_ID_SEQ',
    'ETAPE_ID_SEQ',
    'ETAT_SORTIE_ID_SEQ',
    'FICHIER_ID_SEQ',
    'FONCTION_REFERENTIEL_ID_SEQ',
    'FORMULE_RESULTAT_ID_SEQ',
    'FORMULE_RESULTAT_SERVIC_ID_SEQ',
    'FORMULE_RESULTAT_SERREF_ID_SEQ',
    'FORMULE_RESULTAT_VH_ID_SEQ',
    'FORMULE_RESULTAT_VH_REF_ID_SEQ',
    'FTEST_INTERVENANT_ID_SEQ',
    'FTEST_VOLUME_HORAIRE_ID_SEQ',
    'GRADE_ID_SEQ',
    'GROUPE_ID_SEQ',
    'GROUPE_TYPE_FORMATION_ID_SEQ',
    'HISTO_INTERVENANT_SERVI_ID_SEQ',
    'INDICATEUR_ID_SEQ',
    'INDIC_MODIF_DOSSIER_ID_SEQ',
    'INTERVENANT_ID_SEQ',
    'INTERVENANT_DOSSIER_ID_SEQ',
    'INTERVENANT_PAR_DEFAUT_ID_SEQ',
    'LIEN_ID_SEQ',
    'MISE_EN_PAIEMENT_ID_SEQ',
    'MODELE_CONTRAT_ID_SEQ',
    'MODIFICATION_SERVICE_DU_ID_SEQ',
    'MODULATEUR_ID_SEQ',
    'MOTIF_MODIFICATION_SERV_ID_SEQ',
    'MOTIF_NON_PAIEMENT_ID_SEQ',
    'TPJS_NUM_REGLE_SEQ',
    'NOEUD_ID_SEQ',
    'NOTE_ID_SEQ',
    'NOTIFICATION_INDICATEUR_ID_SEQ',
    'PARAMETRE_ID_SEQ',
    'ROLE_PRIVILEGE_ID_SEQ',
    'STATUT_INTERVENANT_MAPP_ID_SEQ',
    'TBL_DEMS_ID_SEQ',
    'TBL_NOEUD_ID_SEQ',
    'TYPE_DOTATION_ID_SEQ',
    'VALIDATION_VOL_HORAIRE_ID_SEQ',
    'VALIDATION_VOL_HORAIRE__ID_SEQ',
];

//@formatter:on
+29 −29
Changes for data/ddl/view/V_TBL_PLAFOND_INTERVENANT.sql: 29 added lines, 29 removed lines.
Original line number Diff line number Diff line
@@ -14,90 +14,90 @@ SELECT
  CASE WHEN p.heures > COALESCE(p.PLAFOND,ps.heures,pa.heures,0) + COALESCE(pd.heures, 0) + 0.05 THEN 1 ELSE 0 END depassement
FROM
  (
  SELECT 2 PLAFOND_ID, NULL PLAFOND, p.* FROM (
  SELECT 1 PLAFOND_ID, NULL PLAFOND, p.* FROM (
    SELECT
        i.annee_id                          annee_id,
        fr.type_volume_horaire_id           type_volume_horaire_id,
        i.id                                intervenant_id,
        fr.total - fr.heures_compl_fc_majorees heures
        fr.heures_compl_fc_majorees         heures
      /*  ROUND( (COALESCE(si.plafond_hc_remu_fc,0) - COALESCE(i.montant_indemnite_fc,0)) / a.taux_hetd, 2 ) plafond*/

      FROM
             intervenant                i
        JOIN annee                      a ON a.id = i.annee_id
        JOIN statut                    si ON si.id = i.statut_id
        JOIN etat_volume_horaire      evh ON evh.code = 'saisi'
        JOIN formule_resultat          fr ON fr.intervenant_id = i.id AND fr.etat_volume_horaire_id = evh.id
        JOIN statut                    si ON si.id = i.statut_id
    ) p

    UNION ALL

  SELECT 5 PLAFOND_ID, NULL PLAFOND, p.* FROM (
  SELECT 2 PLAFOND_ID, NULL PLAFOND, p.* FROM (
    SELECT
        i.annee_id                             annee_id,
        fr.type_volume_horaire_id              type_volume_horaire_id,
        fr.intervenant_id                   intervenant_id,
        fr.heures_compl_fi + fr.heures_compl_fc + fr.heures_compl_fa + fr.heures_compl_referentiel heures
        i.id                                   intervenant_id,
        fr.total - fr.heures_compl_fc_majorees heures
      FROM
        intervenant                     i
        JOIN statut                    si ON si.id = i.statut_id
        JOIN etat_volume_horaire      evh ON evh.code = 'saisi'
        JOIN formule_resultat          fr ON fr.intervenant_id = i.id AND fr.etat_volume_horaire_id = evh.id
        JOIN statut                    si ON si.id = i.statut_id
    ) p

    UNION ALL

  SELECT 4 PLAFOND_ID, NULL PLAFOND, p.* FROM (
  SELECT 8 PLAFOND_ID, NULL PLAFOND, p.* FROM (
    SELECT
        i.annee_id                annee_id,
        fr.type_volume_horaire_id type_volume_horaire_id,
        i.id                      intervenant_id,
        fr.total - fr.heures_compl_fc_majorees heures
        SUM(frvh.heures_compl_fi) heures
      FROM
        intervenant                     i
        JOIN etat_volume_horaire      evh ON evh.code = 'saisi'
        JOIN formule_resultat          fr ON fr.intervenant_id = i.id AND fr.etat_volume_horaire_id = evh.id
        JOIN formule_resultat_vh     frvh ON frvh.formule_resultat_id = fr.id
        JOIN volume_horaire            vh ON vh.id = frvh.volume_horaire_id
        JOIN type_intervention         ti ON ti.id = vh.type_intervention_id
        JOIN statut                    si ON si.id = i.statut_id
      WHERE
        ti.regle_foad = 0
      GROUP BY
        fr.type_volume_horaire_id,
        i.annee_id,
        i.id,
        i.statut_id
    ) p

    UNION ALL

  SELECT 1 PLAFOND_ID, NULL PLAFOND, p.* FROM (
  SELECT 4 PLAFOND_ID, NULL PLAFOND, p.* FROM (
    SELECT
        i.annee_id                             annee_id,
        fr.type_volume_horaire_id              type_volume_horaire_id,
        i.id                                   intervenant_id,
        fr.heures_compl_fc_majorees         heures
      /*  ROUND( (COALESCE(si.plafond_hc_remu_fc,0) - COALESCE(i.montant_indemnite_fc,0)) / a.taux_hetd, 2 ) plafond*/

        fr.total - fr.heures_compl_fc_majorees heures
      FROM
        intervenant                     i
        JOIN annee                      a ON a.id = i.annee_id
        JOIN statut                    si ON si.id = i.statut_id
        JOIN etat_volume_horaire      evh ON evh.code = 'saisi'
        JOIN formule_resultat          fr ON fr.intervenant_id = i.id AND fr.etat_volume_horaire_id = evh.id
        JOIN statut                    si ON si.id = i.statut_id
    ) p

    UNION ALL

  SELECT 8 PLAFOND_ID, NULL PLAFOND, p.* FROM (
  SELECT 5 PLAFOND_ID, NULL PLAFOND, p.* FROM (
    SELECT
        i.annee_id                          annee_id,
        fr.type_volume_horaire_id           type_volume_horaire_id,
        i.id                      intervenant_id,
        SUM(frvh.heures_compl_fi) heures
        fr.intervenant_id                   intervenant_id,
        fr.heures_compl_fi + fr.heures_compl_fc + fr.heures_compl_fa + fr.heures_compl_referentiel heures
      FROM
             intervenant                i
        JOIN statut                    si ON si.id = i.statut_id
        JOIN etat_volume_horaire      evh ON evh.code = 'saisi'
        JOIN formule_resultat          fr ON fr.intervenant_id = i.id AND fr.etat_volume_horaire_id = evh.id
        JOIN formule_resultat_vh     frvh ON frvh.formule_resultat_id = fr.id
        JOIN volume_horaire            vh ON vh.id = frvh.volume_horaire_id
        JOIN type_intervention         ti ON ti.id = vh.type_intervention_id
        JOIN statut                    si ON si.id = i.statut_id
      WHERE
        ti.regle_foad = 0
      GROUP BY
        fr.type_volume_horaire_id,
        i.annee_id,
        i.id,
        i.statut_id
    ) p
  ) p
  JOIN intervenant i ON i.id = p.intervenant_id
+6 −6
Changes for data/ddl/view/V_TBL_PLAFOND_REFERENTIEL.sql: 6 added lines, 6 removed lines.
Original line number Diff line number Diff line
@@ -15,7 +15,7 @@ SELECT
  CASE WHEN p.heures > COALESCE(p.PLAFOND,ps.heures,pa.heures,0) + COALESCE(pd.heures, 0) + 0.05 THEN 1 ELSE 0 END depassement
FROM
  (
  SELECT 6 PLAFOND_ID, NULL PLAFOND, p.* FROM (
  SELECT 3 PLAFOND_ID, NULL PLAFOND, p.* FROM (
    SELECT
        i.annee_id                        annee_id,
        vhr.type_volume_horaire_id        type_volume_horaire_id,
@@ -25,18 +25,15 @@ FROM
      FROM
             service_referentiel       sr
        JOIN intervenant                i ON i.id = sr.intervenant_id
        JOIN fonction_referentiel      frf ON frf.id = sr.fonction_id
        JOIN fonction_referentiel      fr ON fr.id = frf.parent_id
        JOIN fonction_referentiel      fr ON fr.id = sr.fonction_id
        JOIN volume_horaire_ref       vhr ON vhr.service_referentiel_id = sr.id AND vhr.histo_destruction IS NULL
      WHERE
        sr.histo_destruction IS NULL
      GROUP BY
        i.annee_id, vhr.type_volume_horaire_id, i.id, fr.id
    ) p

      UNION ALL

  SELECT 3 PLAFOND_ID, NULL PLAFOND, p.* FROM (
      SELECT
        i.annee_id                 annee_id,
        vhr.type_volume_horaire_id type_volume_horaire_id,
@@ -46,15 +43,18 @@ FROM
      FROM
        service_referentiel       sr
        JOIN intervenant i ON i.id = sr.intervenant_id
        JOIN fonction_referentiel      fr ON fr.id = sr.fonction_id
        JOIN fonction_referentiel      frf ON frf.id = sr.fonction_id
        JOIN fonction_referentiel      fr ON fr.id = frf.parent_id
        JOIN volume_horaire_ref       vhr ON vhr.service_referentiel_id = sr.id AND vhr.histo_destruction IS NULL
      WHERE
        sr.histo_destruction IS NULL
      GROUP BY
        i.annee_id, vhr.type_volume_horaire_id, i.id, fr.id
    ) p

    UNION ALL

  SELECT 6 PLAFOND_ID, NULL PLAFOND, p.* FROM (
    SELECT
        i.annee_id                 annee_id,
        vhr.type_volume_horaire_id type_volume_horaire_id,
+0 −21
Changes for data/ddl/view/V_TBL_PLAFOND_STRUCTURE.sql: 0 added lines, 21 removed lines.
Original line number Diff line number Diff line
@@ -32,27 +32,6 @@ FROM
      GROUP BY
        i.annee_id, vhr.type_volume_horaire_id, i.id, s.id
    ) p

    UNION ALL

  SELECT 25 PLAFOND_ID, NULL PLAFOND, p.* FROM (
    SELECT
              i.annee_id                 annee_id,
              vh.type_volume_horaire_id  type_volume_horaire_id,
              i.id                       intervenant_id,
              str.id                     structure_id,
              SUM(vh.heures)             heures
            FROM
              service                    s
              JOIN element_pedagogique  ep ON ep.id = s.element_pedagogique_id
              JOIN intervenant           i ON i.id = s.intervenant_id
              JOIN structure           str ON str.id = ep.structure_id
              JOIN volume_horaire       vh ON vh.service_id = s.id AND vh.histo_destruction IS NULL
            WHERE
              s.histo_destruction IS NULL
            GROUP BY
              i.annee_id, vh.type_volume_horaire_id, i.id, str.id
    ) p
  ) p
  JOIN intervenant i ON i.id = p.intervenant_id
  LEFT JOIN plafond_application pa ON pa.plafond_id = p.plafond_id AND p.annee_id = pa.annee_id
Loading