Pular para conteúdo

PGST-PORTAL

Introdução

O acesso à plataforma GeoProcess ocorre por meio do módulo PGST-PORTAL, também chamado de Portal. Esse módulo possui o front-end da nossa aplicação. É por meio do Portal que faremos perguntas e obteremos as respostas com informações relativas ao domínio do problema modelado.

A seguir será descrita uma visão geral do módulo PGST-PORTAL.

Visão Geral

Ao efetuar o primeiro acesso ao servidor que executa a aplicação do GeoProcess, seremos encaminhados para a tela de Single Sign-On (SSO) configurada. Por exemplo, acessando a URL https://pgstzetta.ufla.br seremos encaminhados para a página mostrada na imagem abaixo.

Tela SSO do Portal

Uma vez feito o login no sistema, o usuário será encaminhado para o portal. Uma tela semelhante a abaixo será exibida.

Tela inicial do Portal

No lado esquerdo dessa tela, estão listados os projetos que temos acesso. Neste exemplo, o único projeto ao qual temos acesso é o Projeto X. Após clicar nesse projeto, seremos encaminhados para a tela com as perguntas cadastradas no portal. Essa tela será semelhante a imagem mostrada a seguir.

Tela de perguntas do Portal

É nessa tela que usuário final irá interagir a maior parte do tempo. Na imagem acima, podemos perceber que existem três perguntas cadastradas. As perguntas cadastradas dependem do domínio de cada projeto. Nesse projeto de exemplo, podemos realizar buscas como:

  • Procura por código do imóvel
  • Busca por área
  • Busca por cidade

Essas buscas são semelhantes a perguntas feitas sobre uma determinada base dados. Dessa maneira, no projeto GeoProcess essas buscas serão chamadas de perguntas.

Suponha que desejamos acessar a pergunta Procura por código do imóvel; então, uma tela semelhante à mostrada a seguir será exibida.. Nesta tela, devemos preencher os parâmetros da pergunta que queremos fazer.

Tela da pergunta 1 do Portal

Em seguida, será exibida uma tela com a lista de todas as perguntas feitas, incluindo links para as respostas. Essa tela é semelhante a mostrada a seguir.

Tela de lista de perguntas 1 do Portal

Por fim, ao clicar em visualizar a resposta uma tela semelhante a seguir poderá ser exibida dependendo do domínio da aplicação implementada.

Tela de resposta 1 do Portal

Fluxo da Interação

A seguir será descrito todo o fluxo de interação que o usuário pode fazer no sistema.

A primeira interação do usuário está relacionada a escolha da pergunta que será respondida. Cada aplicação pode ter um conjunto de perguntas e o usuário nessa etapa seleciona a pergunta que ele deseja responder.

Fluxo IHM 1 Fluxo IHM 1 Perguntas

A segunda interação do usuário está relacionada aos parâmetros necessários na pergunta selecionada. Nessa etapa, o usuário deverá alimentar a pergunta com informações (parâmetros) específicas para delimitar a busca.

Fluxo IHM 2 Fluxo IHM 2 Parâmetros

A terceira interação do usuário está relacionada a busca no histórico de uma pergunta. Essa busca retorna todas as consultas já efetuadas para aquela pergunta com diferentes parâmetros e horários de consulta. A resposta pode ser visualizada sem ter que fazer um outro processamento da informação.

Fluxo IHM 3 Fluxo IHM 3 Histórico

A quarta interação do usuário está relacionada a análise que o mesmo faz em cima dos dashboard de resposta. Algumas tabelas permitem filtrar informações baseadas em parâmetros digitados.

Fluxo IHM 4 Fluxo IHM 4 Dashboard

A quinta interação do usuário está relacionada a visualização de arquivos de respostas que podem ser trazidos dependendo da pergunta. Alguns arquivos suportados são PDFs com os dados de resposta organizados de forma estrutura. Um outro arquivo suportado é o KML que pode ser posteriormente aberto em algum editor de mapas.

Fluxo IHM 5 Fluxo IHM 5 Arquivos

Instalação

Pré-Requisitos

Instalações: São necessárias as seguintes instalações.

  • Python
  • Pip
  • Git
  • Postgres
  • Postgis
  • Docker Desktop

Projetos: São necessários os seguintes projetos.

  • pgst-lib

Clonando a Aplicação

Primeiramente, clone o projeto pgst-portal utilizando o comando:

git clone https://github.com/ZETTA-ORG/pgst-portal.git

Observação

Esse projeto deve ser clonado dentro de uma pasta geoprocess, conforme a organização do projeto.

Configurando a Aplicação

Em seguida, copie o arquivo de configuração do ambiente utilizando o comando:

cp portal/conf_samples/env.conf portal/env.conf
copy portal/conf_samples/env.conf portal/env.conf

Em seguida, abra o arquivo env.conf e faça as atualizações necessárias conforme a configuração do seu ambiente de trabalho.

Instale o ambiente virtual venv para isolar as dependências do Python. Utilize o comando abaixo:

python3 -m venv venv
py -m venv venv

Ative o ambiente virtual no seu computador utilizando o comando abaixo:

source venv/bin/activate
venv\Scripts\activate

Instale os seguintes módulos:

sudo apt install python3-dev
sudo apt install rabbitmq-server

Instale as dependências do projeto utilizando o comando abaixo:

pip3 install -r requirements.txt

Em seguida, entre na pasta portal.

cd portal

Instale as dependências do projeto pgst-lib dentro do projeto consumidor.

pip3 install -e ../../pgst-lib/

Executando a Aplicação em Mode de Desenvolvimento

Para executar a aplicação, primeiro é necessário abrir o Docker Desktop e subir o dc_portal.

Abra a aplicação através da URL: http://localhost:8000/.

PGST-PORTAL-MIN

Foi desenvolvido também uma versão do projeto do PGST-Portal simplificada, chamado PGST-Portal-Min. O intuíto dessa versão é realizar testes locais através de um ambiente reduzido. Caso deseje utilizar essa versão em seus testes locais, basta alterar nos arquivos de configuração o caminho do pgst-portal e indicar o pgst-portal-min.

Github do Projeto

A seguir temos o link para o github do projeto.

PORTAL