Exemple #1
0
 /**
  * Método responsável pela tradução dos dados retornados pela consulta para o modelo Livro.
  *
  * @param array $dados
  */
 public function exchangeArray(array $dados)
 {
     $p = "livro_";
     $this->livroDigitalizado = (bool) (empty($dados["{$p}digital"]) ? "" : $dados["{$p}digital"]);
     $this->disciplina->exchangeArray($dados);
     parent::exchangeArray($dados);
     if (!empty($dados["livro_mat_desc_video"])) {
         $this->video = new Youtube($dados["livro_mat_desc_video"]);
     }
 }
 /**
  * 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"));
 }
 /**
  * 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())));
 }
 /**
  * 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"));
 }
Exemple #5
0
 /**
  * Substituindo o método de mapeamento do Livro
  * @param array $dados
  */
 public function exchangeArray(array $dados)
 {
     parent::exchangeArray($dados);
     $this->serieId = (int) (empty($dados["pk_serie"]) ? 0 : $dados["pk_serie"]);
     $this->serie = empty($dados["serie_nome"]) ? "" : $dados["serie_nome"];
     $this->disciplinaId = (int) (empty($dados["pk_materia"]) ? 0 : $dados["pk_materia"]);
     $this->disciplina = empty($dados["materia_nome"]) ? "" : $dados["materia_nome"];
     $this->frenteId = (int) (empty($dados["pk_materia_mae"]) ? 0 : $dados["pk_materia_mae"]);
     $this->frente = empty($dados["materia_mae_nome"]) ? "" : $dados["materia_mae_nome"];
     $this->capituloId = (int) (empty($dados["pk_capitulo"]) ? 0 : $dados["pk_capitulo"]);
     $this->capitulo = empty($dados["capitulo_nome"]) ? "" : $dados["capitulo_nome"];
     $this->conteudoId = (int) (empty($dados["pk_conteudo"]) ? 0 : $dados["pk_conteudo"]);
     $this->conteudo = empty($dados["conteudo_nome"]) ? "" : $dados["conteudo_nome"];
 }