risetechapps / fusion-report-for-laravel
Installs: 63
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
pkg:composer/risetechapps/fusion-report-for-laravel
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