src/Controller/ModeleMoucheController.php line 42

Open in your IDE?
  1. <?php
  2. namespace App\Controller;
  3. use App\Service\PetitsOutils;
  4. use App\Model\ParamMoucheModele;
  5. use App\Form\ModeleMoucheFormType;
  6. use App\Repository\SiteRepository;
  7. use Symfony\Component\HttpFoundation\Request;
  8. // use App\Model\DataMoucheModele;
  9. use Symfony\Component\HttpFoundation\Response;
  10. use Symfony\Component\Routing\Annotation\Route;
  11. use App\Service\ModeleMouche\CalculModeleMouche;
  12. use Symfony\Component\HttpFoundation\JsonResponse;
  13. use Symfony\Component\HttpFoundation\RequestStack;
  14. use Symfony\Component\HttpFoundation\StreamedResponse;
  15. use Symfony\Component\Form\Extension\Core\Type\TextType;
  16. use Symfony\Bundle\FrameworkBundle\Controller\Controller;
  17. use Symfony\Component\Form\Extension\Core\Type\ChoiceType;
  18. use Symfony\Component\Form\Extension\Core\Type\SubmitType;
  19. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  20. class ModeleMoucheController extends AbstractController
  21. {
  22.     private $siteRepository;
  23.     private $petitsOutils;
  24.     private $calculModeleMouche;
  25.     private $requestStack;
  26.     public function __construct(SiteRepository $siteRepositoryPetitsOutils $petitsOutilsCalculModeleMouche $calculModeleMoucheRequestStack $requestStack )
  27.     {
  28.         $this->SiteRepository $siteRepository;
  29.         $this->petitsOutils $petitsOutils;
  30.         $this->calculModeleMouche $calculModeleMouche;
  31.         $this->requestStack $requestStack;
  32.     }
  33.    
  34.     /**
  35.      * Saisie des paramètres pour le calcul du modèle.
  36.      *
  37.      * @param Request $request
  38.      * @Route("/admin/mouche/params",name="mouche-params")
  39.      */
  40.     function datasModeleMoucheAction (Request $request)
  41.     {
  42.         $defaultData = array();
  43.         $param = new ParamMoucheModele();
  44.         $form $this->createForm(ModeleMoucheFormType::class, $param);
  45.         
  46.         $form->handleRequest($request);
  47.         
  48.         if ($form->isSubmitted() && $form->isValid()) {
  49.             $datas $form->getData();
  50.             //dd($datas);
  51.             
  52.             $french $datas->getBiofix();
  53.             
  54.             if ($french != null) {
  55.                 
  56.                 $biofix $this->petitsOutils->frenchDateToEnglish($french);
  57.                 $param->setBiofix($biofix);
  58.                 
  59.                 $french $datas->getFin();
  60.                 $fin $this->petitsOutils->frenchDateToEnglish($french);
  61.                 $param->setFin($fin);
  62.             }
  63.             
  64.             $session $this->requestStack->getSession();
  65.             $session->set('ParamMouche'$param);
  66.            // dump($sortie);exit;
  67.            $sortie "graph";
  68.            $sens "F";
  69.             $retour $this->calculModeleMouche->retour();
  70.             //dd(json_encode($retour['datatMinJour']));
  71.             if($sortie == 'graph'){
  72.                 return $this->render('modele_mouche/graphique.html.twig',
  73.                         array(
  74.                                 //'site' => $site,
  75.                                 'sens' => $sens,
  76.                                 'datatMinJour' => json_encode($retour['datatMinJour']),
  77.                                 'datatMaxJour' => json_encode($retour['datatMaxJour']),
  78.                                 'datatMoyJour' => json_encode($retour['datatMoyJour']),
  79.                                 'oeuf' => json_encode($retour['oeuf']),
  80.                                 'larve' => json_encode($retour['larve']),
  81.                                 'pupe' => json_encode($retour['pupe']),
  82.                                 'sortie' => $sortie
  83.                         
  84.                         ));
  85.             } 
  86.             if($sortie == 'csv' ){
  87.                 return $this->redirectToRoute('jm_mesures_modelejsonScp',
  88.                         array(
  89.                                 'siteId' => $siteId,
  90.                                 'sens' => $sens,
  91.                                 'sortie' => $sortie
  92.                         
  93.                         ));
  94.             }     
  95.         }
  96.         
  97.         return $this->renderForm('modele_mouche/datasModele.html.twig',
  98.                 array(
  99.                         'form' => $form
  100.                 ));
  101.     }
  102. }