Commit f3b94c11 authored by Laurent Lecluse's avatar Laurent Lecluse
Browse files
parent 10995247
Loading
Loading
Loading
Loading
+88 −0
Original line number Diff line number Diff line
@@ -31917,6 +31917,94 @@ FROM
  JOIN type_volume_horaire      tvh ON tvh.id = fr.type_volume_horaire_id AND tvh.code= \'REALISE\'
WHERE
  fr.total - fr.heures_compl_fc_majorees > si.maximum_hetd',
    ),
    'V_INDICATEUR_580' => 
    array (
      'name' => 'V_INDICATEUR_580',
      'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_580 AS
SELECT
  rownum                              id,
  t.annee_id,
  t.intervenant_id,
  t.structure_id,
  si.plafond_hc_fi_hors_ead           plafond,
  t.heures
FROM
  (
    SELECT
      fr.type_volume_horaire_id           type_volume_horaire_id,
      i.annee_id                          annee_id,
      i.id                                intervenant_id,
      i.structure_id                      structure_id,
      i.statut_id                         statut_intervenant_id,
      si.plafond_hc_fi_hors_ead           plafond,
      SUM(frvh.heures_compl_fi)           heures
    FROM
      intervenant                     i
      JOIN etat_volume_horaire      evh ON evh.code = \'saisi\'
      JOIN type_volume_horaire      tvh ON tvh.code= \'PREVU\'
      JOIN formule_resultat          fr ON fr.intervenant_id = i.id AND fr.etat_volume_horaire_id = evh.id AND fr.type_volume_horaire_id = tvh.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_intervenant        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.structure_id,
      i.statut_id,
      si.plafond_hc_fi_hors_ead
  ) t
    JOIN statut_intervenant si ON si.id = t.statut_intervenant_id
WHERE
  t.heures > si.plafond_hc_fi_hors_ead',
    ),
    'V_INDICATEUR_590' => 
    array (
      'name' => 'V_INDICATEUR_590',
      'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_590 AS
SELECT
  rownum                              id,
  t.annee_id,
  t.intervenant_id,
  t.structure_id,
  si.plafond_hc_fi_hors_ead           plafond,
  t.heures
FROM
  (
    SELECT
      fr.type_volume_horaire_id           type_volume_horaire_id,
      i.annee_id                          annee_id,
      i.id                                intervenant_id,
      i.structure_id                      structure_id,
      i.statut_id                         statut_intervenant_id,
      si.plafond_hc_fi_hors_ead           plafond,
      SUM(frvh.heures_compl_fi)           heures
    FROM
      intervenant                     i
      JOIN etat_volume_horaire      evh ON evh.code = \'saisi\'
      JOIN type_volume_horaire      tvh ON tvh.code= \'REALISE\'
      JOIN formule_resultat          fr ON fr.intervenant_id = i.id AND fr.etat_volume_horaire_id = evh.id AND fr.type_volume_horaire_id = tvh.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_intervenant        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.structure_id,
      i.statut_id,
      si.plafond_hc_fi_hors_ead
  ) t
    JOIN statut_intervenant si ON si.id = t.statut_intervenant_id
WHERE
  t.heures > si.plafond_hc_fi_hors_ead',
    ),
    'V_INDICATEUR_610' => 
    array (
+84 −0
Original line number Diff line number Diff line
@@ -5654,6 +5654,90 @@ WHERE
  fr.total - fr.heures_compl_fc_majorees > si.maximum_hetd;
/
CREATE OR REPLACE FORCE VIEW V_INDICATEUR_580 AS
SELECT
  rownum                              id,
  t.annee_id,
  t.intervenant_id,
  t.structure_id,
  si.plafond_hc_fi_hors_ead           plafond,
  t.heures
FROM
  (
    SELECT
      fr.type_volume_horaire_id           type_volume_horaire_id,
      i.annee_id                          annee_id,
      i.id                                intervenant_id,
      i.structure_id                      structure_id,
      i.statut_id                         statut_intervenant_id,
      si.plafond_hc_fi_hors_ead           plafond,
      SUM(frvh.heures_compl_fi)           heures
    FROM
      intervenant                     i
      JOIN etat_volume_horaire      evh ON evh.code = 'saisi'
      JOIN type_volume_horaire      tvh ON tvh.code= 'PREVU'
      JOIN formule_resultat          fr ON fr.intervenant_id = i.id AND fr.etat_volume_horaire_id = evh.id AND fr.type_volume_horaire_id = tvh.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_intervenant        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.structure_id,
      i.statut_id,
      si.plafond_hc_fi_hors_ead
  ) t
    JOIN statut_intervenant si ON si.id = t.statut_intervenant_id
WHERE
  t.heures > si.plafond_hc_fi_hors_ead;
/
CREATE OR REPLACE FORCE VIEW V_INDICATEUR_590 AS
SELECT
  rownum                              id,
  t.annee_id,
  t.intervenant_id,
  t.structure_id,
  si.plafond_hc_fi_hors_ead           plafond,
  t.heures
FROM
  (
    SELECT
      fr.type_volume_horaire_id           type_volume_horaire_id,
      i.annee_id                          annee_id,
      i.id                                intervenant_id,
      i.structure_id                      structure_id,
      i.statut_id                         statut_intervenant_id,
      si.plafond_hc_fi_hors_ead           plafond,
      SUM(frvh.heures_compl_fi)           heures
    FROM
      intervenant                     i
      JOIN etat_volume_horaire      evh ON evh.code = 'saisi'
      JOIN type_volume_horaire      tvh ON tvh.code= 'REALISE'
      JOIN formule_resultat          fr ON fr.intervenant_id = i.id AND fr.etat_volume_horaire_id = evh.id AND fr.type_volume_horaire_id = tvh.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_intervenant        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.structure_id,
      i.statut_id,
      si.plafond_hc_fi_hors_ead
  ) t
    JOIN statut_intervenant si ON si.id = t.statut_intervenant_id
WHERE
  t.heures > si.plafond_hc_fi_hors_ead;
/
CREATE OR REPLACE FORCE VIEW V_INDICATEUR_610 AS
SELECT rownum id, t."ANNEE_ID",t."INTERVENANT_ID",t."STRUCTURE_ID",t."STATUT_INTERVENANT_ID" FROM
(
+88 −0
Original line number Diff line number Diff line
@@ -31917,6 +31917,94 @@ FROM
  JOIN type_volume_horaire      tvh ON tvh.id = fr.type_volume_horaire_id AND tvh.code= \'REALISE\'
WHERE
  fr.total - fr.heures_compl_fc_majorees > si.maximum_hetd',
    ),
    'V_INDICATEUR_580' => 
    array (
      'name' => 'V_INDICATEUR_580',
      'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_580 AS
SELECT
  rownum                              id,
  t.annee_id,
  t.intervenant_id,
  t.structure_id,
  si.plafond_hc_fi_hors_ead           plafond,
  t.heures
FROM
  (
    SELECT
      fr.type_volume_horaire_id           type_volume_horaire_id,
      i.annee_id                          annee_id,
      i.id                                intervenant_id,
      i.structure_id                      structure_id,
      i.statut_id                         statut_intervenant_id,
      si.plafond_hc_fi_hors_ead           plafond,
      SUM(frvh.heures_compl_fi)           heures
    FROM
      intervenant                     i
      JOIN etat_volume_horaire      evh ON evh.code = \'saisi\'
      JOIN type_volume_horaire      tvh ON tvh.code= \'PREVU\'
      JOIN formule_resultat          fr ON fr.intervenant_id = i.id AND fr.etat_volume_horaire_id = evh.id AND fr.type_volume_horaire_id = tvh.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_intervenant        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.structure_id,
      i.statut_id,
      si.plafond_hc_fi_hors_ead
  ) t
    JOIN statut_intervenant si ON si.id = t.statut_intervenant_id
WHERE
  t.heures > si.plafond_hc_fi_hors_ead',
    ),
    'V_INDICATEUR_590' => 
    array (
      'name' => 'V_INDICATEUR_590',
      'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_590 AS
SELECT
  rownum                              id,
  t.annee_id,
  t.intervenant_id,
  t.structure_id,
  si.plafond_hc_fi_hors_ead           plafond,
  t.heures
FROM
  (
    SELECT
      fr.type_volume_horaire_id           type_volume_horaire_id,
      i.annee_id                          annee_id,
      i.id                                intervenant_id,
      i.structure_id                      structure_id,
      i.statut_id                         statut_intervenant_id,
      si.plafond_hc_fi_hors_ead           plafond,
      SUM(frvh.heures_compl_fi)           heures
    FROM
      intervenant                     i
      JOIN etat_volume_horaire      evh ON evh.code = \'saisi\'
      JOIN type_volume_horaire      tvh ON tvh.code= \'REALISE\'
      JOIN formule_resultat          fr ON fr.intervenant_id = i.id AND fr.etat_volume_horaire_id = evh.id AND fr.type_volume_horaire_id = tvh.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_intervenant        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.structure_id,
      i.statut_id,
      si.plafond_hc_fi_hors_ead
  ) t
    JOIN statut_intervenant si ON si.id = t.statut_intervenant_id
WHERE
  t.heures > si.plafond_hc_fi_hors_ead',
    ),
    'V_INDICATEUR_610' => 
    array (
+20 −0
Original line number Diff line number Diff line
@@ -201,6 +201,26 @@ return [
        'TEM_DISTINCT'      => true,
        'TEM_NOT_STRUCTURE' => false,
    ],
    580  => [
        'TYPE'              => 'Enseignements et référentiel',
        'ENABLED'           => true,
        'LIBELLE_PLURIEL'   => '%s intervenants ont des heures équivalent TD (HETD) <i>prévisionnelles</i> en FI hors EAD au-delà du plafond autorisé de part leur statut',
        'LIBELLE_SINGULIER' => '%s intervenant a des heures équivalent TD (HETD) <i>prévisionnelles</i> en FI hors EAD au-delà du plafond autorisé de part son statut',
        'MESSAGE'           => null,
        'ROUTE'             => 'intervenant/services',
        'TEM_DISTINCT'      => true,
        'TEM_NOT_STRUCTURE' => false,
    ],
    590  => [
        'TYPE'              => 'Enseignements et référentiel',
        'ENABLED'           => true,
        'LIBELLE_PLURIEL'   => '%s intervenants ont des heures équivalent TD (HETD) <i>réalisées</i> en FI hors EAD au-delà du plafond autorisé de part leur statut',
        'LIBELLE_SINGULIER' => '%s intervenant a des heures équivalent TD (HETD) <i>réalisées</i> en FI hors EAD au-delà du plafond autorisé de part son statut',
        'MESSAGE'           => null,
        'ROUTE'             => 'intervenant/services',
        'TEM_DISTINCT'      => true,
        'TEM_NOT_STRUCTURE' => false,
    ],
    320  => [
        'TYPE'              => 'Contrat / avenant',
        'ENABLED'           => true,
+89 −0
Original line number Diff line number Diff line
<?php

namespace Application\Entity\Db\Indicateur;

use UnicaenApp\Util;

class Indicateur580 extends AbstractIndicateur
{
    /**
     * @var float
     */
    private $plafond;

    /**
     * @var float
     */
    private $heures;



    /**
     * @return float
     */
    public function getPlafond()
    {
        return $this->plafond;
    }



    /**
     * @param float $plafond
     *
     * @return self
     */
    public function setPlafond($plafond)
    {
        $this->plafond = $plafond;

        return $this;
    }



    /**
     * @return float
     */
    public function getHeures()
    {
        return $this->heures;
    }



    /**
     * @param float $heures
     *
     * @return self
     */
    public function setHeures($heures)
    {
        $this->heures = $heures;

        return $this;
    }



    /**
     * Retourne les détails concernant l'indicateur
     *
     * @return string|null
     */
    public function getDetails()
    {
        if ($this->getPlafond() == 0){
            return sprintf(
                'heures = %s',
                Util::formattedNumber($this->getHeures())
            );
        }else{
            return sprintf(
                'heures = %s (plafond = %s)',
                Util::formattedNumber($this->getHeures()),
                Util::formattedNumber($this->getPlafond())
            );
        }
    }
}
Loading