EmersonVS / TON-Interface

0 stars 0 forks source link

TON-Interface

Projeto frontend desenvolvido com framework Angular, para teste técnico.

Sobre

Projeto componentizado para consumir APIs. Funciona como interface para possibilitar ao usuário interagir com sistema de controle de funcionários. Possui dois módulos, um para autenticação e outro para operações.

Diretórios

Aplicação

.
└── app
    ├── core            # Módulos e componentes principais
    └── shared          # Módulos, Componentes, serviços compartilhados pela aplicação

Rotas

Login

Na rota de login é necessário um usuário e senha válidos para que seja feita autenticação, e possibilitar o uso das funcionalidades da aplicação. Autenticação gera um token que é usado nas operações realizadas.

Painel de controle

As operações disponíveis se encontram no painel de controle. Para cada operação existe uma requisição que necessita de um token.

Serviços

Funcionario Service

Responsável por carregar requisições para realizar operações com entidade funcionário.

Time Service

Responsável por administrar operações envolvendo tempo.

Token Service

Responsável por carregar requisição de autenticação.

Token Manager

Responsável por gerenciar armazenamento do token no local storage.

Interceptor

Responsável por adicionar um token ao cabeçalho de cada requisição.

Guard Service

Responsável por liberar acesso ao painel de controle.

Como rodar

Necessário ter instalado Node|npm e NGINX.

Local

  1. Clone o repositório
  2. Utilize o comando npm install
  3. Utilize o comando npm start para rodar localmente
  4. O projeto deve estar disponível no endereço http://localhost:4200

Servidor

  1. Clone o repositório
  2. Utilize o comando npm install
  3. Utilize o comando npm build
  4. No diretório de instalação do NGINX acesse /nginx/sites-available
  5. Crie um arquivo de configuração com nome TON-Interface seguindo o padrão abaixo

    server {     
        listen 80;      
        listen [::]:80;      
        server_name http://ton-interface.com;      
        root /var/www/TON-Interface;   
        server_tokens off;   
        index index.html index.htm;     
    
        location / {         
            # First attempt to server request as file, then         
            # as directory, then fall back to displaying a 404.          
            try_files $uri $uri/ /index.html =404;      
        }
    }
  6. Acesse o diretório /nginx/sites-enabled e utilize o seguinte comando ln -s ../sites-avaiable/TON-Interface
  7. Volte para o diretório do projeto e mova o diretório /dist/TON-Interface para /var/www/
  8. Por fim execute o comando service nginx restart. O projeto deve estar disponível no endereço http://{{ip}}:80