Exemplo n.º 1
0
 /**
  * Método que gera um Select genérico para uso interno da classe
  * 
  * @return Select Retorna um objeto contendo a base para as consultas
  */
 public function select()
 {
     $select = new Select($this->tabela);
     $sqlUsuario = new SqlUsuario();
     $sqlTipo = new SqlTipo();
     $sqlDest = new SqlDestinatario();
     return $select->columns(array("titulo", "texto", "status", "data_inc"), "area_transf_")->columns(array("pk_area_transf" => "pk_area_transferencia"))->join($sqlUsuario->getTabela(), array("pk_usuario" => "{$this->tabela}.fk_usuario_remetente"))->import($sqlUsuario->select())->join($sqlTipo->getTabela(), array("pk_area_transf_tipo" => "{$this->tabela}.fk_area_transf_tipo"))->import($sqlTipo->select())->join($sqlDest->getTabela(), array("fk_area_transferencia" => "pk_area_transferencia"))->import($sqlDest->select());
 }
Exemplo n.º 2
0
 /**
  * Método que retorna uma consulta modelo para uso da classe.
  *
  * @return Select
  */
 public function select()
 {
     $t = $this->tg->getTabela();
     $sqlSubtipo = new SqlSubtipo();
     $sqlUsuario = new SqlUsuario();
     $select = new Select($t);
     return $select->columns(array('fap_obs', 'data_evento', 'data_inc', 'score'), 'fap_registro_')->columns("pk_fap_registro")->join('fap.fap_subtipo', array('pk_fap_subtipo' => 'fk_fap_subtipo'))->import($sqlSubtipo->select())->import($this->usrAutor())->join("public.usuario_professor", array("pk_usuario_professor" => "{$t}.fk_usuario_professor"))->join("public.usuario", array("pk_usuario" => "public.usuario_professor.fk_usuario"))->import($sqlUsuario->select());
 }
Exemplo n.º 3
0
 /**
  * Metodo que retorna uma query básica usada para as buscas.
  *
  * @return Select Um objeto contendo uma query genérica
  */
 public function select()
 {
     $t = $this->tg->getTabela();
     $select = new Select($t);
     $sqlAluno = new SqlAluno();
     $sqlUsuario = new SqlUsuario();
     $sqlSubtipo = new SqlSubTipo();
     return $select->columns(array("data_evento", "score", "obs"), "afa_conceito_aluno_")->columns(array("pk_afa_conceito_aluno", "fk_usuario_coordenador"))->columns(array("afa_conceito_aluno_alvo" => $sqlAluno->select()->columnsReset()->columns(array("usuario||','||usuario_aluno"))->where("pk_usuario_aluno=fk_usuario_aluno")->limit(1), "afa_conceito_aluno_usuario_inc" => $sqlUsuario->select()->columnsReset()->columns(array("usuario||','||funcao_usuario"))->where("pk_usuario={$this->tabela}.fk_usuario_inc")->limit(1)))->join("afa.afa_subtipo_anotacao", array("pk_afa_subtipo_anotacao" => "fk_afa_subtipo_anotacao"))->join("public.usuario_aluno", array("pk_usuario_aluno" => "fk_usuario_aluno"))->join("public.aula", array("pk_aula" => "fk_aula"), Join::LEFT_JOIN)->import($this->usrAutor())->import($sqlSubtipo->select());
 }
Exemplo n.º 4
0
 /**
  * Método que gera um Select genérico para uso interno da classe
  * 
  * @return Select Retorna um objeto contendo a base para as consultas
  */
 public function select()
 {
     $t = $this->tg->getTabela();
     $sqlUnidade = new SqlUnidade();
     $sqlSerie = new SqlSerie();
     $sqlTurma = new SqlTurma();
     $sqlUsuario = new SqlUsuario();
     $select = new Select($t);
     return $select->columns(array("pk_area_transf_dest" => "cod", "area_transf_dest_tipo" => "(case " . "when {$t}.fk_unidade!=0 then '" . Destinatario::UNIDADE . "' " . "when {$t}.fk_serie!=0 then '" . Destinatario::SERIE . "' " . "when {$t}.fk_turma!=0 then '" . Destinatario::TURMA . "' " . "else '" . Destinatario::USUARIO . "' " . "end)", "area_transf_dest_alvo" => "(case " . "when {$t}.fk_unidade!=0 " . "then ({$sqlUnidade->select()->columnsReset()->columns("unidade||''")->where("pk_unidade={$t}.fk_unidade")->limit(1)}) " . "when {$t}.fk_serie!=0 " . "then ({$sqlSerie->select()->columnsReset()->columns("serie||''")->where("pk_serie={$t}.fk_serie")->limit(1)}) " . "when {$t}.fk_turma!=0 " . "then ({$sqlTurma->select()->columnsReset()->columns("turma||''")->where("pk_turma={$t}.fk_turma")->limit(1)}) " . "else ({$sqlUsuario->select()->columnsReset()->columns("usuario||''")->where("pk_usuario={$t}.fk_usuario " . "and {$t}.fk_tipo_usuario=pk_tipo_usuario")->limit(1)}) " . "end)"));
 }
Exemplo n.º 5
0
 /**
  * Método que retorna um select básico para ser usado nas consultas
  * @return Select
  */
 public function select()
 {
     $coordenador = new Coordenador();
     $sqlCoordenacao = new SqlCoordenacao();
     $select = parent::select();
     return $select->columns(array("tipo" => "public.usuario_coordenador.tipo", "status" => "public.usuario_coordenador.status"), $coordenador->getColunaBase())->columns(array("pk_usuario_coordenador"))->join($coordenador->getPerfil()->getTabela(), array("fk_usuario" => "pk_usuario"))->join("public.coordenacao_vin", array("fk_usuario_tipo_vin" => "pk_usuario_tipo_vin"))->join("public.coordenacao", array("pk_coordenacao" => "fk_coordenacao"))->import($sqlCoordenacao->select());
 }
Exemplo n.º 6
0
 /**
  * Método que gera uma consulta basica para ser usada pela classe.
  *
  * @return Select Objeto contendo as consultas básicas
  */
 public function select()
 {
     $responsavel = new Responsavel();
     $tabela = $responsavel->getPerfil()->getTabela();
     $select = parent::select();
     return $select->columns(array("{$responsavel->getColunaBase()}status" => "{$tabela}.status", "pk_usuario_responsavel"))->join($tabela, array('fk_usuario' => 'pk_usuario'));
 }
Exemplo n.º 7
0
 /**
  * Método que gera um select genérico para uso da classe
  * @return Select Um select genérico
  */
 public function select()
 {
     $prof = new Professor();
     $select = parent::select();
     return $select->join($prof->getPerfil()->getTabela(), array("fk_usuario" => "pk_usuario"))->columns("pk_usuario_professor");
 }
Exemplo n.º 8
0
 /**
  * Método usado para adicionar a coluna que informa o usuário que 
  * realizou a inserção do item listado. 
  * Especialização do método original pois esta classe não usa o modelo de logs.
  *
  * @param string $indice A coluna referente ao apontador da tabela
  *
  * @return Select Um objeto Select contendo a coluna e o alias 
  *                para o retorno do usuário 
  */
 protected function usrInsert($indice, $coluna = "usuario_insert")
 {
     $select = new Select('  ');
     $sqlUsuario = new SqlUsuario();
     return $select->columns(array('usuario_insert' => $sqlUsuario->select()->columnsReset()->columns("usuario||','||tipo_usuario||','||" . "funcao_usuario||','||" . "'(0,0,0,abc,0,{$this->tg->getTabela()}.data_inclusao," . "0,000.000.000,asd)'")->where("pk_usuario={$this->tg->getTabela()}.fk_usuario_inc " . 'and pk_tipo_usuario=' . Perfil::COORDENADOR)->limit(1)));
 }
Exemplo n.º 9
0
 /**
  * Método que converte a página em PDF do tópico em arquivo jpg
  * @param int $topicoId O código do tópico
  * @param int $pagina O número da página
  */
 public function getPage()
 {
     $topicoId = $this->get("topico");
     $pagina = $this->get("pagina");
     $sqlLivro = new SqlLivro();
     $sqlUsuario = new SqlUsuario();
     try {
         //Validando o usuário
         if (!isset($_SESSION['usuario'])) {
             throw new Exception("Você precisa estar logado para ter acesso a este recurso");
         }
         $usuario = unserialize($_SESSION['usuario']);
         if (!$usuario instanceof Usuario2) {
             throw new Exception("Você precisa estar logado para ter acesso a este recurso");
         }
         $tipoUsuario = $usuario->get_tipoUsuario();
         $sqlUsuario->get($usuario->get_idUsuario(), new Usuario(new Perfil($tipoUsuario[0]->get_idTipoUsuario())));
         //
         $topico = $sqlLivro->getTopico((int) $topicoId);
         if (!(int) $pagina) {
             throw new Exception("A página informada é inválida");
         }
         if (!$topico->getConteudoDigital()) {
             throw new Exception("Não há conteúdo digitalizado para a página e tópico informados");
         }
         if ($pagina > $topico->getPaginaFinal() || $pagina < $topico->getPaginaInicial()) {
             throw new Exception("Este tópico não possue a página informada");
         }
         if ($topico->getPaginaFinal() - $topico->getPaginaInicial() == 1) {
             $pagina = "";
         } else {
             $pagina = (int) ($pagina - $topico->getPaginaInicial());
         }
         $pathPDF = $topico->getPdfTopico();
         $path = substr($pathPDF, 0, strrpos($pathPDF, "."));
         $pathPNG = "{$path}{$pagina}.png";
         if (!file_exists($pathPNG)) {
             //Convertendo o pdf para png
             throw new \GGE\Lib\Base\Exception("A página não foi encontrada");
         }
         $imagem = new Image($pathPNG);
         $imagem->setNewWidth($this->get("width"));
         $imagem->setNewHeight($this->get("height"));
         $imagem->setQuality(75);
         $imagem->setAntiAlias(TRUE);
         $imagem->setType("");
         $getImage = new GetImage($imagem);
         $getImage->__toString();
         die;
     } catch (SqlException $sql) {
         echo "Ocorreu um erro interno. Tente novamente mais tarde";
     } catch (Exception $exc) {
         echo $exc->getMessage() . "<br>";
     }
 }
Exemplo n.º 10
0
 /**
  * Método que gera uma consulta basica para ser usada pela classe.
  *
  * @return Select Objeto contendo as consultas básicas
  */
 public function select()
 {
     $aluno = new Aluno();
     $select = parent::select();
     return $select->columns(array("aluno_status" => "public.usuario_aluno.status", "pk_usuario_aluno"))->join($aluno->getPerfil()->getTabela(), array('fk_usuario' => 'pk_usuario'));
 }
Exemplo n.º 11
0
 /**
  * Método usado para adicionar a coluna que informa o usuário que 
  * realizou a inserção do item listado. O objeto referente ao usuário 
  * que realizou a inserção é \Kernel\Modelo\Perfis\UsuarioInteracao.
  *
  * @param string $indice A coluna referente ao apontador da tabela
  * @param string $coluna A coluna do usuário de inserção do registro
  *
  * @return Select Um objeto Select contendo a coluna e o alias 
  *                para o retorno do usuário 
  */
 protected function usrInsert($indice, $coluna = "usuario_insert")
 {
     if (!String::validarTipo($indice)) {
         throw new SqlException('A coluna de indice para o usuário ' . 'de inserção é inválida', 99);
     }
     $select = new Select('  ');
     $sqlUsuario = new SqlUsuario();
     return $select->columns(array($coluna => $sqlUsuario->select()->columnsReset()->columns("usuario||','||tipo_usuario||','||" . "funcao_usuario||','||" . Logs::TABELA)->join(Logs::TABELA, array('log_interacao_pk_usuario' => 'pk_usuario', 'log_interacao_pk_tipo_usuario' => 'pk_tipo_usuario'))->where("log_interacao_id_interado={$indice} " . 'and log_interacao_acao=' . Logs::INSERT)->limit(1)));
 }
Exemplo n.º 12
0
 /**
  * Método que atualiza a foto do aluno
  * @param int $pkAluno O código do aluno na tabela de usuários
  */
 private function editarFoto($pkAluno = 0)
 {
     header('Content-Type: application/json; charset=UTF-8');
     $sqlUsuario = new SqlUsuario();
     $usrAux = new Usuarios();
     try {
         $aluno = $usrAux->getAluno((int) $pkAluno);
         if (!isset($_FILES["novafoto"])) {
             throw new Exception("Ocorreu um erro ao tentar atualizar a foto. " . "Recarregue a página e tente novamente");
         }
         $foto = $_FILES["novafoto"];
         $sqlUsuario->atualizarFoto($aluno->defineFoto($foto));
         die(json_encode(array("status" => true, "mensagem" => "Foto editada com sucesso")));
     } catch (Exception $exc) {
         die(json_encode(array("status" => false, "mensagem" => $exc->getMessage())));
     }
 }