/** * Método load * Recupera um conjunto de objetos (collection) da base de dados através de um critério de seleção * * @access public * @param $criteria Critério de Seleção * @throws Exception Não há transação ativa * @return Resultados da Busca */ function load(TCriteria $criteria = NULL) { $sql = new TSqlSelect(); //Colunas if (count($this->columns) == 1) { $sql->addColumn($this->columns[0]); } else { foreach ($this->columns as $coluna) { $sql->addColumn($coluna); } } //Entidade if (count($this->entity) == 1) { $sql->addEntity($this->entity[0]); } else { foreach ($this->entity as $entidade) { $sql->addEntity($entidade); } } //Criteria if (!isset($criteria)) { $criteria = new TCriteria(); } if (count($this->entity) > 1) { foreach ($this->entity as $entity) { $entity = explode(' ', $entity); $criteria->addFilter($entity[1] . '.excluido', '=', 0); } } else { $criteria->addFilter('excluido', '=', 0); } $sql->setCriteria($criteria); //echo $sql->getInstruction(); //RECUPERA CONEXAO BANCO DE DADOS TTransaction::open('my_bd_site'); if ($conn = TTransaction::get()) { $result = $conn->query($sql->getInstruction()); $results = array(); if ($result) { while ($row = $result->fetchObject(get_class($this))) { $results[] = $row; } } TTransaction::close(); return $results; } else { throw new Exception('Não há transação ativa!'); } }
/** * Método getGaleriaImovel * Obtém a galeria de fotos do imóvel de acordo com o código do imóvel * * @access public * @param int $codigo Código do Imóvel * @return TRepository Coleção de imagens do Imóvel */ public function getGaleriaImovel($codigo) { $this->collectionGaleria = NULL; //TABELA exposition_gallery $criteria = new TCriteria(); $criteria->addFilter('ativo', '=', 1); $criteria->addFilter('codigoImovel', '=', $codigo); $criteria->setProperty('order', 'ordem'); $this->repository->addColumn('imagem'); $this->repository->addColumn('titulo'); $this->repository->addColumn('descricao'); $this->repository->addEntity('galeria'); $this->collectionGaleria = $this->repository->load($criteria); return $this->collectionGaleria; }
public function getEmails() { $this->collectionEmails = NULL; //TABELA exposition_gallery $criteria = new TCriteria(); $criteria->addFilter('ativo', '=', 1); $criteria->setProperty('order', 'email'); $this->repository->addColumn('email'); $this->repository->addEntity('emails'); $this->collectionEmails = $this->repository->load($criteria); return $this->collectionEmails; }
/** * Método getImoveis * Retorna os Imóveis * * @access public * @return TRepository Coleção de Imóveis */ public function getImoveis() { $this->collectionImoveis = NULL; //TABELA exposition_gallery $criteria = new TCriteria(); $criteria->addFilter('ativo', '=', 1); $criteria->setProperty('order', 'endereco'); $this->repository->addColumn('*'); $this->repository->addEntity('imoveis'); $this->collectionImoveis = $this->repository->load($criteria); return $this->collectionImoveis; }
public function getTelefones() { $this->collectionTelefones = NULL; //TABELA exposition_gallery $criteria = new TCriteria(); $criteria->addFilter('ativo', '=', 1); $criteria->setProperty('order', 'codigo'); $this->repository->addColumn('telefone'); $this->repository->addEntity('telefones'); $this->collectionTelefones = $this->repository->load($criteria); return $this->collectionTelefones; }
/** * Método getLocalizacoes * Retorna as localizações * * @access public * @return TRepository Coleção de Localizações */ public function getCategorias() { $this->collectionCategoria = NULL; //TABELA exposition_gallery $criteria = new TCriteria(); $criteria->addFilter('ativo', '=', 1); $criteria->setProperty('order', 'categoria'); $this->repository->addColumn('codigo'); $this->repository->addColumn('categoria'); $this->repository->addEntity('categoriaimoveis'); $this->collectionCategoria = $this->repository->load($criteria); return $this->collectionCategoria; }
/** * Método Construtor * * @access private * @return void */ public function __construct() { $this->collection = new TList(); $this->collection->setTituloPagina('Imóveis'); $this->collection->addColumn('i.codigo'); $this->collection->addColumn('c.categoria'); $this->collection->addColumn('i.endereco'); $this->collection->addColumn('i.numero'); $this->collection->addColumn('i.bairro'); $this->collection->addColumn('i.cidade'); $this->collection->addColumn('i.preco'); $this->collection->addColumn('s.situacao'); $this->collection->addColumn('i.ativo'); $this->collection->addEntity('imoveis i'); $this->collection->addEntity('categoriaImoveis c'); $this->collection->addEntity('situacaoImoveis s'); $criteria = new TCriteria(); $criteria->addFilter('c.codigo', '=', 'i.categoria'); $criteria->addFilter('s.codigo', '=', 'i.situacao'); $this->collection->setCriteria($criteria); $this->listagem = $this->collection->show(); }
/** * Método getLocalizacoes * Retorna as localizações * * @access public * @return TRepository Coleção de Localizações */ public function getSituacoes() { $this->collectionSituacao = NULL; //TABELA exposition_gallery $criteria = new TCriteria(); $criteria->addFilter('ativo', '=', 1); $criteria->setProperty('order', 'situacao'); $this->repository->addColumn('codigo'); $this->repository->addColumn('situacao'); $this->repository->addEntity('situacaoimoveis'); $this->collectionSituacao = $this->repository->load($criteria); return $this->collectionSituacao; }
/** * Método Construtor * * @access private * @return void */ public function __construct() { $this->collection = new TList(); $this->collection->setTituloPagina('Subcategoria Produtos'); $this->collection->addColumn('s.codigo'); $this->collection->addColumn('c.categoria'); $this->collection->addColumn('s.subcategoria'); $this->collection->addColumn('s.ativo'); $this->collection->addEntity('subcategoriaprodutos s'); $this->collection->addEntity('categoriaprodutos c'); $criteria = new TCriteria(); $criteria->addFilter('s.categoria', '=', 'c.codigo'); $this->collection->setCriteria($criteria); $this->listagem = $this->collection->show(); }
/** * Método getCollectionGalerias * Obtém coleção de Galerias * * @access public * @return tbGaleria Listagem de Galeria */ public function getCollectionGalerias() { $this->repository = new TRepository(); $this->collectionGaleria = NULL; $this->repository->addEntity('galeria g'); $this->repository->addEntity('galeriaimagens i'); $this->repository->addColumn('g.codigo'); $this->repository->addColumn('g.titulo'); $this->repository->addColumn('g.descricao'); $this->repository->addColumn('i.imagem'); $criteria = new TCriteria(); $criteria->addFilter('g.ativo', '=', 1); $criteria->addFilter('i.ativo', '=', 1); $criteria->addFilter('g.codigo', '=', 'i.codigoGaleria'); $criteria->setProperty('group', 'g.codigo'); $criteria->setProperty('order', 'g.titulo'); $this->categoriasProduto = $this->repository->load($criteria); return $this->categoriasProduto; }
/** * Método getUserByEmail * Obtem o usuario de acordo com o E-mail * * @access public * @param $email E-mail do usuario a ser buscado * @return tbUsuario Usuario */ public function getUserByEmail($email) { $this->collectionUsuario = NULL; //TABELA exposition_gallery $criteria = new TCriteria(); $criteria->addFilter('email', '=', $email); //$criteria->setProperty('order', 'nome'); $this->repository = new TRepository(); $this->repository->addColumn('*'); $this->repository->addEntity('usuarios'); $this->collectionUsuario = $this->repository->load($criteria); return $this->collectionUsuario[0]; }
/** * Método getImagens * Obtém a coleçao de imagens de acordo com o codigo da pagina * * @access public * @param $codigo Codigo a ser buscado * @return TRepository Coleçao de imagens da pagina */ public function getImagens($codigo) { $this->collectionImagens = NULL; $this->repository->addColumn('imagem'); $this->repository->addColumn('titulo'); $this->repository->addColumn('descricao'); $this->repository->addEntity('galeriaimagens'); $criteria = new TCriteria(); $criteria->addFilter('codigoPagina', '=', $codigo); $criteria->setProperty('order', 'ordem'); $this->collectionImagens = $this->repository->load($criteria); return $this->collectionImagens; }
if ($tabela == 'imoveis') { $listagem->setTituloPagina('Imóveis'); $listagem->addColumn('i.codigo'); $listagem->addColumn('c.categoria'); $listagem->addColumn('i.endereco'); $listagem->addColumn('i.numero'); $listagem->addColumn('i.bairro'); $listagem->addColumn('i.cidade'); $listagem->addColumn('i.preco'); $listagem->addColumn('s.situacao'); $listagem->addColumn('i.ativo'); $listagem->addEntity('imoveis i'); $listagem->addEntity('categoriaImoveis c'); $listagem->addEntity('situacaoImoveis s'); $criteria = new TCriteria(); $criteria->addFilter('c.codigo', '=', 'i.categoria'); $criteria->addFilter('s.codigo', '=', 'i.situacao'); $listagem->setCriteria($criteria); } else { if ($tabela == 'portifolio') { $listagem->setTituloPagina('Portifólio'); $listagem->addColumn('codigo'); $listagem->addColumn('imagem'); $listagem->addColumn('titulo'); $listagem->addColumn('url'); $listagem->addColumn('ativo'); $listagem->addEntity($tabela); } else { if ($tabela == 'depoimentos') { $listagem->setTituloPagina('Depoimentos'); $listagem->addColumn('codigo');
/** * M?odo getSituacoes * Obtem a lista de todas as situacoes de im?eis da cidade e estado * * @access public * @param $cidade Cidade Selecionada * @param $estado Estado Selecionado * @return TRepository Cole?o de Im?eis */ public function getSituacoes($cidade, $estado) { $this->collectionImoveis = NULL; $this->repository = new TRepository(); //TABELA exposition_gallery $criteria = new TCriteria(); $criteria->addFilter('i.situacao', '=', 's.codigo'); $criteria->addFilter('i.ativo', '=', 1); $criteria->addFilter('i.cidade', '=', $cidade); $criteria->addFilter('i.estado', '=', $estado); $criteria->setProperty('order', 's.situacao'); $this->repository->addColumn('DISTINCT s.situacao'); $this->repository->addEntity('imoveis i'); $this->repository->addEntity('situacaoImoveis s'); $this->collectionImoveis = $this->repository->load($criteria); return $this->collectionImoveis; }
/** * Método getSubCategorias * Obtém listagem de subcategorias ativas * * @access public * @return tbSubCategoriasProdutos Listagem de Categorias */ public function getSubCategorias($categoria) { $this->repository = new TRepository(); $this->categoriasProduto = NULL; $this->repository->addEntity('subcategoriaprodutos'); $this->repository->addColumn('codigo'); $this->repository->addColumn('subcategoria'); $criteria = new TCriteria(); $criteria->addFilter('ativo', '=', 1); $criteria->addFilter('categoria', '=', $categoria); $criteria->setProperty('order', 'subcategoria'); $this->categoriasProduto = $this->repository->load($criteria); return $this->categoriasProduto; }
/** * Método deleteFisico * Exclui um objeto da base de dados através de um Código * * @since 1.3 * @access public * @param $codigo Código do objeto * @throws Exception Não há transação ativa * @return boolean Resultado da operação de delete */ public function deleteFisico($codigo = NULL) { $codigo = $codigo ? $codigo : $this->codigo; // cria instrução SQL $sql = new TSqlDeleteFisico(); $sql->addEntity($this->getEntity()); $criteria = new TCriteria(); $criteria->addFilter('codigo', '=', $codigo); $sql->setCriteria($criteria); //RECUPERA CONEXAO BANCO DE DADOS TTransaction::open('my_bd_site'); if ($conn = TTransaction::get()) { $result = $conn->exec($sql->getInstruction()); TTransaction::close(); return $result; } else { throw new Exception('Não há transação ativa'); } }
/** * Método Construtor * * @access private * @return void */ public function __construct() { $this->controlador = new controladorImoveis(); //Descrição if (isset($_GET['desc'])) { $descricao = $_GET['desc']; $descricao = urldecode($descricao); if (substr_count($descricao, '_') == 4) { $descricao = explode('_', $descricao); //Cidade if (isset($descricao[0])) { $this->cidade = $descricao[0]; $this->cidade = str_replace('-', ' ', $this->cidade); } //Estado if (isset($descricao[1])) { $this->estado = $descricao[1]; $this->estado = str_replace('-', ' ', $this->estado); } //Bairro if (isset($descricao[2])) { $this->bairro = $descricao[2]; $this->bairro = str_replace('-', ' ', $this->bairro); } //Categoria if (isset($descricao[3])) { $this->categoria = $descricao[3]; $this->categoria = str_replace('-', ' ', $this->categoria); } //Situação if (isset($descricao[4])) { $this->situacao = $descricao[4]; $this->situacao = str_replace('-', ' ', $this->situacao); } $this->collectionBairros = $this->controlador->getBairros($this->cidade, $this->estado); $this->collectionCategoria = $this->controlador->getCategorias($this->cidade, $this->estado); $this->collectionSituacao = $this->controlador->getSituacoes($this->cidade, $this->estado); } } //====================INICIO PAGINAÇÃO==================== //Pagina if (isset($_GET['pag'])) { $this->paginaAtual = $_GET['pag']; } else { $this->paginaAtual = 1; } //Inicio Limite de busca if ($this->paginaAtual == 1) { $this->inicio = 0; } else { $this->inicio = ($this->paginaAtual - 1) * 12; } //Descrição da URL $descricaoURL = ''; if (isset($_GET['desc'])) { $descricaoURL = $_GET['desc']; } else { $descricaoURL = (new controladorUrl())->urlAmigavel('Lista de Imóveis'); } //Critério de Seleção $criteria = new TCriteria(); $criteria->addFilter('c.codigo', '=', 'i.categoria'); $criteria->addFilter('s.codigo', '=', 'i.situacao'); $criteria->addFilter('i.ativo', '=', 1); if (isset($this->cidade) && $this->cidade != '') { $criteria->addFilter('i.cidade', 'LIKE', '%' . $this->cidade . '%'); } if (isset($this->estado) && $this->estado != '') { $criteria->addFilter('i.estado', 'LIKE', '%' . $this->estado . '%'); } if (isset($this->bairro) && $this->bairro != '') { $criteria->addFilter('i.bairro', 'LIKE', '%' . $this->bairro . '%'); } if (isset($this->categoria) && $this->categoria != '') { $criteria->addFilter('c.categoria', 'LIKE', '%' . $this->categoria . '%'); } if (isset($this->situacao) && $this->situacao != '') { $criteria->addFilter('s.situacao', 'LIKE', '%' . $this->situacao . '%'); } //Fim Critério de Seleção $this->paginacao = new controladorPaginacao($this->paginaAtual, 12, 3, 'controladorImoveis', 'getTotalImoveis', $criteria, "/imoveis/{$descricaoURL}/0"); //=================FIM PAGINAÇÃO=================================== $this->collectionCidades = $this->controlador->getCidades(); $this->collectionImoveis = $this->controlador->getImoveis($this->cidade, $this->estado, $this->bairro, $this->categoria, $this->situacao, $this->inicio, $this->limite); }