/** * Método que retorna todos os liovros usados por uma determinada turma * @param Turma $turma * @return ResultSetHydrator Um objeto contendo o resultado da consulta */ public function deTurma(Turma $turma) { $select = new Select(); $this->tableGatway->defineColuna("fk_turma", new ResultSetMap(Column::INTEGER)); $this->tableGatway->defineColuna("ano", new ResultSetMap(Column::INTEGER)); return $this->tableGatway->selectObj($select->distinct("volume")->join("apostilas.livro_turmas_vin", array("pk_livro" => "apostilas.livro_turmas_vin.fk_livro"))->join("apostilas.livro_cat", array("pk_livro_cat" => "fk_livro_cat"))->where(array("fk_turma" => $turma->getId(), "ano" => $turma->getAno()))->order("volume")); }
/** * Método que retorna todos anexos referentes aos conteúdo concluídos no dia da execução do método. * @param Turma $turma A classe referente a aula * @return array Um array de anexos contendo somente os anexos do com objetivo Pós-Aula */ public function anexosPosHoje(Turma $turma) { if (!is_int($turma->getId())) { throw new TurmaException("A turma informada é inválida", 1); } if (!$turma->getId()) { throw new TurmaException("A turma informada é inválida", 2); } if (!Data::validar($turma->getAno(), "Y")) { throw new TurmaException("A turma informada é inválida", 3); } if (!$turma->getStatus()) { throw new TurmaException("A turma informada esta desativada no sistema"); } $hoje = date("Y-m-d"); $select = new Select(); $select->distinct("pk_anexo")->join("apostilas.anexos_vin", array("fk_anexo" => "pk_anexo"))->join("apostilas.acompanhamento", array("apostilas.acompanhamento.fk_conteudo" => "apostilas.anexos_vin.fk_conteudo"))->join("apostilas.capitulo", array("pk_capitulo" => "fk_capitulo"))->join("public.materia_vin", array("pk_materia_vin" => "fk_materia_vin"))->join("public.materia", array("pk_materia" => "fk_materia"))->where("posicao=" . Anexos::ANEXO_POS . " and data_aula='{$hoje}' " . "and apostilas.acompanhamento.status=" . Conteudos::STATUS_ACOMPANAHMENTO_CONCLUIDO); return $this->tablegateway->selectObj($select); }