Este projeto é uma API desenvolvida com Node.js e Express que se conecta a um banco de dados SQL Server para recuperar informações financeiras e armazená-las em cache. Além disso, o sistema possui uma funcionalidade de envio automatizado de relatórios via email, utilizando Nodemailer e node-cron para agendamentos periódicos.
- API RESTful com endpoints para consulta de dados financeiros
- Cache otimizado para melhorar a performance
- Agendamento de tarefas para atualização do cache e envio de emails automático
- Envio de relatórios financeiros por email em formato HTML estruturado
- Node.js
- Express.js
- MSSQL (Microsoft SQL Server)
- CORS (Cross-Origin Resource Sharing)
- Nodemailer (Envio de emails)
- Axios (Requisição HTTP para consumo de API)
- node-cron (Agendamento de tarefas)
-
Clone o repositório:
git clone https://github.com/seu-usuario/seu-repositorio.git
-
Acesse o diretório do projeto:
cd seu-repositorio -
Instale as dependências:
npm install
Antes de rodar o projeto, configure os seguintes arquivos:
-
Banco de Dados: Edite a configuração de conexão no arquivo
server.js:const config = { user: 'seu_usuario', password: 'sua_senha', server: 'seu_servidor', port: 1537, database: 'seu_banco', options: { encrypt: false, trustServerCertificate: true, requestTimeout: 300000 } };
-
Configuração de Email: No arquivo
emailService.js, ajuste os dados do SMTP:const transporter = nodemailer.createTransport({ host: 'smtp.seu-dominio.com', port: 587, secure: false, auth: { user: 'seu_email', pass: 'sua_senha' }, tls: { rejectUnauthorized: false } });
- Inicie o servidor:
npm start
- A API estará disponível em:
| Método | Endpoint | Descrição |
|---|---|---|
| GET | /api/orcamento-email |
Busca dados diretamente do banco |
| GET | /api/orcamento-email-cache |
Retorna dados armazenados em cache |
- Atualiza o cache a cada 5 minutos
- Envia emails automáticos com relatórios financeiros
- Seu Nome - seu GitHub
Este projeto está licenciado sob a MIT License.