/**
  * Creates an rapportVisite object based on a DB row.
  *
  * @param array $row The DB row containing rapportVisite data.
  * @return \GSB\Domain\rapportVisite
  */
 protected function buildDomainObject($row)
 {
     $rapportVisite = new RapportVisite();
     $rapportVisite->setId($row['id_rapport']);
     $dateRapport = \DateTime::createFromFormat('Y-m-d', $row['date_rapport']);
     $rapportVisite->setDateRapport($dateRapport->format('Y-m-d'));
     //$rapportVisite->setDateRapport($row['date_rapport']);
     $rapportVisite->setBilan($row['bilan']);
     $rapportVisite->setMotif($row['motif']);
     if (array_key_exists('id_praticien', $row)) {
         // Find and set the associated praticien
         $praticienId = $row['id_praticien'];
         $praticien = $this->praticienDAO->find($praticienId);
         $rapportVisite->setPraticien($praticien);
     }
     if (array_key_exists('id_visiteur', $row)) {
         // Find and set the associated visiteur
         $visiteurId = $row['id_visiteur'];
         $visiteur = $this->visiteurDAO->find($visiteurId);
         $rapportVisite->setVisiteur($visiteur);
     }
     return $rapportVisite;
 }
Пример #2
0
        $app['dao.visiteur']->save($visiteur);
        $app['session']->getFlashBag()->add('success', 'Vos informations personnelles ont été mises à jour.');
    }
    $visiteurFormView = $visiteurForm->createView();
    return $app['twig']->render('profil.html.twig', array('visiteurForm' => $visiteurFormView));
})->bind('profil');
// Liste de tous les rapports de visite
$app->get('/rapport/', function () use($app) {
    $rapports = $app['dao.rapport']->findAllByVisiteur($app['user']->getId());
    return $app['twig']->render('rapports.html.twig', array('rapports' => $rapports));
})->bind('rapports');
// Rapport de visite
$app->match('/rapport/ajout', function (Request $request) use($app) {
    $rapport = new RapportVisite();
    $user = $app['user'];
    $rapport->setVisiteur($user);
    $praticiens = $app['dao.praticien']->findAll();
    $rapportFormView = null;
    $rapportForm = $app['form.factory']->create(new RapportType($praticiens), $rapport);
    $rapportForm->handleRequest($request);
    if ($rapportForm->isSubmitted() && $rapportForm->isValid()) {
        // Ajoute manuellement le praticien au nouveau rapport
        $praticienId = $rapportForm->get('praticien')->getData();
        $praticien = $app['dao.praticien']->find($praticienId);
        $rapport->setPraticien($praticien);
        // Sauvegarde le nouveau rapport
        $app['dao.rapport']->save($rapport);
        $app['session']->getFlashBag()->add('success', 'Le rapport a été sauvegardé.');
    }
    $rapportFormView = $rapportForm->createView();
    return $app['twig']->render('rapport_ajout.html.twig', array('rapportForm' => $rapportFormView));