Mise ne place des premiers colleurs de formules
This diff is collapsed.
<?php | ||
/** | ||
* @var $this \Application\View\Renderer\PhpRenderer | ||
* @var $controller \Zend\Mvc\Controller\AbstractController | ||
* @var $viewName string | ||
* @var $sl \Zend\ServiceManager\ServiceLocatorInterface | ||
*/ | ||
$formuleTestIntervenantId = 113; | ||
$data = "901 CM 100,00 % 0,00 % 0,00 % Oui 20 h 1,5 HETD 30 HETD 30 HETD 100,00 % 30 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 30 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD | ||
909 TD 0,00 % 100,00 % 0,00 % Oui 50 h 1 HETD 50 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 50 HETD 100,00 % 17 HETD 33 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 17 HETD 0 HETD 0 HETD 0 HETD 33 HETD 0 HETD 0 HETD 0 HETD | ||
KE8 TP 0,00 % 0,00 % 100,00 % Oui 30 h 1 HETD 30 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 30 HETD 54,55 % 0 HETD 30 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 30 HETD 0 HETD 0 HETD | ||
KE8 Référentiel Non 20 h 1 HETD 20 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 20 HETD 18,18 % 0 HETD 20 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 20 HETD | ||
UP10 CM 100,00 % 0,00 % 0,00 % Oui 10 h 1,5 HETD 15 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 15 HETD 33,33 % 15 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 15 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD | ||
901 TD 0,00 % 0,00 % 100,00 % Oui 20 h 1 HETD 20 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 20 HETD 100,00 % 0 HETD 20 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 20 HETD 0 HETD 0 HETD | ||
901 Référentiel Non 40 h 1 HETD 40 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 40 HETD 36,36 % 0 HETD 40 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 40 HETD | ||
909 Référentiel Non 50 h 1 HETD 50 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 50 HETD 45,45 % 0 HETD 50 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 50 HETD | ||
901 Référentiel Oui 15 h 1 HETD 15 HETD 0 HETD 0,00 % 0 HETD 0 HETD 15 HETD 25,00 % 15 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 15 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD | ||
KE8 TP 100,00 % 0,00 % 0,00 % Oui 30 h 1 HETD 30 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 30 HETD 66,67 % 30 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 30 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD | ||
901 Référentiel Oui 40 h 1 HETD 40 HETD 0 HETD 0,00 % 0 HETD 0 HETD 40 HETD 66,67 % 40 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 40 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD | ||
909 CM 100,00 % 0,00 % Oui 10 h 1,5 HETD 15 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 15 HETD 100,00 % 15 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 15 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD | ||
909 Référentiel Oui 10 h 1 HETD 10 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 10 HETD 100,00 % 10 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 10 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD | ||
901 TD 0,00 % 100,00 % 0,00 % Oui 15 h 1 HETD 15 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 15 HETD 100,00 % 15 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 15 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD | ||
901 Référentiel Oui 5 h 1 HETD 5 HETD 0 HETD 0,00 % 0 HETD 0 HETD 5 HETD 8,33 % 5 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 5 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD | ||
909 TD 0,00 % 0,00 % 100,00 % Oui 25 h 1 HETD 25 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0,00 % 0 HETD 0 HETD 25 HETD 45,45 % 0 HETD 25 HETD 0 HETD 0,00 % 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 0 HETD 25 HETD 0 HETD 0 HETD | ||
"; | ||
/* | ||
Structures : | ||
1 Droit | ||
2 Histoire | ||
3 IAE | ||
4 IUT | ||
5 Lettres | ||
6 Santé | ||
7 Sciences | ||
8 SUAPS | ||
9 Université | ||
*/ | ||
$data = explode("\n", $data); | ||
?> | ||
<style> | ||
table { | ||
font-size: 8pt; | ||
} | ||
</style> | ||
<table class="table table-bordered table-condensed table-extra-condensed table-hover"> | ||
<tr> | ||
<th>Composante</th> | ||
<th>Service statutaire</th> | ||
<th>Référentiel</th> | ||
<th>Type d'intervention</th> | ||
<th>Taux FI</th> | ||
<th>Taux FA</th> | ||
<th>Taux FC</th> | ||
<th>Modulateur HC</th> | ||
<th>Heures</th> | ||
<th>SFi</th> | ||
<th>SFa</th> | ||
<th>SFc</th> | ||
<th>SRef</th> | ||
<th>HCFi</th> | ||
<th>HCFa</th> | ||
<th>HCFc</th> | ||
<th>HCFcM</th> | ||
<th>HCRef</th> | ||
<th>Tableau</th> | ||
</tr> | ||
<?php | ||
/** @var \Doctrine\ORM\EntityManager $bdd */ | ||
$bdd = $sl->get(\Application\Constants::BDD); | ||
/** @var \Application\Service\FormuleTestIntervenantService $ftiService */ | ||
$ftiService = $sl->get(\Application\Service\FormuleTestIntervenantService::class); | ||
$fti = $ftiService->get($formuleTestIntervenantId); | ||
$bdd->getConnection()->exec('DELETE FROM formule_test_volume_horaire WHERE intervenant_test_id = ' . $formuleTestIntervenantId); | ||
foreach ($data as $l) { | ||
if (trim($l)) { | ||
$c = explode("\t", trim($l)); | ||
$correspStructs = [ | ||
'P1' => 1, | ||
'901' => 1, | ||
'C1' => 2, | ||
'909' => 2, | ||
'C2' => 3, | ||
'920' => 3, | ||
'C3' => 4, | ||
'KE8' => 8, | ||
'UNIV' => 9, | ||
'UP10' => 9, | ||
]; | ||
$composante = $correspStructs[$c[0]]; | ||
$serviceStatutaire = strtolower($c[5]) == 'oui'; | ||
$typeIntervention = $c[1]; | ||
$referentiel = false; | ||
$tauxFi = $c[2]; | ||
$tauxFa = $c[3]; | ||
$tauxFc = $c[4]; | ||
$modulateurHC = 1; | ||
$heures = $c[6]; | ||
$serviceFi = stringToFloat(substr($c[60], 0, -5)); | ||
$serviceFa = stringToFloat(substr($c[61], 0, -5)); | ||
$serviceFc = stringToFloat(substr($c[62], 0, -5)); | ||
$serviceReferentiel = stringToFloat(substr($c[63], 0, -5)); | ||
$heuresComplFi = stringToFloat(substr($c[64], 0, -5)); | ||
$heuresComplFa = stringToFloat(substr($c[65], 0, -5)); | ||
$heuresComplFc = stringToFloat(substr($c[66], 0, -5)); | ||
$heuresComplFcMaj = stringToFloat(substr($c[67], 0, -5)); | ||
$heuresComplReferentiel = stringToFloat(substr($c[68], 0, -5)); | ||
// Transformations | ||
if ($typeIntervention == 'Référentiel') $typeIntervention = 'REFERENTIEL'; | ||
$referentiel = $typeIntervention == 'REFERENTIEL'; | ||
$tauxFi = (float)str_replace(',','.',substr($tauxFi,0,-1)) / 100; | ||
$tauxFa = (float)str_replace(',','.',substr($tauxFa,0,-1)) / 100; | ||
$tauxFc = (float)str_replace(',','.',substr($tauxFc,0,-1)) / 100; | ||
if ('' == $modulateurHC) $modulateurHC = 1; | ||
$heures = substr($heures, 0, -2); | ||
$heures = stringToFloat($heures); | ||
$debug = false; | ||
// $debug = true; | ||
// Traitement et affichage | ||
$composante = $sl->get(\Application\Constants::BDD)->getRepository(\Application\Entity\Db\FormuleTestStructure::class)->find($composante); | ||
if ($debug) { | ||
$c = '<pre>' . var_export($c, true) . '</pre>'; | ||
} else { | ||
$c = ''; | ||
$vh = new \Application\Entity\Db\FormuleTestVolumeHoraire(); | ||
$vh->setIntervenantTest($fti); | ||
$vh->setStructureTest($composante); | ||
$vh->setServiceStatutaire($serviceStatutaire); | ||
$vh->setReferentiel($referentiel); | ||
$vh->setTypeInterventionCode($typeIntervention); | ||
$vh->setTauxFi($tauxFi); | ||
$vh->setTauxFa($tauxFa); | ||
$vh->setTauxFc($tauxFc); | ||
$vh->setPonderationServiceCompl($modulateurHC); | ||
$vh->setHeures($heures); | ||
$vh->setAServiceFi($serviceFi); | ||
$vh->setAServiceFa($serviceFa); | ||
< |