Example #1
0
 /**
  * Método que retorna os conteúdos do livro informado com o seu andamento
  * @param Livro $livro O livro alvo da busca
  * @param Disciplina $disciplina A disciplina referente ao conteúdo
  * @throws \GGE\Lib\Base\Exception
  */
 public function deLivroComAcompanhamento(Livro $livro, Disciplina $disciplina)
 {
     $select = new Select();
     return $this->tableGatway->selectObj($select->distinct("sequencial_topico")->columns("*, apostilas.acompanhamento.status as topico_status, " . "data_aula as topico_data_aula ")->join("apostilas.capitulo", array("pk_capitulo" => "fk_capitulo"))->join("public.materia_vin", array("fk_materia_vin" => "pk_materia_vin"))->join("public.materia", array("pk_materia" => "fk_materia"))->join("public.materia_mae", array("pk_materia_mae" => "fk_materia_mae"))->join("public.area", array("pk_area" => "fk_area"))->join("apostilas.acompanhamento", array("pk_conteudo" => "fk_conteudo"))->where("fk_livro={$livro->getId()} " . "and pk_materia={$disciplina->getId()} " . "and (status=" . \Kernel\Modelo\Livro\Topico::STATUS_EM_ANDAMENTO . " " . "or status=" . \Kernel\Modelo\Livro\Topico::STATUS_CONCLUIDO . ") " . "and id=(select max(id) from apostilas.acompanhamento " . "where fk_conteudo=pk_conteudo and status!=" . \Kernel\Modelo\Livro\Topico::STATUS_REVISADO . ") " . "and extract(year from data_aula)=" . Loader::data("config", "site", "ano_letivo"))->order("sequencial_topico"));
 }
Example #2
0
 /**
  * Método que retorna todas as disciplinas existentes em um determinado livro.
  *
  * @param Livro $livro O livro alvo da busca
  *
  * @return ResultSetHydrator Um objeto contendo os dados do retorno da consulta
  */
 public function deLivro(Livro $livro)
 {
     $select = new Select();
     $this->tg->defineColuna('fk_livro', $this->colInt);
     return $this->tg->selectObj($select->join('public.materia_vin', array('fk_materia' => 'pk_materia'))->join('apostilas.capitulo', array('fk_materia_vin' => 'pk_materia_vin'))->where(array('fk_livro' => $livro->getId()))->order("materia_nome"));
 }
Example #3
0
 /**
  * Método que retorna todas as disciplinas existentes em um determinado livro
  * @param Livro $livro O livro alvo da busca
  * @return ResultSetHydrator Um objeto contendo os dados do retorno da consulta
  */
 public function deLivro(Livro $livro)
 {
     $select = new Select();
     $this->tableGatway->defineColuna("fk_livro", new ResultSetMap(Column::INTEGER));
     return $this->tableGatway->selectObj($select->join("public.materia_vin", array("pk_materia" => "fk_materia"))->join("apostilas.capitulo", array("pk_materia_vin" => "fk_materia_vin"))->where(array("fk_livro" => $livro->getId())));
 }