Documentação Técnica: Integração dos Imóveis no Website

Voltar

Informações gerais

O Vista.Imobi utiliza banco de dados MySQL. Este banco de dados fica hospedado em um provedor de internet. Desta forma, a integração do Vista.Imobi (banco de dados MySQL) e o Website pode ser desenvolvida por completo. Os arquivos das fotos dos imóveis ficam em uma pasta no FTP da hospedagem, disponíveis para serem exibidas.

Estrutura do banco de dados

A estrutura para a integração do Website na parte dos imóveis (imóveis em destaque, buscas, detalhes) é composta pelas seguintes tabelas:
   
CADIMO: Esta tabela representa o cadastro dos imóveis.
   
  Estrutura:
  CODIGO: Código sequencial numérico gerado pelo Vista.Imobi;
CODIGO_CS: Código da Agência do imóvel;
CODIGO_CT: Código do Tipo do imóvel;
CODIGO_M: Código da Moeda do imóvel;
PLACA: Codigo digitado pela imobiliária;
STATUS: Texto indentificando o Status do Imóvel. Exemplo: 'Ativo', 'Suspenso', 'Vendido';
VER_WEB: Campo de checagem para determinar se o Imovel deve ser exibido no site;
DETAQUE_WEB: Campo de checagem para determinar se o Imovel deve ser exibido em destaque;
GMAPS_LAT: Campo que contém a latitude da posição do imóvel no Google Maps;
GMAPS_LNG: Campo que contém a longitude da posição do imóvel no Google Maps;
ENDERECO
BAIRRO
CIDADE
DORMITORIO
VLR_VENDA
...

A tabela CADIMO é composta ainda por indeterminados outros campos, sendo possível criar novos campos. Desta forma deve-se verificar com a imobiliária quais campos devem ser utilizados.

CODIGO ou PLACA: Deve-se verificar com a imobiliária qual campo de Codigo, tanto para Exibição como para busca, deve ser utilizado. O CODIGO é gerado automaticamente pelo Vista.Imobi, e o campo PLACA (chamado de Referencia) é digitado pelo usuário.

STATUS e VER_WEB: Para o imóvel ser exibido no site deve ter o campo VER_WEB preenchido com "Sim". E o campo STATUS também deve ser validado, verificando com a imobiliária quais conteúdos representam imóveis Ativos (que devem aparecer no site).


Exemplo de consulta de todos os imóveis Ativos que devem aparecer no site:

SELECT CADIMO.CODIGO, CADIMO.BAIRRO, CADIMO.DORMITORIO
FROM CADIMO
WHERE CADIMO.VER_WEB='Sim' AND CADIMO.STATUS='ATIVO'


Exemplo de consulta dos imóveis em Destaque:

SELECT CADIMO.CODIGO, CADIMO.BAIRRO, CADIMO.DORMITORIO
FROM CADIMO
WHERE CADIMO.VER_WEB='Sim' AND CADIMO.STATUS='ATIVO' AND CADIMO.DESTAQUE_WEB='Sim'

   
CADCAT: Esta tabela representa o cadastro dos Tipos de imóveis.
   
  Estrutura:
  CODIGO: Codigo do Tipo de imóvel;
CATEGORIA: Tipo de imóvel; Exemplo: 'Apartamento', 'Casa';

Relacionamento com a tabela CADIMO:
CADCAT.CODIGO = CADIMO.CODIGO_CT

Exemplo de consulta de todos os imóveis Ativos que devem aparecer no site com o Tipo de imóvel:

SELECT CADIMO.CODIGO, CADIMO.BAIRRO, CADIMO.DORMITORIO, CADCAT.CATEGORIA
FROM CADIMO
LEFT JOIN CADCAT ON CADCAT.CODIGO = CADIMO.CODIGO_CT
WHERE CADIMO.VER_WEB='Sim' AND CADIMO.STATUS='ATIVO'


Exemplo de consulta de todos os imóveis Ativos do Tipo 'Casa':

SELECT CADIMO.CODIGO, CADIMO.BAIRRO, CADIMO.DORMITORIO, CADCAT.CATEGORIA
FROM CADIMO
LEFT JOIN CADCAT ON CADCAT.CODIGO = CADIMO.CODIGO_CT
WHERE CADIMO.VER_WEB='Sim' AND CADIMO.STATUS='ATIVO' AND CADCAT.CATEGORIA='Casa'

   
CATMON: Esta tabela representa o cadastro dos Tipos de moedas.
   
  Estrutura:
  CODIGO: Codigo da Moeda de imóvel;
CATEGORIA: Nome da Moeda. Exempos: 'Reais', 'Dolares', 'CUB';
SIMBOLO: Simbolo da Moeda. Exemplos: 'R$', 'U$', 'CUB';
INDICE: Índice da Moeda. Este campo deve ser multiplicado pelo campo CADIMO.VLR_VENDA que resultará no preço do imóvel.

Relacionamento com a tabela CADIMO:
CATMON.CODIGO = CADIMO.CODIGO_M


Exemplo de consulta de todos os imóveis Ativos com o preço do imóvel:

SELECT CADIMO.CODIGO, CADIMO.BAIRRO, CADIMO.DORMITORIO, CADCAT.CATEGORIA, CATMON.INDICE*CADIMO.VLR_VENDA AS PRECO
FROM CADIMO
LEFT JOIN CADCAT ON CADCAT.CODIGO = CADIMO.CODIGO_CT
LEFT JOIN CATMON ON CATMON.CODIGO = CADIMO.CODIGO_M
WHERE CADIMO.VER_WEB='Sim' AND CADIMO.STATUS='ATIVO'

   
CMPN1: Esta tabela representa o cadastro das Agências da imobiliária.
   
  Estrutura:
  CODIGO: Código da Agencia;
CODIGO_EM: Código da Imobiliária;
NOME: Nome da Agencia;
ENDERECO
BAIRRO
CIDADE
FONE
EMAIL

Relacionamento com a tabela CADIMO:
CMPN1.CODIGO = CADIMO.CODIGO_CS


Exemplo de consulta de todos os imóveis Ativos com o nome e Telefone da Agência:

SELECT CADIMO.CODIGO, CADIMO.BAIRRO, CADIMO.DORMITORIO, CADCAT.CATEGORIA, CATMON.INDICE*CADIMO.VLR_VENDA AS PRECO, CMPN1.NOME, CMPN1.FONE
FROM CADIMO
LEFT JOIN CADCAT ON CADCAT.CODIGO = CADIMO.CODIGO_CT
LEFT JOIN CATMON ON CATMON.CODIGO = CADIMO.CODIGO_M
LEFT JOIN CMPN1 ON CMPN1.CODIGO = CADIMO.CODIGO_CS
WHERE CADIMO.VER_WEB='Sim' AND CADIMO.STATUS='ATIVO'

   
CMPN: Esta tabela representa o cadastro da(s) Imobiliária(s). Esta tabela terá mais registros em caso de versão Multi-empresa, quando mais de uma Imobiliária utiliza o mesmo banco de dados.
   
  Estrutura:
  CODIGO_EM: Código da Imobiliária;
IMOBILIARIA: Nome da Imobiliária;

Relacionamento com a tabela CMPN1:
CMPN.CODIGO_EM = CMPN1.CODIGO_EM

   
CDIMIM: Esta tabela representa o cadastro das Fotos dos imóveis (nomes dos arquivos).
   
  Estrutura:
  CODIGO: Codigo do imóvel;
CODIGO_I: Codigo sequencial da imagem;
DESCRICAO: Descricao da foto. Exemplos: 'Fachada', 'Vista';
DESTAQUE_WEB: campo de checagem quer determina qual foto é a principal do imóvel;
VER_WEB: Campo de checagem que determina se a foto deve ser exibida no site;
FILE_PATH: nome do arquivo da Foto;
FILE_PATH_P: nome do arquivo da Foto de tamanho pequena (thumbnail)

Relacionamento com a tabela CADIMO:
CDIMIM.CODIGO = CADIMO.CODIGO


Exemplo de consulta de todas as Fotos do Imovel de codigo '100' que deve ser exibidas no site:

SELECT CDIMIM.DESCRICAO, CDIMIM.FILE_PATH, CDIMIM.FILE_PATH_P
FROM CDIMIM
WHERE CDIMIM.VER_WEB='Sim' AND CDIMIM.CODIGO=100


Ordenamento das fotos

As fotos devem ser ordenadas da seguinte forma;
1. DESTAQUE_WEB: em ordem Descendente. Primeiro com conteúdo 'Sim', depois 'Nao';
2. DESCRICAO: Exemplos: '01 Fachada', '02 Vista', '03 Cozinha';
3. CODIGO_I: ordem de inserção das fotos


Exemplo de consulta de todas as fotos do Imovel de codigo '100' que deve ser exibidas no site na ordem correta:

SELECT CDIMIM.DESCRICAO, CDIMIM.FILE_PATH, CDIMIM.FILE_PATH_P
FROM CDIMIM
WHERE CDIMIM.VER_WEB='Sim' AND CDIMIM.CODIGO=100
ORDER BY CDIMIM.DESTAQUE_WEB DESC, CDIMIM.DESCRICAO, CDIMIM.CODIGO_I

Os campos FILE_PATH e FILE_PATH_P contem os nomes dos arquivos das fotos que ficam na pasta:
vista.imobi/fotos


Fotos de Empreendimento

Quando é utilizado o Cadastro de Empreendimentos, deve-se exibir também as fotos do Empreendimento além das fotos do Imóvel. Para identificar se o Imóvel contém um Empreendimento, deve-se verificar se o campo CODIGO_EMP está preenchido.

O Empreendimento é outro imóvel cadastrado na tabela CADIMO, na mesma estrutura de um Imóvel.

Para selecionar as fotos do Empreendimento, basta selecionar os registros como descrito acima, na tabela CDIMIM considerando como Código do Imóvel o conteúdo do campo CODIGO_EMP.
   
CDIMVD: Esta tabela representa o cadastro dos vídeos dos imóveis (nomes dos arquivos).
   
  A Estrutura e a funcionalidade é igual à tabela CDIMIM acima.

Os campos FILE_PATH e FILE_PATH_P contem os nomes dos arquivos dos vídeos que ficam na pasta:
vista.imobi/videos

   
CADEMP: Esta tabela representa o cadastro dos Corretores, Agenciadores e Usuários do sistema.
   
  Estrutura:
  CODIGO_D: Código do usuário;
CODIGO_CS: Código da Agência do Usuário;
CODIGO_EQU: Código da Equipe do Usuário;
AGENCIADOR: Campo de checagem que determina se o Usuário é Agenciador de Imóveis;
CORRETOR: Campo de checagem que determina se o Usuário é Corretor e atende Clientes;
GERENTE: Campo de checagem que determina se o Usuário é Gerente de Equipe;
USUARIO: Campo de checagem que determina se o Usuário é Administrativo;
INATIVO: Campo de checagem que determina se o Usuário está Inativo;
EMAIL
FONE
CELULAR
...

Exemplo de consulta de todos Corretores Ativos:

SELECT CADEMP.CODIGO_D, CADEMP.NOME
FROM CADEMP
WHERE CADEMP.INATIVO='Nao' AND CADEMP.CORRETOR='Sim'


Exemplo de consulta de todos Corretores Ativos com o Nome e Telefone da Agência:

SELECT CADEMP.CODIGO_D, CADEMP.NOME, CMPN1.NOME AS AGENCIA, CMPN1.FONE AS AGENCIA_FONE
FROM CADEMP
LEFT JOIN CMPN1 ON CMPN1.CODIGO = CADEMP.CODIGO_CS
WHERE CADEMP.INATIVO='Nao' AND CADEMP.CORRETOR='Sim'

   
CADEQU: Esta tabela representa o cadastro das Equipes dos Corretores.
   
  Estrutura:
  CODIGO: Código da Equipe;
CODIGO_D: Código do Gerente da Equipe;
NOME: Nome da Equipe;


Exemplo de consulta de todos Corretores Ativos com o Nome da Equipe:

SELECT CADEMP.CODIGO_D, CADEMP.NOME, CADEQU.NOME AS EQUIPE
FROM CADEMP
LEFT JOIN CADEQU ON CADEQU.CODIGO = CADEMP.CODIGO_EQU
WHERE CADEMP.INATIVO='Nao' AND CADEMP.CORRETOR='Sim'


Exemplo de consulta de todos Corretores Ativos com o Nome da Equipe e o Nome do Gerente:

SELECT CADEMP.CODIGO_D, CADEMP.NOME, CADEQU.NOME AS EQUIPE, CADEMP2.NOME AS GERENTE
FROM CADEMP
LEFT JOIN CADEQU ON CADEQU.CODIGO = CADEMP.CODIGO_EQU
LEFT JOIN CADEMP CADEMP2 ON CADEMP2.CODIGO_D = CADEQU.CODIGO_D
WHERE CADEMP.INATIVO='Nao' AND CADEMP.CORRETOR='Sim'

   
CDIMAG: Esta tabela representa o relacionamento dos Agenciadores dos Imóveis.
   
  Estrutura:
  NUMERO: Código sequencial do agenciamento;
CODIGO_O: Código do imóvel;
CODIGO_D: Código do Agenciador;

Relacionamento com a tabela CADIMO:
CDIMAG.CODIGO_O = CADIMO.CODIGO

Relacionamento com a tabela CADEMP:
CDIMAG.CODIGO_D = CADEMP.CODIGO_D

Exemplo de consulta dos Agenciadores do Imovel de codigo '100':

SELECT CADEMP.CODIGO_D, CADEMP.NOME, CADEMP.EMAIL
FROM CDIMAG
LEFT JOIN CADEMP ON CADEMP.CODIGO_D = CDIMAG.CODIGO_D
WHERE CDIMAG.CODIGO_O = 100
ORDER BY CADEMP.NOME


   
CNFGSYS: Esta tabela contém campos de configurações do Sistema.
   
  Estrutura: aqui são listados alguns campos onde podem ser encontradas informações necessários para a integração.
  CODIGO_EM: Código da Empresa;
DIR_FOTOS: Pasta pública onde são hospedados os arquivos da Fotos dos imóveis;
DIR_VIDEOS: Pasta pública onde são hospedados os arquivos dos Vídeos dos imóveis;
DOWNLOAD_URL: URL do domínio onde os arquivos das Fotos e Vídeos ficam hospedados;
IMOVEIS_ATIVOS1_FIELD: Campo na tabela CADIMO que representa imóveis Ativos para Locação;
IMOVEIS_ATIVOS2_FIELD: Campo na tabela CADIMO que representa imóveis Ativos para Temporada;
IMOVEIS_ATIVOS3_FIELD: Campo na tabela CADIMO que representa imóveis Ativos para Venda;
IMOVEIS_ATIVOS1_VALUES: Conteúdos do campo IMOVEIS_ATIVOS1_FIELD que representam imóveis Ativos para Locação;
IMOVEIS_ATIVOS2_VALUES: Conteúdos do campo IMOVEIS_ATIVOS2_FIELD que representam imóveis Ativos para Temporada;
IMOVEIS_ATIVOS3_VALUES: Conteúdos do campo IMOVEIS_ATIVOS3_FIELD que representam imóveis Ativos para Venda;

Relacionamento com a tabela CMPN:
CNFGSYS.CODIGO_EM = CMPN.CODIGO_EM

   

Integração do Google Maps

Quando os campos GMAPS_LAT e GMAPS_LNG da tabela CADIMO estiverem preenchidos, significa que o imóvel foi posicionado no mapa no Vista.Imobi. São esses dois campos que devem ser utilizados para o posicionamento no Google Maps.

Para mais informações sobre o Google Maps acesse http://code.google.com/intl/pt-BR/apis/maps/documentation.
 

Demonstração da integração

Disponibilizamos um Website para download. Acesse www.vistasoft.com.br/demo e veja o funcionamento de uma integração.
 

Dúvidas ou Sugestões

Em caso de dúvidas ou para sugestões de melhorias entre em contato com o suporte através da página de Fale conosco.

Com mais de 15.000 usuários a Vista atua nas maiores imobiliárias do Brasil.
Quer saber mais ou acompanhar as novidades? Junte-se a nós em nossas comunidades!