src/Controller/DiagnosticosHistoriaClinicaController.php line 44

Open in your IDE?
  1. <?php
  2. namespace App\Controller;
  3. use App\Entity\DiagnosticosHistoriaClinica;
  4. use App\Form\DiagnosticosHistoriaClinicaType;
  5. use App\Repository\DiagnosticosHistoriaClinicaRepository;
  6. use App\Repository\HistoriaClinicaRepository;
  7. use App\Repository\Cie10Repository;
  8. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  9. use Symfony\Component\HttpFoundation\Request;
  10. use Symfony\Component\HttpFoundation\Response;
  11. use Symfony\Component\Routing\Annotation\Route;
  12. use Symfony\Component\Security\Core\Security;
  13. /**
  14.  * @Route("/diagnosticos_historia_clinica")
  15.  */
  16. class DiagnosticosHistoriaClinicaController extends AbstractController
  17. {
  18.     /**
  19.      * @var Security
  20.      */
  21.     private $security;
  22.     public function __construct(Security $security)
  23.     {
  24.        date_default_timezone_set("America/Guayaquil");
  25.        $this->security $security;
  26.     }
  27.     /**
  28.      * @Route("/", name="diagnosticos_historia_clinica_index", methods={"GET"})
  29.      */
  30.     public function index(DiagnosticosHistoriaClinicaRepository $diagnosticosHistoriaClinicaRepository): Response
  31.     {
  32.         return $this->render('diagnosticos_historia_clinica/index.html.twig', [
  33.             'diagnosticos_historia_clinicas' => $diagnosticosHistoriaClinicaRepository->findAll(),
  34.         ]);
  35.     }
  36.     /**
  37.      * @Route("/index_ajax/{historiaclinica_id}", name="diagnosticos_historia_clinica_index_aj", methods={"GET"})
  38.      */
  39.     public function index_ajax(DiagnosticosHistoriaClinicaRepository $diagnosticosHistoriaClinicaRepositoryHistoriaClinicaRepository $historiaClinicaRepository$historiaclinica_id): Response
  40.     {
  41.         $hc $historiaClinicaRepository->find($historiaclinica_id);
  42.         //dd($hc->getDiagnosticosHistoriaClinicas());
  43.         return $this->render('diagnosticos_historia_clinica/index_aj.html.twig', [
  44.             'diagnosticos_historia_clinicas' => $hc->getDiagnosticosHistoriaClinicas(),
  45.         ]);
  46.     }
  47.     /**
  48.      * @Route("/new", name="diagnosticos_historia_clinica_new", methods={"GET","POST"})
  49.      */
  50.     public function new(Request $request): Response
  51.     {
  52.         $diagnosticosHistoriaClinica = new DiagnosticosHistoriaClinica();
  53.         $form $this->createForm(DiagnosticosHistoriaClinicaType::class, $diagnosticosHistoriaClinica);
  54.         $form->handleRequest($request);
  55.         if ($form->isSubmitted() && $form->isValid()) {
  56.             $entityManager $this->getDoctrine()->getManager();
  57.             $entityManager->persist($diagnosticosHistoriaClinica);
  58.             $entityManager->flush();
  59.             return $this->redirectToRoute('diagnosticos_historia_clinica_index');
  60.         }
  61.         return $this->render('diagnosticos_historia_clinica/new.html.twig', [
  62.             'diagnosticos_historia_clinica' => $diagnosticosHistoriaClinica,
  63.             'form' => $form->createView(),
  64.         ]);
  65.     }
  66.     /**
  67.      * @Route("/new_ajax/{historiaclinica_id}", name="diagnosticos_historia_clinica_new_ajax", methods={"POST"})
  68.      */
  69.     public function new_ajax(Request $requestCie10Repository $cie10RepositoryHistoriaClinicaRepository $historiaClinicaRepository$historiaclinica_id): Response
  70.     {
  71.         $ip   $request->getClientIp();
  72.         $user $this->security->getUser();
  73.         $diagnosticosHistoriaClinica = new DiagnosticosHistoriaClinica();
  74.         $form_dx $this->createForm(DiagnosticosHistoriaClinicaType::class, $diagnosticosHistoriaClinica);
  75.         $form_dx->handleRequest($request);
  76.         if ($form_dx->isSubmitted() && $form_dx->isValid()) {
  77.             $entityManager $this->getDoctrine()->getManager();
  78.             $cie10_id $form_dx->get('cie10_id')->getData();
  79.             $tipo     $form_dx->get('tipo')->getData();
  80.             $cie10    $cie10Repository->find($cie10_id);
  81.             $hc       $historiaClinicaRepository->find($historiaclinica_id);
  82.             $diagnosticosHistoriaClinica->setTipo($tipo);
  83.             $diagnosticosHistoriaClinica->setCie10($cie10);
  84.             $diagnosticosHistoriaClinica->setHistoriaClinica($hc);
  85.             $diagnosticosHistoriaClinica->setIpCrea($ip);
  86.             $diagnosticosHistoriaClinica->setIpModifica($ip);
  87.             $diagnosticosHistoriaClinica->setUserCrea($user->getId());
  88.             $diagnosticosHistoriaClinica->setUserModifica($user->getId());
  89.             $entityManager->persist($diagnosticosHistoriaClinica);
  90.             $entityManager->flush();
  91.             return $this->json(['estado' => 'ok']);
  92.         }
  93.         return $this->json(['estado' => 'error']);
  94.     }
  95.     /**
  96.      * @Route("/{id}", name="diagnosticos_historia_clinica_show", methods={"GET"})
  97.      */
  98.     public function show(DiagnosticosHistoriaClinica $diagnosticosHistoriaClinica): Response
  99.     {
  100.         return $this->render('diagnosticos_historia_clinica/show.html.twig', [
  101.             'diagnosticos_historia_clinica' => $diagnosticosHistoriaClinica,
  102.         ]);
  103.     }
  104.     /**
  105.      * @Route("/{id}/edit", name="diagnosticos_historia_clinica_edit", methods={"GET","POST"})
  106.      */
  107.     public function edit(Request $requestDiagnosticosHistoriaClinica $diagnosticosHistoriaClinica): Response
  108.     {
  109.         $form $this->createForm(DiagnosticosHistoriaClinicaType::class, $diagnosticosHistoriaClinica);
  110.         $form->handleRequest($request);
  111.         if ($form->isSubmitted() && $form->isValid()) {
  112.             $this->getDoctrine()->getManager()->flush();
  113.             return $this->redirectToRoute('diagnosticos_historia_clinica_index');
  114.         }
  115.         return $this->render('diagnosticos_historia_clinica/edit.html.twig', [
  116.             'diagnosticos_historia_clinica' => $diagnosticosHistoriaClinica,
  117.             'form' => $form->createView(),
  118.         ]);
  119.     }
  120.     /**
  121.      * @Route("/{id}", name="diagnosticos_historia_clinica_delete", methods={"DELETE"})
  122.      */
  123.     public function delete(Request $requestDiagnosticosHistoriaClinica $diagnosticosHistoriaClinica): Response
  124.     {
  125.         if ($this->isCsrfTokenValid('delete'.$diagnosticosHistoriaClinica->getId(), $request->request->get('_token'))) {
  126.             $entityManager $this->getDoctrine()->getManager();
  127.             $entityManager->remove($diagnosticosHistoriaClinica);
  128.             $entityManager->flush();
  129.         }
  130.         return $this->redirectToRoute('diagnosticos_historia_clinica_index');
  131.     }
  132.     /**
  133.      * @Route("/eliminar/{id}", name="diagnosticos_historia_clinica_delete_ajax", methods={"GET"})
  134.      */
  135.     public function eliminar(Request $requestDiagnosticosHistoriaClinica $diagnosticosHistoriaClinica): Response
  136.     {
  137.         
  138.         $entityManager $this->getDoctrine()->getManager();
  139.         $entityManager->remove($diagnosticosHistoriaClinica);
  140.         $entityManager->flush();
  141.         
  142.         return $this->json(['estado' => 'delete']);
  143.     }
  144. }