- Java 17
- Spring Boot 2.5.2
- Spring security
- Token JWT
- Sendinblue - Integração para envio de e-mail´s
- Swagger - Após iniciar o projeto acesse: http:https://localhost:8080/swagger-ui/index.html
- SQL para criação das tables e da base https://github.com/georgepiter/controlz/blob/main/docs/create_data_base_sql.sql
- Banco de dados - MYSQL 8.0.30 - Modelagem do banco de dados no workbench: https://github.com/georgepiter/controlz/blob/main/docs/modelagem%20do%20projeto.mwb
- Link para o front end: https://github.com/georgepiter/my-finances
Antes de começar, verifique se você atendeu aos seguintes requisitos:
- Você instalou a versão do Java
< JDK17 / requeridos>
- Você instalou a versão
< MYSQL 8.0.30 / requeridos>
Após efetuar o clone do Back End adicione o POM do projeto ao Mavem e aguarde o download das dependências.
Em seguida adicione as environments variables com suas configurações:
- DATABASE_URL
- DATABASE_USERNAME
- DATABASE_PASSWORD
- JWT_SECRET - Chave secreta a sua escolha para gerar assinatura do token
- JWT_EXPIRATION - Tempo de expiração do token em milissegundos
- SENDINBLUE_API_KEY - Chave gerada para integrar com a API de e-mail´s da sendiBlue.
- SENDINBLUE_URL - URL de conexão para Integrar com a API do sendiBlue.
- É necessário cadastro para geração da API key e url, segue o link da documentação https://developers.sendinblue.com/reference/sendtransacemail
- Preencha o arquivo docker-compose que está em : https://github.com/georgepiter/controlz/blob/main/docs/docker-compose.yml
- Mova o docker-compose para o dir onde está a pasta raiz do back-end controlz e o front-end my-finances
- execute o comando docker-compose up --build e após o container ser criado acesse o sistema pela porta 3000 do local host
O sistema possue dois templates:
Aviso de reset de senha usuário utilizador
Aviso de vencimento de débito
-
Aviso de vencimento de débitos, que é executado todos os dias e avisa via e-mail os débitos que estão 2 dias antes de vencer.
-
Gera histórico do balanço mensal, todo último dia de cada mês o job cria um balanço de todo o mês.
-
Reenvio de e-mail, todo dia 01:00 é efetuado uma tentativa de reenvio dos e-mails com erro;
-
Existe um webHook que a SENDIBLUE faz um post caso tenha um sucesso ao entregar o e-mail ou falhas.
Siga estas etapas:
- Bifurque este repositório.
- Crie um branch:
git checkout -b <nome_branch>
. - Faça suas alterações e confirme-as:
git commit -m '<mensagem_commit>'
- Envie para o branch original:
git push origin <nome_do_projeto> / <local>
- Crie a solicitação de pull.
Como alternativa, consulte a documentação do GitHub em como criar uma solicitação pull.
Quer fazer parte desse projeto? Clique AQUI e leia como contribuir.
Esse projeto está sob licença. Veja o arquivo LICENÇA para mais detalhes.