1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
|
/**
* Set etat
*
* @param MeteoApplis\AdminBundle\Entity\ConfIndicateurs $etat
*/
public function setEtat(\MeteoApplis\AdminBundle\Entity\ConfIndicateurs $etat)
{
// On met à jour l'état de l'application
$this->etat = $etat;
// On récupère la criticté de l'application
$criticite_application = $this->application->getCriticite();
// Si l'application est critique et KO alors on met la brique à laquelle l'application est liée à KO.
if ($etat->getEtat() == "KO" && $criticite_application == "Critique")
$this->application->getBrique()->getBrique()->setEtat($etat);
// On va chercher dans la liste des applications qui sont rattachées à ma brique si il reste des applications critique et KO
$KO_trouver = false;
// On récupère les applications qui sont rattachées à ma brique
$applications_brique = $this->application->getBrique()->getApplications();
// On parcourt les applications
foreach ($applications_brique as $application)
{
// On récupère l'état et la criticité de chaque applications
$etat_application = $application->getApplication()->getEtat();
$criticite_application = $application->getCriticite();
// Si une application est critique et KO on met KO_trouver à true
if ($etat_application->getEtat() == "KO" && $criticite_application == "Critique")
$KO_trouver = true;
}
// Si on à trouver une application KO et critique on met la brique à KO sinon on la met a OK
if ($KO_trouver)
{
$this->application->getBrique()->getBrique()->setEtat("KO"); // Faux
}
else
$this->application->getBrique()->getBrique()->setEtat("OK"); // Faux
} |
Partager