public function submit_aprobacion_postulantes() { if (Auth::check()) { $data["inside_url"] = Config::get('app.inside_url'); $data["user"] = Session::get('user'); $data["permisos"] = Session::get('permisos'); if (in_array('side_nueva_convocatoria', $data["permisos"])) { $idpostulantes_periodos = Input::get('idpostulantes_periodos'); $idperiodos = Input::get('idperiodos'); $idfase = Input::get('idfase'); $comentarios = Input::get('comentarios'); $asistencias = Input::get('asistencias'); $no_asistencias = Input::get('no-asistencias'); $aprobaciones = Input::get('aprobaciones'); $no_aprobaciones = Input::get('no-aprobaciones'); $count = count($idpostulantes_periodos); if ($idfase == 1) { for ($i = 0; $i < $count; $i++) { if ($aprobaciones[$i] == 1 || $no_aprobaciones[$i] == 1) { $postulante_periodo = PostulantesPeriodo::find($idpostulantes_periodos[$i]); $estado_aprobacion_anterior = $postulante_periodo->aprobacion; if ($asistencias[$i] == 1) { $postulante_periodo->asistencia = 1; } else { $postulante_periodo->asistencia = 0; } $postulante_periodo->comentario = $comentarios[$i]; if ($aprobaciones[$i] == 1) { $postulante_periodo->aprobacion = 1; } else { $postulante_periodo->aprobacion = 0; } $postulante_periodo->save(); // Llamo a la función para registrar el log de auditoria $descripcion_log = "Se aprobó / desaprobó al postulante por periodo con id {{$postulante_periodo->idpostulantes_periodos}}"; Helpers::registrarLog(4, $descripcion_log); $postulante = Postulante::searchPostulanteById($postulante_periodo->idpostulantes)->get(); $postulante = $postulante[0]; if ($aprobaciones[$i] == 1 && $estado_aprobacion_anterior != 1) { $postulante_periodo_nuevo = new PostulantesPeriodo(); $postulante_periodo_nuevo->idpostulantes = $postulante_periodo->idpostulantes; $postulante_periodo_nuevo->idperiodos = $postulante_periodo->idperiodos; $postulante_periodo_nuevo->idfases = $idfase + 1; $postulante_periodo_nuevo->save(); Mail::send('emails.aprobacionFasePostulacion', array('postulante' => $postulante), function ($message) use($postulante) { $message->to($postulante->email)->subject('Primera Fase de Postulación - AFI Perú.'); }); // Llamo a la función para registrar el log de auditoria // Llamo a la función para registrar el log de auditoria $descripcion_log = "Se creó al postulante por periodo con id {{$postulante_periodo_nuevo->idpostulantes_periodos}}"; Helpers::registrarLog(3, $descripcion_log); } else { /* Mail::send('emails.desaprobacionFasePostulacion',array('postulante'=> $postulante),function($message) use ($postulante) { $message->to($postulante->email) ->subject('Primera Fase de Postulación - AFI Perú.'); }); */ } } } } if ($idfase == 2) { for ($i = 0; $i < $count; $i++) { if ($aprobaciones[$i] == 1 || $no_aprobaciones[$i] == 1) { $postulante_periodo = PostulantesPeriodo::find($idpostulantes_periodos[$i]); if ($asistencias[$i] == 1) { $postulante_periodo->asistencia = 1; } else { $postulante_periodo->asistencia = 0; } $postulante_periodo->comentario = $comentarios[$i]; if ($aprobaciones[$i] == 1) { $postulante_periodo->aprobacion = 1; } else { $postulante_periodo->aprobacion = 0; } $postulante_periodo->save(); // Llamo a la función para registrar el log de auditoria $descripcion_log = "Se aprobó / desaprobó al postulante por periodo con id {{$postulante_periodo->idpostulantes_periodos}}"; Helpers::registrarLog(4, $descripcion_log); $postulante = Postulante::searchPostulanteById($postulante_periodo->idpostulantes)->get(); $postulante = $postulante[0]; if ($aprobaciones[$i] == 1) { $postulante_periodo_nuevo = new PostulantesPeriodo(); $postulante_periodo_nuevo->idpostulantes = $postulante_periodo->idpostulantes; $postulante_periodo_nuevo->idperiodos = $postulante_periodo->idperiodos; $postulante_periodo_nuevo->idfases = $idfase + 1; $postulante_periodo_nuevo->save(); Mail::send('emails.aprobacionFasePostulacion', array('postulante' => $postulante), function ($message) use($postulante) { $message->to($postulante->email)->subject('Segunda Fase de Postulación - AFI Perú.'); }); // Llamo a la función para registrar el log de auditoria $descripcion_log = "Se creó al postulante por periodo con id {{$postulante_periodo_nuevo->idpostulantes_periodos}}"; Helpers::registrarLog(3, $descripcion_log); } else { /* Mail::send('emails.desaprobacionFasePostulacion',array('postulante'=> $postulante),function($message) use ($postulante) { $message->to($postulante->email) ->subject('Segunda Fase de Postulación - AFI Perú.'); }); */ } } } } if ($idfase == 3) { for ($i = 0; $i < $count; $i++) { if ($aprobaciones[$i] == 1 || $no_aprobaciones[$i] == 1) { $postulante_periodo = PostulantesPeriodo::find($idpostulantes_periodos[$i]); if ($asistencias[$i] == 1) { $postulante_periodo->asistencia = 1; } else { $postulante_periodo->asistencia = 0; } $postulante_periodo->comentario = $comentarios[$i]; if ($aprobaciones[$i] == 1) { $postulante_periodo->aprobacion = 1; } else { $postulante_periodo->aprobacion = 0; } $postulante_periodo->save(); // Llamo a la función para registrar el log de auditoria $descripcion_log = "Se aprobó / desaprobó al postulante por periodo con id {{$postulante_periodo->idpostulantes_periodos}}"; Helpers::registrarLog(4, $descripcion_log); $postulante = Postulante::searchPostulanteById($postulante_periodo->idpostulantes)->get(); $postulante = $postulante[0]; if ($aprobaciones[$i] == 1) { $persona = new Persona(); $persona->nombres = $postulante->nombres; $persona->apellido_pat = $postulante->apellido_pat; $persona->apellido_mat = $postulante->apellido_mat; $persona->fecha_nacimiento = date('Y-m-d H:i:s', strtotime($postulante->fecha_nacimiento)); $persona->direccion = $postulante->direccion; $persona->telefono = $postulante->telefono; $persona->celular = $postulante->celular; $persona->save(); // Llamo a la función para registrar el log de auditoria $descripcion_log = "Se creó la persdona con id {{$persona->idpersonas}}"; Helpers::registrarLog(3, $descripcion_log); // Creo al usuario y le asigno su información de persona $password = Str::random(8); $user = new User(); $user->num_documento = $postulante->num_documento; $user->password = Hash::make($password); $user->idtipo_identificacion = 1; $user->email = $postulante->email; $user->idpersona = $persona->idpersonas; $user->auth_token = Str::random(32); $user->save(); // Llamo a la función para registrar el log de auditoria $descripcion_log = "Se creó el usuario con id {{$user->id}}"; Helpers::registrarLog(3, $descripcion_log); // Registro los perfiles seleccionados $perfil = 3; $users_perfil = new UsersPerfil(); $users_perfil->idusers = $user->id; $users_perfil->idperfiles = $perfil; $users_perfil->save(); // Llamo a la función para registrar el log de auditoria $descripcion_log = "Se creó el usuario por perfil con id {{$users_perfil->idusers_perfiles}}"; Helpers::registrarLog(3, $descripcion_log); // Registro el usuario en el periodo correspondiente $users_periodo = new UsersPeriodo(); $users_periodo->idusers = $user->id; $users_periodo->idperiodos = $postulante_periodo->idperiodos; $users_periodo->save(); // Llamo a la función para registrar el log de auditoria $descripcion_log = "Se creó el usuario por periodo con id {{$users_periodo->idusers_periodos}}"; Helpers::registrarLog(3, $descripcion_log); Mail::send('emails.aprobacionFinalPostulacion', array('user' => $user, 'persona' => $persona, 'password' => $password), function ($message) use($user, $persona) { $message->to($user->email, $persona->nombres)->subject('Registro de nuevo usuario'); }); } else { /* Mail::send('emails.desaprobacionFasePostulacion',array('postulante'=> $postulante),function($message) use ($postulante) { $message->to($postulante->email) ->subject('Tercera Fase de Postulación - AFI Perú.'); }); */ } } } } Session::flash('message', 'Los datos se guardaron correctamente.'); return Redirect::to('convocatorias/list_postulantes/' . $idperiodos); } else { // Llamo a la función para registrar el log de auditoria $descripcion_log = "Se intentó acceder a la ruta '" . Request::path() . "' por el método '" . Request::method() . "'"; Helpers::registrarLog(10, $descripcion_log); Session::flash('error', 'Usted no tiene permisos para realizar dicha acción.'); return Redirect::to('/dashboard'); } } else { return View::make('error/error'); } }
public function submit_repostulacion() { if (Auth::check()) { $data["inside_url"] = Config::get('app.inside_url'); $data["user"] = Session::get('user'); $data["permisos"] = Session::get('permisos'); if (in_array('side_mis_eventos', $data["permisos"])) { $data["user_perfil"] = null; $data["periodo_actual"] = null; $data["usuario_ya_inscrito"] = true; $user_periodo = new UsersPeriodo(); $user_periodo->idusers = Input::get('user_id'); $user_periodo->idperiodos = Input::get('idperiodos'); $user_periodo->save(); // Llamo a la función para registrar el log de auditoria $descripcion_log = "Se creó el usuario por periodo con id {{$user_periodo->idusers_periodos}}"; Helpers::registrarLog(3, $descripcion_log); Session::flash('message', "Se ha registrado correctamente su postulación al nuevo período."); return Redirect::to('/eventos/mis_eventos'); } else { return View::make('error/error'); } } else { return View::make('error/error'); } }