Commit 700b029a authored by Antony Le Courtes's avatar Antony Le Courtes
Browse files

Réglage des centres de coût pour les demandes de mise en paiement des...

Réglage des centres de coût pour les demandes de mise en paiement des vacataires et des etudiants, toujours les centres de cout de la composante d'enseignement
parent 2f24341b
Loading
Loading
Loading
Loading
+21 −19
Original line number Diff line number Diff line
@@ -2,11 +2,11 @@

namespace Paiement\Service;


use Administration\Service\ParametresServiceAwareTrait;
use Application\Service\AbstractService;
use Enseignement\Entity\Db\Service;
use Intervenant\Entity\Db\Intervenant;
use Intervenant\Entity\Db\TypeIntervenant;
use Lieu\Entity\Db\Structure;
use Lieu\Service\StructureServiceAwareTrait;
use Mission\Service\MissionServiceAwareTrait;
@@ -56,7 +56,8 @@ class DemandesService extends AbstractService
                //On récupère les données nécessaires à la demande de mis en paiement
                $data                   = [];
                $data['heures']         = $heures->getHeuresAPayerAA() + $heures->getHeuresAPayerAC();
                $data['centre-cout-id'] = ($heures->getCentreCout()) ? $heures->getCentreCout()->getId() : '';;
                $data['centre-cout-id'] = ($heures->getCentreCout()) ? $heures->getCentreCout()->getId() : '';
                ;
                $data['domaine-fonctionnel-id'] = ($heures->getDomaineFonctionnel()) ? $heures->getDomaineFonctionnel()->getId() : '';
                $data['service-id']             = ($heures->getService()) ? $heures->getService()->getId() : '';
                $data['service-referentiel-id'] = ($heures->getServiceReferentiel()) ? $heures->getServiceReferentiel()->getId() : '';
@@ -169,20 +170,21 @@ class DemandesService extends AbstractService
        //Liste des demandes de mise en paiement
        $dmep = [];
        //Récupération du paramétrage des centres de cout pour les paiements
        $intervenantStructure = $intervenant->getStructure();
        $parametreCentreCout = $this->getServiceParametres()->get('centres_couts_paye');
        $intervenantStrucutre = $intervenant->getStructure();
        if($intervenantStrucutre instanceof Structure && $structure instanceof Structure)
        {
            if($parametreCentreCout == 'affectation')
            {   //Cas ou c'est la composante d'affectation qui fait les demandes de mises en paiement
                if($intervenantStrucutre->getId() == $structure->getId())
                {
        if ($intervenant->getStatut()->getTypeIntervenant()->getCode() == TypeIntervenant::CODE_EXTERIEUR ||
            $intervenant->getStatut()->getTypeIntervenant()->getCode() == TypeIntervenant::CODE_ETUDIANT) {
            $parametreCentreCout = 'enseignement';
        }

        if ($intervenantStructure instanceof Structure && $structure instanceof Structure) {
            if ($parametreCentreCout == 'affectation') {   //Cas ou c'est la composante d'affectation qui fait les demandes de mises en paiement
                if ($intervenantStructure->getId() == $structure->getId()) {
                    /*Si j'ai un role avec un périmètre composante et que ma structure d'affectation est la même que
                    celle de l'intervenant j'accède à toutes les demandes de mise en paiement peu importe la structure
                    de l'enseignement réalisé de l'intervenant on ne filtre pas les dmep*/
                    $structure = null;
                }
                else{
                } else {
                    //Sinon on ne doit voir aucune demande de mise en paiement
                    return $dmep;
                }