Commit f377a2ba authored by Johnny Leveneur's avatar Johnny Leveneur
Browse files

import etudiant : enregistrement des modifications des ia

parent 7915f3ef
Loading
Loading
Loading
Loading
+63 −0
Original line number Diff line number Diff line
@@ -203,6 +203,7 @@ class EtudiantService

        $nbCreationEtudiant = 0;
        $nbMajEtudiant = 0;
        $nbMajIA = 0;

        foreach ($etudiants as $etudiant) {
            $e = $this->getEtudiant($etudiant['id']);
@@ -273,10 +274,72 @@ class EtudiantService
                    $this->update($e);
                    $nbMajEtudiant++;
                }

                // inscription administrative
                $IAs = $e->getInscriptionsAdministratives();
                $isMaj = false;
                foreach ($IAs as $ia) {
                    /** @var InscriptionAdministrative $ia */
                    if($ia->getAnneeUniv() == $etudiant['annee'] && $ia->getEtablissement() == $etudiant['etablissement'] )
                    {
                        $isMajIA = false;
                        if($etudiant['source_id'] != $ia->getSourceId())
                        {
                            $ia->setSourceId($etudiant['source_id']);
                            $isMajIA = true;
                        }
                        if($etudiant['composante'] != $ia->getComposante())
                        {
                            $ia->setComposante($etudiant['composante']);
                            $isMajIA = true;
                        }
                        if($etudiant['cycle'] != $ia->getCycle())
                        {
                            $ia->setCycle($etudiant['cycle']);
                            $isMajIA = true;
                        }
                        if($etudiant['diplome'] != $ia->getDiplome())
                        {
                            $ia->setDiplome($etudiant['diplome']);
                            $isMajIA = true;
                        }
                        if($etudiant['formation'] != $ia->getFormation())
                        {
                            $ia->setFormation($etudiant['formation']);
                            $isMajIA = true;
                        }


                        if($isMajIA) {
                            $isMaj = true;
                            $ia->setUpdatedOn(new \DateTime());
                            $this->getInscriptionAdministrativeService()->update($ia);
                            $nbMajIA++;
                        }
                    }
                }
                if(!$isMaj)
                {
                    $ia = new InscriptionAdministrative();
                    $ia->setId(uniqid($etudiant['source_id'] . '_'));
                    $ia->setAnneeUniv($etudiant['annee']);
                    $ia->setEtablissement($etudiant['etablissement']);
                    $ia->setComposante($etudiant['composante']);
                    $ia->setCycle($etudiant['cycle']);
                    $ia->setDiplome($etudiant['diplome']);
                    $ia->setFormation($etudiant['formation']);
                    $ia->setSourceId($etudiant['source_id']);
                    $ia->setInsertedOn(new \DateTime());

                    $ia->setEtudiant($e);

                    $this->getInscriptionAdministrativeService()->create($ia);
                }
            }
        }
        $messages[] = "Création de " . $nbCreationEtudiant . " étudiants";
        $messages[] = "Mise à jour de " . $nbMajEtudiant . " étudiants";
        if($nbMajIA > 0) $messages[] = "Mise à jour de " . $nbMajIA . " inscriptions administratives";

        return $messages;
    }