Commit bd3c94a4 authored by Antony Le Courtes's avatar Antony Le Courtes
Browse files

Ajout hydrator pour mapper le statut OSE avec le statut SIHAM

parent f3ef43cc
......@@ -148,6 +148,7 @@ class ExportRhController extends AbstractController
$nameConnecteur = $this->exportRhService->getConnecteurName();
$form = $this->getExportRhForm($intervenant);
$form->bind($intervenantDossier);
} catch (\Exception $e) {
$this->flashMessenger()->addErrorMessage($e->getMessage());
}
......
......@@ -4,6 +4,7 @@ namespace ExportRh\Form;
use Application\Form\AbstractForm;
use ExportRh\Form\Fieldset\GeneriqueFieldset;
use ExportRh\Hydrator\ExportRhHydrator;
use Zend\Form\Fieldset;
class ExportRhForm extends AbstractForm
......@@ -29,6 +30,9 @@ class ExportRhForm extends AbstractForm
$this->add($generiqueFieldset->init());
//Partie sépcifique au connecteur SI RH
$this->add($this->fieldsetConnecteur->init());
$hydrator = new ExportRhHydrator();
$this->setHydrator($hydrator);
$this->add([
......
<?php
namespace ExportRh\Hydrator;
use Zend\Hydrator\HydratorInterface;
/**
*
*
*/
class ExportRhHydrator implements HydratorInterface
{
/**
* Extract values from an object
*
* @param IntervenantDossier $object
*
* @return array
*/
public function extract($object)
{
//On mappe automatiquement le bon statut RH selon le statut OSE
$statut = $object->getStatut();
$statutRh = '';
switch ($statut->getCode()) {
case 'VACFONCSUAPS':
case 'VACNONFONCSUAPS':
case 'VAC.SUAPS':
$statutRh = 'C1204';
break;
case 'INTERMITTENT':
$statutRh = 'C1201';
break;
case 'SALAR_PRIVE':
case 'AUTO_LIBER_INDEP':
$statutRh = 'C2038';
break;
case 'SALAR_PUBLIC':
$statutRh = 'C2052';
break;
case 'RETR_HORS_UCBN':
case 'ETUD_UCBN':
$statutRh = 'C2041';
break;
}
$data['connecteurForm'] = [
'statut' => $statutRh,
];
return $data;
}
/**
* @param array $data
* @param object $object
*
* @return object
*/
public function hydrate(array $data, $object)
{
return $object;
}
}
\ No newline at end of file
......@@ -29,7 +29,8 @@ if ($priseEnCharge) {
</div>
<?php elseif ($haveContratOse === false): ?>
<div class="messenger alert alert-warning">
L'intervenant <?= $intervenantDossier->getPrenom() . ' ' . $intervenantDossier->getNomUsuel() ?> n'a pas encore retourné son contrat. Vous pourrez le renouveller ou le prendre en charge dans <?= $nameConnecteur; ?> une fois le contrat retourné et daté.
L'intervenant <?= $intervenantDossier->getPrenom() . ' ' . $intervenantDossier->getNomUsuel() ?> (<?= $intervenantDossier->getStatut()->getLibelle() ?>) n'a pas encore retourné son contrat. Vous pourrez le renouveller ou le prendre en charge dans <?= $nameConnecteur; ?> une fois le
contrat retourné et daté.
</div>
......@@ -37,17 +38,21 @@ if ($priseEnCharge) {
<div class="well">
<?php if (empty($intervenantRh)): ?>
<p>L'intervenant <?= $intervenantDossier->getPrenom() . ' ' . $intervenantDossier->getNomUsuel() ?> n'a pas été trouvé dans <?= $nameConnecteur; ?>. Vous pouvez si vous le souhaiter prendre en charge cet intervenant avec les données de son dossier, résumées ci-dessous :</p>
<p>L'intervenant <?= $intervenantDossier->getPrenom() . ' ' . $intervenantDossier->getNomUsuel() ?> (<?= $intervenantDossier->getStatut()->getLibelle() ?>) n'a pas été trouvé dans <?= $nameConnecteur; ?>. Vous pouvez si vous le souhaiter prendre en charge cet intervenant avec les
données de son dossier, résumées ci-dessous :</p>
<?php else: ?>
<?php if (!empty($affectationEnCours) && !empty($contratsEnCours)): ?>
<p>L'intervenant <?= $intervenantDossier->getPrenom() . ' ' . $intervenantDossier->getNomUsuel() ?> est bien dans le <?= $nameConnecteur ?> (<strong>numéro de matricule :</strong> <?= $intervenantRh->getCodeRh() ?>). Il possède déjà actuellement une affectation pour l'année
<p>L'intervenant <?= $intervenantDossier->getPrenom() . ' ' . $intervenantDossier->getNomUsuel() ?> (<?= $intervenantDossier->getStatut()->getLibelle() ?>) est bien dans le <?= $nameConnecteur ?> (<strong>numéro de matricule :</strong> <?= $intervenantRh->getCodeRh() ?>). Il
possède déjà actuellement une affectation pour l'année
universitaire <?= $intervenant->getAnnee()->getLibelle() ?>. Vous pouvez mettre à jour ses données personnelles si vous le souhaitez avec le bouton synchronisation en bas de page.</p>
<?php elseif (!empty($affectationEnCours) && empty($contratsEnCours)): ?>
<p>L'intervenant <?= $intervenantDossier->getPrenom() . ' ' . $intervenantDossier->getNomUsuel() ?> est bien dans le <?= $nameConnecteur ?> (<strong>numéro de matricule :</strong> <?= $intervenantRh->getCodeRh() ?>).Il possède une affectation mais pas encore de contrat
<p>L'intervenant <?= $intervenantDossier->getPrenom() . ' ' . $intervenantDossier->getNomUsuel() ?> (<?= $intervenantDossier->getStatut()->getLibelle() ?>) est bien dans le <?= $nameConnecteur ?> (<strong>numéro de matricule :</strong> <?= $intervenantRh->getCodeRh() ?>).Il
possède une affectation mais pas encore de contrat
pour l'année <?= $intervenant->getAnnee()->getLibelle() ?>. Vous pouvez mettre à jour ses données personnelles si vous le souhaitez avec le bouton synchronisation en bas de page</p>
<?php else: ?>
<p>L'intervenant <?= $intervenantDossier->getPrenom() . ' ' . $intervenantDossier->getNomUsuel() ?> est bien dans le <?= $nameConnecteur ?> (<strong>numéro de matricule :</strong> <?= $intervenantRh->getCodeRh() ?>).Il ne possède pas encore d'affectation pour
<p>L'intervenant <?= $intervenantDossier->getPrenom() . ' ' . $intervenantDossier->getNomUsuel() ?> (<?= $intervenantDossier->getStatut()->getLibelle() ?>) est bien dans le <?= $nameConnecteur ?> (<strong>numéro de matricule :</strong> <?= $intervenantRh->getCodeRh() ?>).Il ne
possède pas encore d'affectation pour
l'année <?= $intervenant->getAnnee()->getLibelle() ?>. Vous pouvez le renouveller pour cette année à l'aide du formulaire ci-dessous.</p>
<?php endif; ?>
<?php endif; ?>
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment