/** * Método que retorna todas as materias com aulas amanhã * @param Turma $turma A turma a ser consultada * @return array Um array contendo as matérias com aulas amanhã */ public function turmaAulasAmanha(Turma $turma) { $tableGatway = new TableGatway(new Disciplina(), "public.turma"); $ano = Loader::data("config", "site", "ano_letivo"); $dia = date("N", strtotime("+1 day")); $query = "select distinct on(fk_materia) * " . "from public.turma " . "inner join public.grade_horario on fk_turma=public.turma.pk_turma " . "inner join public.grade on pk_grade_horario=fk_grade_horario " . "inner join public.materia_vin on pk_materia_vin=fk_materia_vin " . "inner join public.materia on pk_materia=fk_materia " . "where public.turma.ano={$ano} " . "and dia={$dia} " . "and pk_turma={$turma->getId()}"; return $tableGatway->querySelect($query); }
/** * Método que retorna o código de associação do aluno com uma turma avançada * @param Aluno $aluno Objeto referente ao aluno * @return int|boolean O código de associação do aluno com a turma avançada ou FALSE caso não encontre * @throws Exception Caso o aluno não esteja devidamente instanciado */ public function pkAlunoTurmaAvancada(Aluno $aluno) { $tableGatway = new TableGatway(new Turma(), "turmas_extras.te_alunos_vin, turmas_extras.te_aulas, alunos_view"); $query = "SELECT distinct on(fk_usuario_aluno) " . "turmas_extras.te_alunos_vin.fk_usuario_aluno " . "FROM turmas_extras.te_alunos_vin, turmas_extras.te_aulas, alunos_view " . "WHERE turmas_extras.te_alunos_vin.fk_usuario_aluno=alunos_view.pk_usuario_aluno " . "and turmas_extras.te_alunos_vin.fk_turma=turmas_extras.te_aulas.fk_turma " . "and alunos_view.ano_mat='" . Loader::data("config", "site", "ano_letivo") . "' " . "and fk_te_tipo=" . Kernel_Models_Turma::EXTRA_COD_METAS_AVA . " " . "and alunos_view.pk_usuario=" . $aluno->getId(); return $tableGatway->querySelect($query); }