Skip to content

Cesar02dd/SD

Repository files navigation

Teste em um Sistema Distribuido

IMPORTANTE: O nosso serviço guarda os IDs do pagamento efetuado e do respetivo evento dos outros serviços quando é feito um registo. Assim como também faz a respetiva conversão de unidades para que seja possivel realizar o pagamento do evento.

  1. Emails de teste:
  1. Para ver em que eventos um utilizador esta registado aceder à opção do NavBar chamada My Events

  2. Caso queiram apagar os registos efetuados, aceder no pod do mysql e fazer:

    • kubectl exec -it <pod-name> -n sge -- mysql -u root -p
    • Dar Enter quando pedir a password
    • USE sd;
    • DELETE FROM user_event_registration;

Endpoints principais

  1. Method: POST. Path: /register. Descrição: Realiza um registo de um utilizador num evento.
  2. Method: GET. Path: /isRegistered. Descrição: Devolve "OK" se um utilizador pode-se registar num evento, caso contrario devolve que já esta inscrito.
  3. Method: GET. Path: /user/{email}/paidEvents. Descrição: Devolve os eventos em que esta regisatdo um utilizador.
  4. Method: GET. Path: /event/{id}/count. Descrição: Devolve o numero total de utilizadores registados num evento em especifico.
  5. Method: GET. Path: /event/{id}/paidUsers. Descrição: Devolve os utilizadores que estão registados num evento em especifico.

Instalação

Instalar o php 8.2.12 -> https://windows.php.net/downloads/releases/php-8.2.12-Win32-vs16-x64.zip

No ficheiro php.ini do php instalado descomentar (tirar ";") as linhas que contenham as seguintes coisas:

  1. extension=pdo_mysql
  2. extension=mysqli
  3. extension=fileinfo

Instalar XAMPP para php 8.2.4 -> https://sourceforge.net/projects/xampp/files/XAMPP%20Windows/8.2.4/xampp-windows-x64-8.2.4-0-VS16-installer.exe

Instalar composer -> https://getcomposer.org/Composer-Setup.exe


Para correr a aplicação executar os seguintes comandos:
Na pasta Server:

  1. npm install
  2. composer install
  3. Dar click em start no apache e MySQL dentro XAMPP Control Panel
  4. Dar click no admin do MySQL e na interface web criar uma base de dados com
    • name: sd
    • collection: utf8_general_ci
  5. Criar o ficheiro .env caso ainda nao esteja criado (Copiar o conteudo do ficheiro .env.example)
  6. No ficheiro .env que esta no Laravel colocar as credencias (normalmente é apenas preciso mudar o DB_DATABASE: sd)
  7. php artisan migrate
  8. php artisan db:seed
  9. php artisan serve (para executar o backend)

Na pasta client:
9. aceder à pasta react fazendo cd react 10. npm install 11. npm run dev

Para aceder a rutas protegidas por keys, fazer:

  1. php artisan passport:client --personal
  2. Colocar a key obtida no ficheiro de teste
  3. Nas consultas feitas à api colocar a key como dentro de header conforme feito nos ficheiros de teste



IMPORTANTE: para executar o projeto é preciso ter o XAMPP ativo

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •