risetechapps / fusion-report-for-laravel
1.2.0
2025-06-05 10:45 UTC
Requires
- php: ^8.1
- illuminate/support: ^9.0|^10.0
- risetechapps/form-request-for-laravel: ^2.1.0
- risetechapps/monitoring-for-laravel: ^2.2.0
Requires (Dev)
- orchestra/testbench: ^7.0|^8.0
- phpunit/phpunit: ^10.0
README
📌 Sobre o Projeto
Laravel Fusion Report é um package para Laravel que facilita a geração de relatórios via API.
✨ Funcionalidades
- 🔑 Autenticação via API Key Use uma chave gerada na sua conta para autenticar suas requisições.
- 🏽 Geração de Relatórios
Suporta os formatos:
pdf
,rtf
,docx
,odt
,html
,xml
,xls
,xlsx
,csv
,ods
,pptx
,xhtml
.
🚀 Instalação
1️⃣ Requisitos
- PHP >= 8.0
- Laravel >= 10
- Composer instalado
2️⃣ Instalação do Package
composer require risetechapps/fusion-report-for-laravel
3️⃣ Configuração
Adicione sua chave de API no arquivo .env
:
FUSION_REPORT_TOKEN=xxxxxxxxxxxx
✅ Registro das Rotas
Adicione isso ao seu routes/api.php
ou provedor de rotas:
use Illuminate\Support\Facades\Route; use RiseTechApps\FusionReportLaravel\FusionReportLaravelFacade; FusionReportLaravelFacade::routes([ 'middleware' => ['auth:sanctum'] ]);
📤 Exemplo de Requisição
📥 Via Curl
curl -X POST http://localhost:8000/reports/generate \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d '{ "id": "profile_company", "theme": "default", "queue": false, "locale": "pt-br", "format": ["pdf"], "data": [] }'
📥 Via JavaScript (fetch)
fetch('http://localhost:8000/reports/generate', { method: 'POST', headers: { 'Content-Type': 'application/json', 'Accept': 'application/json' }, body: JSON.stringify({ id: "profile_company", theme: "default", queue: false, locale: "pt-br", format: ["pdf"], data: [] }) }) .then(res => res.json()) .then(data => console.log(data));
📬 Exemplo de Resposta
{ "success": true, "data": { "queue": false, "links": { "pdf": "https://ewr1.fusionreports.com/risetech/reports/public/..." } } }
⏳ Execução em Segundo Plano
Para gerar o relatório em segundo plano, defina "queue": true
.
Você poderá ouvir o evento ReportGenerateEvent
para saber quando ele for concluído.
✉️ Envio por E-mail
Para enviar o relatório por e-mail, adicione os seguintes parâmetros ao corpo:
{ "send_email": true, "email": ["usuario@example.com"] }
🛠 Contribuindo
- Faça um fork do repositório
- Crie uma branch:
feature/sua-feature
- Commit suas alterações
- Envie um Pull Request
📜 Licença
Distribuído sob a licença MIT.
💡 Desenvolvido por Rise Tech