예제 #1
0
 public function getDetailed($asignatura_id)
 {
     $user = User::fromToken();
     $resultado = [];
     $unidades = Unidad::where('asignatura_id', '=', $asignatura_id)->where('periodo_id', '=', $user->periodo_id)->orderBy('orden')->get();
     $asignatura = (object) Asignatura::detallada($asignatura_id, $user->year_id);
     foreach ($unidades as $unidad) {
         $subunidades = Subunidad::where('unidad_id', '=', $unidad->id)->orderBy('orden')->get();
         foreach ($subunidades as $subunidad) {
             $notas = Nota::where('subunidad_id', '=', $subunidad->id)->get();
             if (count($notas) == 0) {
                 $notasTemp = Nota::crearNotas($asignatura->grupo_id, $subunidad);
                 $subunidad->notas = $notasTemp;
             } else {
                 $notas = Nota::verificarCrearNotas($asignatura->grupo_id, $subunidad);
                 $subunidad->notas = $notas;
             }
         }
         $unidad->subunidades = $subunidades;
     }
     $alumnos = Grupo::alumnos($asignatura->grupo_id);
     foreach ($alumnos as $alumno) {
         $userData = Alumno::userData($alumno->alumno_id);
         $alumno->userData = $userData;
     }
     // No cambiar el orden!
     array_push($resultado, $asignatura);
     array_push($resultado, $alumnos);
     array_push($resultado, $unidades);
     return $resultado;
 }
예제 #2
0
 public function getDetailed($asignatura_id)
 {
     $user = User::fromToken();
     $asignatura = (object) Asignatura::detallada($asignatura_id, $user->year_id);
     $alumnos = Grupo::alumnos($asignatura->grupo_id);
     foreach ($alumnos as $alumno) {
         $userData = Alumno::userData($alumno->alumno_id);
         $alumno->userData = $userData;
         $consulta = 'SELECT * FROM ausencias a WHERE a.asignatura_id = ? and a.periodo_id = ? and a.alumno_id=?';
         $ausencias = DB::select(DB::raw($consulta), array($asignatura_id, $user->periodo_id, $alumno->alumno_id));
         foreach ($ausencias as $ausencia) {
             $ausencia->mes = date('n', strtotime($ausencia->fecha_hora)) - 1;
             $ausencia->dia = (int) date('j', strtotime($ausencia->fecha_hora));
         }
         $alumno->ausencias = $ausencias;
     }
     // No cambiar el orden!
     $resultado = [];
     array_push($resultado, $asignatura);
     array_push($resultado, $alumnos);
     return $resultado;
 }
예제 #3
0
 public function getShow($asignatura_id)
 {
     $user = User::fromToken();
     $asignatura = Asignatura::detallada($asignatura_id, $user->year_id);
     return $asignatura;
 }