public function postStoreAndUpdate(Request $request, Guard $auth)
 {
     $this->validate($request, ['numero' => 'required', 'tipo' => 'required']);
     $postulante = Postulante::where('user_id', $auth->id())->first();
     $documento = DocumentoIdentidad::firstOrNew(array('tipo' => $request->get('tipo'), 'postulante' => $postulante->id));
     $documento->numero = $request->get('numero');
     $documento->save();
     return response()->json(['message' => 'Se almacenó los datos del documento de identidad  correctamente.']);
 }
 /**
  * Run the database seeds.
  *
  * @return void
  */
 public function run()
 {
     $faker = Faker::create();
     $tipoPasaporte = array('p', 'ci');
     $postulante = Postulante::all();
     $samples_temp = [];
     foreach ($postulante as $item) {
         $samples_temp[] = ['tipo' => $tipoPasaporte[$faker->numberBetween($min = 0, $max = 1)], 'numero' => $faker->creditCardNumber, 'postulante' => $item->id];
     }
     DocumentoIdentidad::insert($samples_temp);
 }
 public function putUpdate(CretePostulacionRequest $request, Guard $auth)
 {
     $postulante = Postulante::firstOrNew(array('user_id' => $auth->id()));
     $mensaje = '';
     if ($postulante->tipo_estudio === 'Pregrado') {
         if ($request->get('tipo_estudio') === "Postgrado") {
             Pregrado::find($postulante->id)->delete();
         }
     }
     if ($postulante->tipo_estudio === 'Postgrado') {
         if ($request->get('tipo_estudio') === "Pregrado") {
             Postgrado::find($postulante->id)->delete();
         }
     }
     $postulante->fill($request->all());
     $postulante->save();
     $documento = DocumentoIdentidad::where('postulante', $postulante->id)->first();
     $documento->fill($request->all());
     $documento->save();
     // se verifica si el alumno va a postular a una carrera de pregrado o postgrado.
     if ($request->get('tipo_estudio') === 'Pregrado') {
         $pregrado = Pregrado::firstOrNew(array('postulante' => $postulante->id));
         $pregrado->procedencia = $request->get('procedencia');
         $pregrado->save();
         // se verifica si el estudiante es un alumno entrante o saliente.
         if ($request->get('procedencia') === 'UACH') {
             $preUach = PreUach::firstOrNew(array('postulante' => $postulante->id));
             $preUach->email_institucional = $request->get('email_institucional');
             $preUach->grupo_sanguineo = $request->get('grupo_sanguineo');
             $preUach->enfermedades = $request->get('enfermedades');
             $preUach->telefono = $request->get('telefono_2');
             $preUach->ciudad = $request->get('ciudad_2');
             $preUach->direccion = $request->get('direccion_2');
             $preUach->save();
         } else {
             $preNoUach = PreNoUach::firstOrCreate(array('postulante' => $postulante->id));
             //$preNoUach->save();
         }
         $mensaje = 'Su postulación se actualizó correctamente(' . $request->get('tipo_estudio') . ')';
     } else {
         $postgrado = Postgrado::firstOrNew(array('postulante' => $postulante->id));
         $postgrado->procedencia = $request->get('procedencia');
         $postgrado->titulo_profesional = $request->get('titulo_profesional');
         $postgrado->save();
         $mensaje = 'Su postulación se actualizó correctamente(' . $request->get('tipo_estudio') . ')';
     }
     return response()->json(['message' => $mensaje]);
 }