예제 #1
0
 public function search(Request $request)
 {
     $rfc = $request->rfc;
     $tipo = $request->tipo_id;
     $today = Carbon::today();
     $today = $today->year . '-' . $today->month . '-' . $today->day;
     $paciente = Paciente::where('rfc', '=', $rfc)->where('tipo_id', '=', $tipo)->first();
     $tipo = Tipo::find($tipo);
     if (isset($paciente)) {
         if ($paciente->count() > 1) {
             $citas = Cita::orderBy('fecha', 'desc')->where('paciente_id', '=', $paciente->id)->take(5)->get();
             $citas->each(function ($citas) {
                 $citas->paciente->tipo;
                 $citas->medico->especialidad;
                 $citas->fecha = fecha_dmy($citas->fecha);
             });
             if ($citas->count() >= 1) {
                 return Response::json($citas, 200);
             } else {
                 $response = array('error' => 'true');
                 return Response::json('No se encontro citas con paciente RFC: ' . $rfc . ' - ' . $tipo->code, 500);
             }
         }
     } else {
         $response = array('error' => 'true');
         return Response::json('No se encontro Paciente con RFC: ' . $rfc . ' - ' . $tipo->code, 500);
     }
 }
 public function index(Request $request, $slug, $date)
 {
     // Gets the query string from our form submission
     $query = $request->rfc;
     $intervaloPrimeravez = '["00:00", "00:00"]';
     // Returns an array of articles that have the query string located somewhere within
     // our articles titles. Paginates them so we can break up lots of search results.
     $pacientes = Paciente::where('rfc', '=', $query)->get();
     $pacientes->each(function ($pacientes) {
         $pacientes->tipo;
     });
     $medico = Medico::findBySlug($slug);
     $medico->especialidad;
     $medico->horario;
     $minutes = $medico->minutes ? $medico->minutes : 20;
     $timeminutes = '+' . $minutes * 4 . ' minutes';
     if (!\Auth::user()->admin()) {
         $intervaloPrimeravez = '["' . $medico->horario->entrada . '","' . date('H:i', strtotime($timeminutes, strtotime($medico->horario->entrada))) . '"]';
     }
     $todas_citas = Cita::getTotalCitas($medico->id, $date);
     $horas_usadas = Cita::where('fecha', '=', $date)->where('medico_id', '=', $medico->id)->lists('horario', 'id')->toArray();
     $horas = array();
     foreach ($horas_usadas as $hora) {
         $horas[] = '["' . Carbon::createFromFormat('H:i', $hora)->toTimeString() . '","' . Carbon::createFromFormat('H:i', $hora)->addMinutes($minutes)->toTimeString() . '"]';
     }
     $horas = implode(",", $horas);
     $entrada = $medico->horario->entrada;
     $salida = $medico->horario->salida;
     // returns a view and passes the view the list of articles and the original query.
     return view('admin.citas.create')->with('pacientes', $pacientes)->with('medico', $medico)->with('date', $date)->with('todas_citas', $todas_citas)->with('horas', $horas)->with('entrada', $entrada)->with('salida', $salida)->with('intervaloPrimeravez', $intervaloPrimeravez)->with('minutes', $minutes);
 }
예제 #3
0
function getRandomeStr($num)
{
    $random_string = randString($num);
    //dd($random_string);
    $is_unique = false;
    while (!$is_unique) {
        $result = Cita::where('folio', '=', $random_string)->first();
        if (!$result) {
            // if you don't get a result, then you're good
            $is_unique = true;
        } else {
            // if you DO get a result, keep trying
            $random_string = randString($num);
        }
    }
    return $random_string;
}
예제 #4
0
 public function medicos_checkbox(Request $request)
 {
     $citas = Cita::where('fecha', '=', $request->date)->whereIn('medico_id', $request->medicos)->get();
     $citas->each(function ($citas) {
         $citas->codigo;
         $citas->medico->especialidad;
         $citas->paciente->tipo;
     });
     $citas = $citas->sortBy('horario')->groupBy('medico_id');
     $mpdf = new mPDF('', 'Legal-L');
     $header = \View('admin.reportes.header')->with('date', $request->date)->render();
     $mpdf->SetFooter('Generado el: {DATE j-m-Y}| AgendaElectronica | ©' . date('Y') . ' ISSSTE BAJA CALIFORNIA');
     $html = \View('admin.reportes.show')->with('citas', $citas)->with('date', $date)->render();
     $pdfFilePath = 'Citas del ' . fecha_dmy($date) . '.pdf';
     $mpdf->setAutoTopMargin = 'stretch';
     $mpdf->setAutoBottomMargin = 'stretch';
     $mpdf->setHTMLHeader($header);
     $mpdf->SetDisplayMode('fullpage');
     $mpdf->WriteHTML($html);
     $mpdf->Output($pdfFilePath, "I");
     //D
 }
예제 #5
0
 public function repetidos()
 {
     $pacientes_ids = Cita::select('paciente_id')->lists('paciente_id')->toArray();
     $pacientes = Paciente::whereNotIn('id', $pacientes_ids)->get();
     foreach ($pacientes as $paciente) {
         echo $paciente->rfc . '/' . $paciente->id . ' - ' . $paciente->nombres . '  ' . $paciente->apellido_pat . '  ' . $paciente->apellido_mat;
         echo '<br>';
         $pa = Paciente::find($paciente->id);
         $pa->delete();
         echo 'Eliminado';
         echo '<br>';
     }
 }
예제 #6
0
 public function custom_update(Request $request, $cita_id)
 {
     $cita = Cita::find($cita_id);
     $cie = Cie::where('code', '=', $request->codigo_cie_id)->first();
     $cita->codigo_cie_id = $cie->id;
     $cita->laboratorio = $request->laboratorio;
     $cita->rayosx = $request->rayosx;
     $cita->interconsulta = $request->interconsulta;
     $cita->pase_otra_unidad = $request->pase_otra_unidad;
     $cita->num_licencia_medica = strtoupper($request->num_licencia_medica);
     $cita->num_de_dias = $request->num_de_dias;
     $cita->num_medicamentos = $request->num_medicamentos;
     $cita->reprogramada = $request->reprogramada;
     $cita->suspendida = $request->suspendida;
     $cita->subsecuente = $request->subsecuente;
     $cita->diferida = $request->diferida;
     $cita->num_otorgados = $request->num_otorgados;
     $cita->primera_vez = $request->primera_vez;
     $cita->concretada = 1;
     $cita->age = $request->age;
     $cita->save();
     Toastr::success('Hoja medica del paciente editada con exito!!');
     return redirect()->route('hojas.index');
 }
예제 #7
0
파일: Cita.php 프로젝트: rikardote/agenda
 public static function getCitas($date, $turno)
 {
     $citas = Cita::getQuery()->select('*')->leftJoin('medicos', 'medicos.id', '=', 'citas.medico_id')->leftJoin('especialidades', 'especialidades.id', '=', 'medicos.especialidad_id')->get();
     return $citas;
 }
예제 #8
0
 public function getfecha()
 {
     $citas = Cita::orderBy('fecha', 'ASC')->where('fecha', '>', '2016-12-31')->get();
     $citas->each(function ($citas) {
         $citas->codigo;
         $citas->medico->especialidad;
         $citas->paciente->tipo;
     });
     return view('test.index')->with('citas', $citas);
 }