- Caio: Desenvolvimento das rotas testes em Postman, criação dos métodos de validação;
- Maria Isabel: Adaptação dos Controllers do sistema para retornarem respostas em formato JSON, criação de métodos para manipulação de Tokens;
- Nauder: Migração do sistema para o Framework Laravel (Migrations, Validate, etc.), modificações nas rotas para servirem em uma api com Sanctum.
Tecnologias utilizadas e recomendadas para reprodução:
- XAMPP;
- PHP >= 8.1.6;
- Composer;
- PostgreSQL;
- Postman.
Para inicar o projeto em um localhost, após a instalação de softwares necessários, execute os seguintes comandos em ordem no terminal na pasta root do sistema:
composer install
php artisan migrate
php artisan serve
Em seguida o servidor já estará disponivel para uso. É importante mencionar que para acessar funcionalidades de admin em um novo local é necessário remover a autorização Sanctum na rota de criar admin, pois a mesma só pode ser acessada por admins já existentes.
Rotas teste em formato do Software Postman foram fornecidas para facilitar o acesso ao sistema, todas as rotas seguem a mesma lógica e cumprem com o mínimo das boas práticas de uma API RESTful.
Orientações básicas para uso de rotas:
- Todas as rotas de consulta podem receber qualquer argumento relevante para filtragem de data, simulando um comando SQL "WHERE", EX: "?nome=gol?ano=2012" funcionaria como o comando SQL "WHERE nome = 'gol' AND ano = 2012";
- Rotas de consulta de admin podem utilizar "||" para representar uma expressão SQL "OR" para argumentos informados. EX: "?nome=gol||onyx" funcionaria como o comando "WHERE nome IN('gol', 'onyx')";
- A lógica de validação de argumentos para rotas, bem como os argumentos possíveis, seguem a lógica de acesso definida nos arquivos Model do sistema além de validações para campos especiais como CPF, CNPJ, etc.
O projeto desenvolvido pode ser redistribuido através da licença MIT.