public function putDetailedNotasYear() { $user = User::fromToken(); $grupo_id = Request::input('grupo_id'); $periodo_a_calcular = Request::input('periodo_a_calcular', 10); $alumnos_response = []; $grupo = Grupo::datos($grupo_id); $year = Year::datos($user->year_id); $alumnos = Grupo::alumnos($grupo_id); foreach ($alumnos as $keyAlum => $alumno) { $alumno->notas_asig = $this->definitivas_year_alumno($alumno->alumno_id, $user->year_id, $periodo_a_calcular); $sumatoria_asignaturas_year = 0; $perdidos_year = 0; foreach ($alumno->notas_asig as $keyAsig => $asignatura) { $sumatoria_asignaturas_year += $asignatura->nota_asignatura_year; $perdidos_year += $asignatura->perdidos; } try { $cant = count($alumno->notas_asig); if ($cant == 0) { $alumno->promedio_year = 0; } else { $alumno->promedio_year = $sumatoria_asignaturas_year / $cant; $alumno->perdidos_year = $perdidos_year; } } catch (Exception $e) { $alumno->promedio_year = 0; } array_push($alumnos_response, $alumno); } return ['grupo' => $grupo, 'year' => $year, 'alumnos' => $alumnos_response]; }
public function deleteDestroy($id) { $user = User::fromToken(); $certif = ConfigCertificado::find($id); $certif->delete(); return $certif; }
public function deleteDestroy($id) { $user = User::fromToken(); $frase = Frase::findOrFail($id); $frase->delete(); return $frase; }
public function getConaspiraciones() { $user = User::fromToken(); if ($user->tipo == 'Alumno' || $user->tipo == 'Acudiente') { $votacion = VtVotacion::actualInscrito($user); } else { $votacion = VtVotacion::actual($user); } $aspiraciones = VtAspiracion::where('votacion_id', $votacion->id)->get(); $particip = VtParticipante::one($user->id); $result = array(); foreach ($aspiraciones as $aspira) { $candidatos = VtCandidato::porAspiracion($aspira->id, $user->year_id); $aspira->candidatos = $candidatos; $votado = []; if ($particip) { try { $votado = VtVoto::votesInAspiracion($aspira->id, $particip->id); } catch (Exception $e) { } } $aspira->votado = $votado; array_push($result, $aspira); } return $result; }
public function index() { $user = User::fromToken(); $votacion = VtVotacion::where('actual', '=', true)->where('user_id', $user->id)->where('year_id', $user->year_id)->first(); $aspiraciones = VtAspiracion::where('votacion_id', $votacion->id)->get(); return $aspiraciones; }
public function putCopiar() { $user = User::fromToken(); $grupo_from_id = Request::input('grupo_from_id'); $grupo_to_id = Request::input('grupo_to_id'); $asignatura_to_id = Request::input('asignatura_to_id'); $copiar_subunidades = Request::input('copiar_subunidades'); $copiar_notas = Request::input('copiar_notas'); $periodo_from_id = Request::input('periodo_from_id'); $periodo_to_id = Request::input('periodo_to_id'); $unidades_ids = Request::input('unidades_ids'); $unidades_copiadas = 0; $subunidades_copiadas = 0; $notas_copiadas = 0; foreach ($unidades_ids as $unidad_id) { $unidad_curr = Unidad::findOrFail($unidad_id); $unidad_new = new Unidad(); $unidad_new->definicion = $unidad_curr->definicion; $unidad_new->porcentaje = $unidad_curr->porcentaje; $unidad_new->orden = $unidad_curr->orden; $unidad_new->created_by = $user->user_id; $unidad_new->periodo_id = $periodo_to_id; $unidad_new->asignatura_id = $asignatura_to_id; $unidad_new->save(); $unidades_copiadas++; if ($copiar_subunidades) { $subunidades = Subunidad::deUnidad($unidad_id); foreach ($subunidades as $subunidad) { $sub_new = new Subunidad(); $sub_new->definicion = $subunidad->definicion_subunidad; $sub_new->porcentaje = $subunidad->porcentaje_subunidad; $sub_new->unidad_id = $unidad_new->id; $sub_new->nota_default = $subunidad->nota_default; $sub_new->orden = $subunidad->orden_subunidad; $sub_new->inicia_at = $subunidad->inicia_at; $sub_new->finaliza_at = $subunidad->finaliza_at; $sub_new->created_by = $user->user_id; $sub_new->save(); $subunidades_copiadas++; if ($copiar_notas and $grupo_to_id == $grupo_from_id) { $notas = Subunidad::notas($subunidad->subunidad_id); foreach ($notas as $nota) { $nota_new = new Nota(); $nota_new->nota = $nota->nota; $nota_new->subunidad_id = $sub_new->id; $nota_new->alumno_id = $nota->alumno_id; $nota_new->created_by = $user->user_id; $nota_new->save(); $notas_copiadas++; } } } } } $res = new stdClass(); $res->unidades_copiadas = $unidades_copiadas; $res->subunidades_copiadas = $subunidades_copiadas; $res->notas_copiadas = $notas_copiadas; return (array) $res; }
public function deleteDestroy($id) { $user = User::fromToken(); $aus = Ausencia::findOrFail($id); $aus->delete(); return $aus; }
public function getShow() { $user = User::fromToken(); $votaciones = VtVotacion::actualesInscrito($user, false); // Traer aunque no esté en acción. // Votaciones creadas por el usuario. $consulta = 'SELECT v.id as votacion_id, v.* FROM vt_votaciones v where v.user_id=? and v.year_id=? and v.deleted_at is null'; $votacionesMias = DB::select($consulta, [$user->user_id, $user->year_id]); foreach ($votacionesMias as $key => $votMia) { // Debo crear otro array para verificar que ya no tenga el mismo evento. array_push($votaciones, $votMia); } $cantVot = count($votaciones); for ($j = 0; $j < $cantVot; $j++) { if ($votaciones[$j]->can_see_results) { $aspiraciones = VtAspiracion::where('votacion_id', $votaciones[$j]->votacion_id)->get(); $result = array(); foreach ($aspiraciones as $aspira) { $candidatos = VtCandidato::porAspiracion($aspira->id, $user->year_id); for ($i = 0; $i < count($candidatos); $i++) { $votos = VtVoto::deCandidato($candidatos[$i]->candidato_id, $aspira->id)[0]; $candidatos[$i]->cantidad = $votos->cantidad; $candidatos[$i]->total = $votos->total; } $aspira->candidatos = $candidatos; array_push($result, $aspira); } $votaciones[$j]->aspiraciones = $result; } } return $votaciones; }
public function putUpdate($id) { $user = User::fromToken(); $nota = NotaComportamiento::findOrFail($id); $nota->nota = Request::input('nota'); $nota->save(); $nota = NotaComportamiento::findOrFail($id); return $nota; }
public function getIndex($user_id = '') { $user = User::fromToken(); if ($user_id == '') { $user_id = $user->user_id; } $consulta = 'SELECT * FROM bitacoras where created_by=? order by id desc '; $bits = DB::select($consulta, array($user_id)); return $bits; }
public static function participanteDeAspiracion($aspira_id, $userT = '') { $user = []; if ($userT == '') { $user = User::fromToken(); } else { $user = $userT; } $votacion_id = VtAspiracion::find($aspira_id)->votacion_id; $participante = VtParticipante::where('user_id', $user->id)->where('votacion_id', $votacion_id)->first(); return $participante; }
public function putDetailedNotasYear($grupo_id) { $user = User::fromToken(); $requested_alumnos = ''; if (Request::has('requested_alumnos')) { $requested_alumnos = Request::get('requested_alumnos'); } $boletines = $this->detailedNotasGrupo($grupo_id, $user, $requested_alumnos); //$grupo->alumnos = $alumnos; //$grupo->asignaturas = $asignaturas; //return (array)$grupo; return $boletines; }
public function getCertificadoGrupo($grupo_id) { $user = User::fromToken(); //$alumno_id = Input::get('alumno_id'); // $boletines = $this->detailedNotasGrupo($grupo_id, $user); $bol = new BolfinalesController(); $datos = $bol->detailedNotasGrupo($grupo_id, $user); $content = View::make('certificados.estudio')->with('grupo', $datos[0])->with('year', $datos[1])->with('alumnos', $datos[2])->with('User', User::class); $pdf = App::make('dompdf.wrapper'); $pdf->loadHTML($content); return $pdf->download(); return $content; }
public function postStore() { $user = User::fromToken(); try { $grado = new Grado(); $grado->nombre = Request::input('nombre'); $grado->abrev = Request::input('abrev'); $grado->orden = Request::input('orden'); $grado->nivel_educativo_id = Request::input('nivel')['id']; $grado->save(); return $grado; } catch (Exception $e) { return abort(400, 'Datos incorrectos'); } }
public function getShowProfesor($profesor_id) { $user = User::fromToken(); $year = Year::datos_basicos($user->year_id); $asignaturas = Profesor::asignaturas($user->year_id, $profesor_id); $periodos = Periodo::where('year_id', '=', $user->year_id)->get(); $year->periodos = $periodos; $profesor = Profesor::detallado($profesor_id); foreach ($asignaturas as $keyAsig => $asignatura) { $alumnos = Grupo::alumnos($asignatura->grupo_id); $asignatura->nombres_profesor = $profesor->nombres_profesor; $asignatura->apellidos_profesor = $profesor->apellidos_profesor; $asignatura->foto_nombre = $profesor->foto_nombre; $asignatura->foto_id = $profesor->foto_id; $asignatura->sexo = $profesor->sexo; $asignatura->periodosProm = Periodo::where('year_id', '=', $user->year_id)->get(); // A cada alumno le daremos los periodos y la definitiva de cada periodo foreach ($alumnos as $keyAl => $alumno) { $periodosTemp = Periodo::where('year_id', '=', $user->year_id)->get(); foreach ($periodosTemp as $keyPer => $periodo) { // Unidades y subunidades de la asignatura en el periodo $asignaturaTemp = Asignatura::find($asignatura->asignatura_id); $asignaturaTemp->unidades = Unidad::deAsignatura($asignaturaTemp->id, $periodo->id); foreach ($asignaturaTemp->unidades as $unidad) { $unidad->subunidades = Subunidad::deUnidad($unidad->unidad_id); } // Traemos las notas de esta asignatura segun las unidades y subunidades calculadas arriba Asignatura::calculoAlumnoNotas($asignaturaTemp, $alumno->alumno_id); $periodo->nota_asignatura = $asignaturaTemp->nota_asignatura; unset($asignaturaTemp); } $alumno->periodos = $periodosTemp; unset($periodosTemp); foreach ($asignatura->periodosProm as $keyPer => $periodo) { if (!$periodo->sumatoria) { $periodo->sumatoria = 0; } foreach ($alumno->periodos as $keyPerAl => $periodo_alum) { if ($periodo_alum->id == $periodo->id) { $periodo->sumatoria += $periodo_alum->nota_asignatura; } } } } $asignatura->alumnos = $alumnos; } return array($year, $asignaturas); }
public function putUpdate($id) { $user = User::fromToken(); $bit = Bitacora::crear($user->user_id); try { $bit->periodo_id = $user->periodo_id; $nota = Nota::findOrFail($id); $bit->affected_element_old_value_int = $nota->nota; // Guardo la nota antigua $nota->nota = Request::input('nota'); $bit->affected_element_new_value_int = $nota->nota; // Guardo la nota nueva $nota->updated_by = $user->user_id; $nota->save(); } catch (Exception $e) { return abort(400, 'No se pudo guardar la nota'); } $bit->saveUpdateNota($nota); return $nota; }
public function getIndex() { $user = User::fromToken(); $votacion = VtVotacion::where('in_action', '=', true)->first(); $hayVotacion = false; $signed = false; $voted = false; $rutear = false; if ($votacion) { $hayVotacion = true; $signed = VtParticipante::isSigned($user->user_id, $votacion->id); if ($signed) { $voted = VtVoto::hasVoted($votacion->id, $signed->id); $rutear = true; } $eventos = array('votaciones' => array('hay' => $hayVotacion, 'signed' => $signed, 'voted' => $voted, 'rutear' => $rutear, 'state' => 'votaciones.votar')); return $eventos; } else { $eventos = array('votaciones' => array('hay' => false, 'signed' => false, 'voted' => false, 'rutear' => false, 'state' => '')); return $eventos; } }
public function getTrashed() { $user = User::fromToken(); $previous_year = $user->year - 1; $id_previous_year = 0; $previous_year = Year::where('year', '=', $previous_year)->first(); $consulta = 'SELECT m2.matricula_id, a.id as alumno_id, a.no_matricula, a.nombres, a.apellidos, a.sexo, a.user_id, a.fecha_nac, a.ciudad_nac, a.celular, a.direccion, a.religion, m2.year_id, m2.grupo_id, m2.nombregrupo, m2.abrevgrupo, IFNULL(m2.actual, -1) as currentyear, u.username, u.is_superuser, u.is_active FROM alumnos a left join (select m.id as matricula_id, g.year_id, m.grupo_id, m.alumno_id, g.nombre as nombregrupo, g.abrev as abrevgrupo, 0 as actual from matriculas m INNER JOIN grupos g ON m.grupo_id=g.id and g.year_id=:id_previous_year and m.alumno_id NOT IN (select m.alumno_id from matriculas m INNER JOIN grupos g ON m.grupo_id=g.id and g.year_id=:year_id) union select m.id as matricula_id, g.year_id, m.grupo_id, m.alumno_id, g.nombre as nombregrupo, g.abrev as abrevgrupo, 1 AS actual from matriculas m INNER JOIN grupos g ON m.grupo_id=g.id and g.year_id=:year2_id )m2 on a.id=m2.alumno_id left join users u on u.id=a.user_id where a.deleted_at is not null'; return DB::select(DB::raw($consulta), array(':id_previous_year' => $id_previous_year, ':year_id' => $user->year_id, ':year2_id' => $user->year_id)); }
public function putCambiarLogo() { $user = User::fromToken(); $conf = Configuracion::all()->first(); $conf->logo_id = Request::input('logo_id'); $conf->save(); return $conf; }
public function putSetLocked() { $user = User::fromToken(); $id = Request::input('id'); $locked = Request::input('locked', true); $vot = VtParticipante::where('id', $id)->update(['locked' => $locked]); return 'Cambiado'; }
public function deleteDestroy($id) { $user = User::fromToken(); $contr = Contrato::destroy($id); return $contr; }
public function getEnAccionInscrito() { $user = User::fromToken(); $votaciones = VtVotacion::actualesInscrito($user, true); $cantVot = count($votaciones); if ($cantVot > 0) { for ($i = 0; $i < $cantVot; $i++) { $completos = VtVotacion::verificarVotosCompletos($votaciones[$i]->votacion_id, $votaciones[$i]->participante_id); $votaciones[$i]->completos = $completos; $aspiraciones = VtAspiracion::where('votacion_id', $votaciones[$i]->votacion_id)->get(); $cantAsp = count($aspiraciones); if ($cantAsp > 0) { for ($j = 0; $j < $cantAsp; $j++) { $candidatos = VtCandidato::porAspiracion($aspiraciones[$j]->id, $votaciones[$i]->year_id); for ($k = 0; $k < count($candidatos); $k++) { $votos = VtVoto::deCandidato($candidatos[$k]->candidato_id, $aspiraciones[$j]->id)[0]; $candidatos[$k]->cantidad = $votos->cantidad; $candidatos[$k]->total = $votos->total; } $aspiraciones[$j]->candidatos = $candidatos; } $votaciones[$i]->aspiraciones = $aspiraciones; } else { $votaciones[$i]->aspiraciones = []; } } } else { return ['msg' => 'No está inscrito en algún evento que se encuentre en acción.']; } return $votaciones; }
public function putCambiarlogocolegio() { $user = User::fromToken(); $year = Year::findOrFail($user->year_id); $year->logo_id = Request::input('logo_id'); $year->save(); return $year; }
public function getTrashed() { $user = User::fromToken(); $consulta = 'SELECT m2.matricula_id, a.id as alumno_id, a.no_matricula, a.nombres, a.apellidos, a.sexo, a.user_id, a.fecha_nac, a.ciudad_nac, a.celular, a.direccion, a.religion, m2.year_id, m2.grupo_id, m2.nombregrupo, m2.abrevgrupo, IFNULL(m2.actual, -1) as currentyear, u.username, u.is_superuser, u.is_active FROM alumnos a left join (select m.id as matricula_id, g.year_id, m.grupo_id, m.alumno_id, g.nombre as nombregrupo, g.abrev as abrevgrupo, 0 as actual from matriculas m INNER JOIN grupos g ON m.grupo_id=g.id and g.year_id=1 and m.alumno_id NOT IN (select m.alumno_id from matriculas m INNER JOIN grupos g ON m.grupo_id=g.id and g.year_id=2) union select m.id as matricula_id, g.year_id, m.grupo_id, m.alumno_id, g.nombre as nombregrupo, g.abrev as abrevgrupo, 1 AS actual from matriculas m INNER JOIN grupos g ON m.grupo_id=g.id and g.year_id=2 )m2 on a.id=m2.alumno_id left join users u on u.id=a.user_id where a.deleted_at is not null order by p.nombres, p.apellidos'; return DB::select(DB::raw($consulta)); }
public function putRestore($id) { $user = User::fromToken(); $grupo = Grupo::onlyTrashed()->findOrFail($id); if ($grupo) { $grupo->restore(); } else { return abort(400, 'Grupo no encontrado en la Papelera.'); } return $grupo; }
public function getListasignaturasyear($profesor_id, $periodo_id) { $user = User::fromToken(); $year = Year::de_un_periodo($periodo_id); $asignaturas = Profesor::asignaturas($year->id, $profesor_id); foreach ($asignaturas as $asignatura) { $asignatura->unidades = Unidad::informacionAsignatura($asignatura->asignatura_id, $periodo_id); } return $asignaturas; }
public function getTrashed() { $user = User::fromToken(); $consulta = 'SELECT u.id, u.definicion, u.porcentaje, u.periodo_id, u.orden, p.numero as numero_periodo, p.actual as periodo_actual, a.id as asignatura_id, a.materia_id, m.materia, m.alias as alias_materia, gru.id as grupo_id, gru.nombre as nombre_grupo, gru.abrev as abrev_grupo FROM unidades u inner join asignaturas a on a.id=u.asignatura_id inner join materias m on m.id=a.materia_id inner join grupos gru on gru.id=a.grupo_id inner join periodos p on p.id=u.periodo_id where u.deleted_at is not null'; return DB::select(DB::raw($consulta)); }
public function putSolicitarCambios() { $user = User::fromToken(); $tipo = Request::input('tipo'); $id = Request::input('persona_id'); if ($tipo == 'Al') { $alumno = Alumno::where('id', $id)->first(); /* $consulta = 'SELECT c.id, c.asked_by_user_id, c.asked_to_user_id, c.asked_to_user_id, c.comentario_pedido, a.id as alumno_id, a.nombres as nombres_alum, a.apellidos as apellidos_alum, c.rechazado_at, c.accepted_at, c.periodo_asked_id, c.year_asked_id, c.created_at, c.deleted_at, c.deleted_by, u.tipo FROM change_asked c inner join users u on u.id=c.asked_by_user_id left join alumnos a on a.user_id=u.id WHERE c.deleted_at is null'; $cambios = DB::select($consulta); */ $cambios = []; if ($alumno->nombres != Request::input('nombres') && Request::input('nombres')) { $cambios['nombres'] = Request::input('nombres'); } if ($alumno->apellidos != Request::input('apellidos') && Request::input('apellidos')) { $cambios['apellidos'] = Request::input('apellidos'); } if ($alumno->sexo != Request::input('sexo') && Request::input('sexo')) { $cambios['sexo'] = Request::input('sexo'); } if ($alumno->fecha_nac != Request::input('fecha_nac') && Request::input('fecha_nac')) { $fecha_nac_new = Request::input('fecha_nac'); $fecha_nac_old = $alumno->fecha_nac->format('Y-m-d'); if ($fecha_nac_new != $fecha_nac_old) { $cambios['fecha_nac'] = $fecha_nac_new; $cambios['fecha_nac_old'] = $fecha_nac_old; } } if (Request::has('ciudad_nac')) { $ciudad_id = null; if (Request::input('ciudad_nac')['id']) { $ciudad_id = Request::input('ciudad_nac')['id']; } else { $ciudad_id = Request::input('ciudad_nac'); } if ($alumno->ciudad_nac != $ciudad_id && $ciudad_id) { $cambios['ciudad_nac'] = $ciudad_id; } } return $cambios; } }
public function getIndex() { $user = User::fromToken(); $escalas = EscalaDeValoracion::where('year_id', '=', $user->year_id)->orderBy('orden')->get(); return $escalas; }
public function postIndex(Request $request) { $userTemp = []; $token = []; try { $token = JWTAuth::parseToken(); if ($token) { $userTemp = User::fromToken(false, $request); } else { if (!Request::has('username') && Request::input('username') != '') { return response()->json(['error' => 'Token expirado'], 401); } } } catch (Tymon\JWTAuth\Exceptions\TokenExpiredException $e) { if (!count(Input::all())) { return response()->json(['error' => 'token_expired'], 401); } } catch (JWTException $e) { // No haremos nada, continuaremos verificando datos. } $credentials = ['username' => Request::input('username'), 'password' => (string) Request::input('password')]; if (!$userTemp) { if (Auth::attempt($credentials)) { $userTemp = Auth::user(); } else { if (Request::has('username') && Request::input('username') != '') { $pass = Hash::make((string) Request::input('password')); $usuario = User::where('password', '=', $pass)->where('username', '=', Request::input('username'))->get(); if (count($usuario) > 0) { $userTemp = Auth::login($usuario[0]); } else { $usuario = User::where('password', '=', (string) Request::input('password'))->where('username', '=', Request::input('username'))->get(); if (count($usuario) > 0) { $usuario[0]->password = Hash::make((string) $usuario[0]->password); $usuario[0]->save(); $userTemp = Auth::loginUsingId($usuario[0]->id); } else { return abort(400, 'Credenciales inválidas.'); } } } else { return abort(401, 'Por favor ingrese de nuevo.'); } } if (!$token) { if (!($token = JWTAuth::attempt($credentials))) { return abort('401', 'Usuario o contraseña incorrectos para el token.'); } } $userTemp = User::fromToken($token); // Ahora verificamos si está inscrito en alguna votación $votaciones = VtVotacion::actualesInscrito($userTemp, true); $votacionesResult = []; $cantVot = count($votaciones); if ($cantVot > 0) { for ($i = 0; $i < $cantVot; $i++) { $completos = VtVotacion::verificarVotosCompletos($votaciones[$i]->votacion_id, $votaciones[$i]->participante_id); if (!$completos) { array_push($votacionesResult, $votaciones[$i]); } } $cantVot = count($votacionesResult); if ($cantVot > 0) { $userTemp->votaciones = $votacionesResult; } } } //return json_decode(json_encode($user[0]), true); return json_decode(json_encode($userTemp), true); }