Commit 1eb35c3a authored by Laurent Lecluse's avatar Laurent Lecluse
Browse files
Pouvoir payer sur les centres de coûts des composantes d'affectation
parent 49c17b2b
Loading
Loading
Loading
Loading
+7 −3
Original line number Diff line number Diff line
CREATE OR REPLACE FORCE VIEW V_FR_SERVICE_CENTRE_COUT AS
CREATE OR REPLACE FORCE VIEW V_FR_SERVICE_CENTRE_COUT ("FORMULE_RESULTAT_SERVICE_ID", "CENTRE_COUT_ID") AS
SELECT
  frs.id formule_resultat_service_id, cc.id centre_cout_id
FROM
  formule_resultat_service   frs
  JOIN parametre               p ON p.nom = 'centres_couts_paye'
  JOIN service                 s ON s.id = frs.service_id
  JOIN intervenant             i ON i.id = s.intervenant_id
  JOIN statut_intervenant     si ON si.id = i.statut_id
  JOIN type_intervenant       ti ON ti.id = si.type_intervenant_id
  JOIN element_pedagogique    ep ON ep.id = s.element_pedagogique_id
  JOIN centre_cout            cc ON cc.histo_destruction IS NULL

  JOIN centre_cout_structure ccs ON ccs.centre_cout_id = cc.id
                                AND ccs.structure_id = ep.structure_id
                                AND ccs.structure_id = CASE WHEN p.valeur = 'enseignement' OR ti.code = 'E' THEN ep.structure_id ELSE COALESCE(i.structure_id,ep.structure_id) END
                                AND ccs.histo_destruction IS NULL

  JOIN cc_activite             a ON a.id = cc.activite_id
@@ -27,7 +31,7 @@ WHERE
UNION

SELECT
  frs.id formule_resultat_service_id, cc.id
  frs.id formule_resultat_service_id, cc.id centre_cout_id
FROM
  formule_resultat_service   frs
  JOIN service                 s ON s.id = frs.service_id
+5 −1
Original line number Diff line number Diff line
@@ -3,11 +3,15 @@ SELECT
  frsr.id formule_resultat_serv_ref_id, cc.id centre_cout_id
FROM
  formule_resultat_service_ref   frsr
  JOIN parametre               p ON p.nom = 'centres_couts_paye'
  JOIN service_referentiel    sr ON sr.id = frsr.service_referentiel_id
  JOIN intervenant             i ON i.id = sr.intervenant_id
  JOIN statut_intervenant     si ON si.id = i.statut_id
  JOIN type_intervenant       ti ON ti.id = si.type_intervenant_id
  JOIN centre_cout            cc ON cc.histo_destruction IS NULL

  JOIN centre_cout_structure ccs ON ccs.centre_cout_id = cc.id
                                AND ccs.structure_id = sr.structure_id
                                AND ccs.structure_id = CASE WHEN p.valeur = 'enseignement' OR ti.code = 'E' THEN sr.structure_id ELSE COALESCE(i.structure_id,sr.structure_id) END
                                AND ccs.histo_destruction IS NULL

  JOIN cc_activite             a ON a.id = cc.activite_id
+6 −0
Original line number Diff line number Diff line
@@ -82,10 +82,16 @@ return [
        "VALEUR"      => "semestriel",
        "DESCRIPTION" => "Modalité de gestion des services (réalisé, référentiel)",
    ],

    /* Divers */
    "report_service"                     => [
        "VALEUR"      => "PREVU",
        "DESCRIPTION" => "Report du service de l'année précédente",
    ],
    "centres_couts_paye"                 => [
        "VALEUR"      => "enseignement",
        "DESCRIPTION" => "Centres de coûts utilisés pour la paye",
    ],


    /* Documentations */
+15 −0
Original line number Diff line number Diff line
@@ -313,6 +313,21 @@ class ParametresForm extends AbstractForm
            ],
        ]);

        $this->add([
            'type'       => 'Select',
            'name'       => 'centres_couts_paye',
            'options'    => [
                'value_options' => [
                    'enseignement' => 'Utiliser les centres de coûts de la composante d\'enseignement',
                    'affectation'  => 'Utiliser les centres de coûts de la composante d\'affectation de l\'intervenant',
                ],
            ],
            'attributes' => [
                'class'     => 'selectpicker',
                'data-size' => 20,
            ],
        ]);

        $this->add([
            'type'       => 'Select',
            'name'       => 'contrat_regle_franchissement',
+5 −2
Original line number Diff line number Diff line
@@ -135,13 +135,16 @@

        <div class="panel panel-default">
            <div class="panel-heading">
                <h3 class="panel-title">Formule de calcul des HETD</h3>
                <h3 class="panel-title">Formule / Paiement</h3>
            </div>
            <div class="panel-body">
                <div class="row">
                    <div class="col-md-12">
                    <div class="col-md-6">
                        <?= $this->formControlGroup($form->get('formule')); ?>
                    </div>
                    <div class="col-md-6">
                        <?= $this->formControlGroup($form->get('centres_couts_paye')); ?>
                    </div>
                </div>
            </div>
        </div>