Exemplo n.º 1
0
 /**
  * @param Request                      $request
  * @param UsuariosRepositorioInterface $medicosRepositorio
  * @return \Illuminate\Contracts\Routing\ResponseFactory|\Symfony\Component\HttpFoundation\Response
  */
 public function guardar(Request $request, UsuariosRepositorioInterface $medicosRepositorio)
 {
     $txtNombre = $request->get('txtNombre');
     $txtPaterno = $request->get('txtPaterno');
     $txtMaterno = $request->get('txtMaterno');
     $txtTelefono = $request->get('txtTelefono');
     $txtCelular = $request->get('txtCelular');
     $txtEmail = $request->get('txtEmail');
     $fecha = $request->get('fecha');
     $hora = $request->get('hora');
     $userMedico = base64_decode($request->get('medico'));
     // username del médico
     $opcion = $request->get('opcion');
     //insert or update
     $nuevoPaciente = $request->get('nuevoPaciente');
     $cita = new Cita();
     $medico = $medicosRepositorio->obtenerUsuarioPorUsername($userMedico);
     $paciente = PacientesFactory::crear($medico);
     $pacientesRepositorio = PacientesRepositorioFactory::crear($medico);
     $citaEstatus = new CitaEstatus(1);
     // setear valores al paciente
     $paciente->setNombre($txtNombre);
     $paciente->setPaterno($txtPaterno);
     $paciente->setMaterno($txtMaterno);
     $paciente->setTelefono($txtTelefono);
     $paciente->setCelular($txtCelular);
     $paciente->setEmail($txtEmail);
     $paciente->setNuevoPaciente(false);
     // si es nuevo paciente en sistema
     if ($nuevoPaciente === '1') {
         $paciente->setNuevoPaciente(true);
         // guardar paciente
         $pacientesRepositorio->persistir($paciente);
     } else {
         $paciente->setId(base64_decode($request->get('idPaciente')));
     }
     // setear valores de cita
     $cita->setFecha($fecha);
     $cita->setHora($hora);
     $cita->setMedico($medico);
     $cita->setEstatus($citaEstatus);
     $cita->setPaciente($paciente);
     // echo $opcion;exit;
     if ($opcion === '1') {
         // persistir cita
         if (!$this->citasRepositorio->persistir($cita)) {
             // error
             return response(0);
         }
         // exito!!
         return response(1);
     }
 }
Exemplo n.º 2
0
 /**
  * generar plan en PDF
  * @param string $id
  * @param string $idPaciente
  * @param string $userMedico
  * @param ExpedientesRepositorioInterface $expedientesRepositorio
  * @param PlanTratamientoRepositorioInterface $planesRepositorio
  */
 public function generarPlan($id, $idPaciente, $userMedico, ExpedientesRepositorioInterface $expedientesRepositorio, PlanTratamientoRepositorioInterface $planesRepositorio)
 {
     $id = (int) base64_decode($id);
     $idPaciente = (int) base64_decode($idPaciente);
     $userMedico = base64_decode($userMedico);
     $medico = $this->usuariosRepositorio->obtenerUsuarioPorUsername($userMedico);
     $pacientesRepositorio = PacientesRepositorioFactory::crear($medico);
     $paciente = $pacientesRepositorio->obtenerPacientePorId($idPaciente);
     $expediente = $expedientesRepositorio->obtenerExpedientePorPacienteMedico($paciente, $medico);
     $plan = $planesRepositorio->obtenerPorId($id);
     $reporte = new PlanTratamientoJohanna($plan, $expediente);
     $reporte->SetHeaderMargin(10);
     $reporte->SetMargins(15, 50);
     $reporte->SetAutoPageBreak(true, 20);
     $reporte->generar();
 }
Exemplo n.º 3
0
 /**
  * generar Plan de tratamiento en PDF
  * @param Request $request
  * @param $userMedico
  * @param $idPaciente
  */
 public function plan(Request $request, $userMedico, $idPaciente)
 {
     $idPaciente = (int) base64_decode($idPaciente);
     $userMedico = base64_decode($userMedico);
     $medico = $this->usuariosRepositorio->obtenerUsuarioPorUsername($userMedico);
     $pacientesRepositorio = PacientesRepositorioFactory::crear($medico);
     $paciente = $pacientesRepositorio->obtenerPacientePorId($idPaciente);
     $expediente = $this->expedientesRepositorio->obtenerExpedientePorPacienteMedico($paciente, $medico);
     $plan = $request->session()->get('plan');
     $reporte = new PlanTratamientoJohanna($plan, $expediente);
     $reporte->SetHeaderMargin(10);
     $reporte->SetMargins(15, 50);
     $reporte->SetAutoPageBreak(true, 20);
     $reporte->generar();
 }
Exemplo n.º 4
0
 /**
  * @param                          $idPaciente
  * @param                          $userMedico
  * @param \Illuminate\Http\Request $request
  * @return \Illuminate\Contracts\Routing\ResponseFactory|\Symfony\Component\HttpFoundation\Response
  */
 public function capturarFoto($idPaciente, $userMedico, Request $request)
 {
     // obtener la foto adjuntada
     if ($_FILES['webcam']['error'] !== UPLOAD_ERR_OK) {
         return response(0);
     }
     $idPaciente = (int) base64_decode($idPaciente);
     $userMedico = base64_decode($userMedico);
     $medico = $this->usuariosRepositorio->obtenerUsuarioPorUsername($userMedico);
     $pacientesRepositorio = PacientesRepositorioFactory::crear($medico);
     $paciente = $pacientesRepositorio->obtenerPacientePorId($idPaciente);
     $fotografia = new FotografiaPaciente($_FILES['webcam']['tmp_name']);
     if (!$fotografia->moverATemporal($request->session()->getId(), 300, 200)) {
         return response(0);
     }
     $paciente->setFotografia($fotografia);
     return View::make('expedientes.paciente_foto', compact('paciente'));
 }