Projeto desenvolvido como desafio. O desafio consiste em criar uma aplicação de um sistema de cobrança
O projeto foi desenvolvido em Laravel
https://documenter.getpostman.com/view/8500239/2s8ZDYWMNo
MySQL 10.6.11-MariaDB
Apache/2.4.52 PHP 8.1.14
Redis Server v=6.0.16
Versão hospedada disponível em:
https://kanastra.uaibits.com.br
POST
- https://kanastra.uaibits.com.br/invoices
GET
- https://kanastra.uaibits.com.br/invoices
GET
- https://kanastra.uaibits.com.br/invoice/{id}
POST
- https://kanastra.uaibits.com.br/invoice/upload
POST
- https://kanastra.uaibits.com.br/payment
POST
- https://kanastra.uaibits.com.br/payment/{debtId}
GET
- https://kanastra.uaibits.com.br/pagamentos
GET
- https://kanastra.uaibits.com.br/emails
GET
- https://kanastra.uaibits.com.br/faturas
Para executar o projeto localmente, basta seguir os passos abaixo:
- Clone o repositório
git clone https://github.com/EduardoMGP/KanastraDesafio.git
- Entre na pasta do projeto
cd KanastraDesafio
- Instale as dependências
composer install
- Crie o arquivo .env
cp .env.example .env
- Gere a chave da aplicação
php artisan key:generate
-
Configure o arquivo .env com as informações do seu banco de dados
-
Execute as migrations
php artisan migrate
- Inicie o worker do redis
Esse work executará toda a fila de emails pendentes
php artisan queue:work
- Crie um cronjob para executar o comando abaixo a cada minuto
Esse cronjob buscará todos os emails pendentes e os enviará para a fila de emails
php artisan schedule:run
- Inicie o servidor
php artisan serve
- Acesse o projeto em http://127.0.0.1:8000