/**
  * Run the database seeds.
  *
  * @return void
  */
 public function run()
 {
     $faker = Faker::create();
     $pUniversidad = PrePostulacionUniversidad::all();
     $samples_temp = [];
     foreach ($pUniversidad as $item) {
         if ($faker->numberBetween($min = 0, $max = 2) == 0) {
             $samples_temp[] = ['pre_postulacion_universidad' => $item->id, 'descripcion' => $faker->paragraph($nbSentences = 3, $variableNbSentences = true)];
         }
     }
     PreOtroFinanciamiento::insert($samples_temp);
 }
 public function getIndex(Guard $auth)
 {
     $postulante = Postulante::where('user_id', $auth->id())->first();
     $postulacion_universidad = PrePostulacionUniversidad::where('postulante', $postulante->id)->first();
     $parametros = array('fecha_llegada' => '', 'fecha_inicio_curso' => '', 'fecha_termino_curso' => '', 'postulante' => $postulante->id, 'nombre_universidad_destino' => $postulacion_universidad->carreraR->facultadR->campusSedesR->universidadR->nombre, 'nombre_coordinador' => $postulacion_universidad->carreraR->facultadR->campusSedesR->departamentosR()->first()->nombre_encargado, "nombre_estudiante" => $postulante->nombre . ' ' . $postulante->apellido_paterno . ' ' . $postulante->apellido_materno, 'asignaturas_homologadas' => $postulante->pregradosR->preUachsR->homologacionesR()->first()->asignaturaHomologadaR->toArray());
     $confirmacion = ConfirmacionLlegada::where('postulante', $postulante->id);
     if ($confirmacion->get()->count() != 0) {
         $parametros['fecha_llegada'] = $confirmacion->first()->fecha_llegada;
         $parametros['fecha_inicio_curso'] = $confirmacion->first()->fecha_inicio_curso;
         $parametros['fecha_termino_curso'] = $confirmacion->first()->fecha_termino_curso;
     }
     return view('confirmacionLlegada.index', compact('parametros'));
 }
 public function getCursosNoUach(Guard $auth)
 {
     $postulante = Postulante::where('user_id', $auth->id())->first();
     $postulacion = PrePostulacionUniversidad::where('postulante', $postulante->id)->first();
     $universidad_id = $postulacion->carreraR->facultadR->campusSedesR->universidad;
     $carreras = Universidad::join('campus_sede', 'universidad.id', '=', 'campus_sede.universidad')->join('facultad', 'campus_sede.id', '=', 'facultad.campus_sede')->join('carrera', 'facultad.id', '=', 'carrera.facultad')->where('universidad.id', $universidad_id)->select('carrera.id', 'carrera.nombre')->orderBy('carrera.nombre')->get();
     $solicitudCurso = $postulante->pregradosR->preNoUachsR->preNuSolicitudCursosR;
     $parametros[] = array('id' => '', 'asignatura' => '', 'observaciones' => '', 'aceptado' => '', 'semestre' => '', 'carreras' => $carreras->toArray());
     if ($solicitudCurso) {
         foreach ($solicitudCurso->detalleSolicitudCursosR()->get() as $item) {
             $parametros[] = array('id' => $item->id, 'asignatura_codigo' => $item->asignatura, 'asignatura_nombre' => $item->asignaturaR->nombre, 'semestre' => $item->asignaturaR->periodo, 'observaciones' => $item->observaciones, 'aceptado' => $item->aceptado, 'nom_carrera' => $item->asignaturaR->carreraR->nombre, 'carreras' => $carreras->toArray());
         }
     }
     //dd($parametros);
     $arra = array('data' => $parametros);
     return json_encode($arra);
 }
 /**
  * Run the database seeds.
  *
  * @return void
  */
 public function run()
 {
     $faker = Faker::create();
     $pregrado = Pregrado::all();
     $semestre = array('semestre_1', 'semestre_2', 'semestre_3', 'semestre_4', 'otro');
     $samples_temp = [];
     foreach ($pregrado as $item) {
         $desde = $faker->dateTimeBetween($startDate = '-1 years', $endDate = 'now');
         $semestre_temp = $semestre[$faker->numberBetween($min = 0, $max = count($semestre) - 1)];
         if ($semestre_temp === 'otro') {
             $samples_temp[] = ['postulante' => $item->postulante, 'anio' => $faker->numberBetween($min = 1990, $max = 2016), 'semestre' => $semestre_temp, 'desde' => $desde, 'hasta' => $faker->dateTimeBetween($startDate = $desde, $endDate = 'now'), 'financiamiento' => $faker->numberBetween($min = 1, $max = 3), 'carrera' => $faker->numberBetween($min = 1, $max = 500)];
         } else {
             $samples_temp[] = ['postulante' => $item->postulante, 'anio' => $faker->numberBetween($min = 1990, $max = 2016), 'semestre' => $semestre_temp, 'desde' => '', 'hasta' => '', 'financiamiento' => $faker->numberBetween($min = 1, $max = 3), 'carrera' => $faker->numberBetween($min = 1, $max = 500)];
         }
     }
     PrePostulacionUniversidad::insert($samples_temp);
 }
 public function putUpdate(PrePostulacionUniversidadRequest $request, Guard $auth)
 {
     $postulante = Postulante::where('user_id', $auth->id())->first();
     if ($postulante->tipo_estudio === "Pregrado") {
         $prePostulacion = PrePostulacionUniversidad::find($request->get('id'));
         //dd();
         if ($prePostulacion->preOtroFinanciamientosR->count()) {
             if ($request->get('financiamiento') != '4') {
                 if ($request->get('financiamiento') != '5') {
                     $otroFinanciamiento = PreOtroFinanciamiento::find($prePostulacion->id);
                     $otroFinanciamiento->delete();
                 }
             }
         }
         $prePostulacion->fill($request->all());
         $prePostulacion->save();
         if ($request->get('financiamiento') === '4' or $request->get('financiamiento') === '5') {
             $otroFinanciamiento = PreOtroFinanciamiento::firstOrNew(array('pre_postulacion_universidad' => $prePostulacion->id));
             //dd($otroFinanciamiento);
             $otroFinanciamiento->descripcion = $request->get('descripcion');
             $otroFinanciamiento->save();
         }
         return response()->json(['message' => 'Se han actualizado los datos de la pestaña referente a intercambio']);
     } else {
         $postPostulacion = PostPostulacionUniversidad::find($postulante->id);
         //dd();
         if ($postPostulacion->postOtroFinanciamientosR->count()) {
             if ($request->get('financiamiento') != '4') {
                 if ($request->get('financiamiento') != '5') {
                     $otroFinanciamiento = PostOtroFinanciamiento::find($postPostulacion->postulante);
                     $otroFinanciamiento->delete();
                 }
             }
         }
         $postPostulacion->postulante = $postulante->id;
         $postPostulacion->tipo = $request->get('programa');
         $postPostulacion->anio = $request->get('anio');
         $postPostulacion->duracion = $request->get('semestre');
         $postPostulacion->desde = $request->get('desde');
         $postPostulacion->hasta = $request->get('hasta');
         $postPostulacion->area = $request->get('area');
         $postPostulacion->nombre_maestria = $request->get('nombreP');
         $postPostulacion->laboratorio = $request->get('nomLab');
         $postPostulacion->contacto_uach = $request->get('contacto');
         $postPostulacion->instituto = $request->get('instituto');
         $postPostulacion->facultad = $request->get('facultad');
         $postPostulacion->financiamiento = $request->get('financiamiento');
         $postPostulacion->save();
         if ($request->get('financiamiento') === '4' or $request->get('financiamiento') === '5') {
             $otroFinanciamiento = PostOtroFinanciamiento::firstOrNew(array('postulante' => $postulante->id));
             //dd($otroFinanciamiento);
             $otroFinanciamiento->descripcion = $request->get('descripcion');
             $otroFinanciamiento->save();
         }
         return response()->json(['message' => 'Se han actualizado los datos de la pestaña referente a intercambio']);
     }
 }