48 REPORTES con DOMPDF en el curso de LARAVEL 10 Sistema de control de asistencia
Duración: 39 minDescripción
📄 Lección 48: Reportes con DOMPDF
1. 📂 Configuración del Módulo de Reportes
Se preparó la estructura inicial para alojar las funcionalidades de reportes:
- Menú de Navegación: Se añadió una nueva pestaña llamada "Reportes" al menú lateral, utilizando un ícono de impresora [03:59].
- Rutas y Controladores: Se definieron dos nuevas rutas y funciones en el AsistenciaController:
- Vista Inicial (reportes.blade.php): Se creó una vista para mostrar el botón "Imprimir Reporte", el cual redirige a la ruta que generará el PDF [15:58].
2. 📦 Instalación y Configuración de DOMPDF
Se utilizó el paquete barryvdh/laravel-dompdf para la conversión de HTML a PDF:
Instalación: Se instaló el paquete a través de la terminal [24:28]:
Bash
composer require barryvdh/laravel-dompdf
Configuración del Servicio: Se configuró el Service Provider y el Alias en el archivo config/app.php para que Laravel pueda reconocer la librería [30:45]:
PHP
'providers' => [ // ... Barryvdh\DomPDF\ServiceProvider::class, ], 'aliases' => [ // ... 'PDF' => Barryvdh\DomPDF\Facade::class, ],
3. 📝 Creación de la Vista del Reporte (HTML)
Se creó la vista asistencia/pdf.blade.php, que es la que se convertirá a PDF. Se diseñó con una estructura de tabla limpia que incluye los siguientes campos [21:17]:
- Un encabezado con el título "Reporte de Asistencias".
- Una tabla que itera sobre la variable $asistencias.
- Un contador numérico para el listado de registros [36:40].
- La fecha de asistencia.
- El nombre y apellidos del miembro (accediendo a través de la relación: $asistencia->miembro->nombre_apellido).
4. 🚀 Lógica de Generación del PDF
En el método pdf del controlador, se implementó la lógica final:
- Consulta de Datos: Se obtuvieron todos los registros de asistencia de la base de datos [34:21].
- Carga de la Vista: Se utilizó la clase PDF para cargar la vista HTML del reporte (asistencia.pdf) y pasarle los datos consultados [34:56].
- Visualización en PDF: Se retornó la función ->stream('reporte_asistencias.pdf') para que el navegador muestre el contenido como un PDF [37:36].
El resultado final fue la generación exitosa de un documento PDF con todos los registros de asistencias del sistema.
Lecciones
Apoya este proyecto
Si te gusta nuestro contenido, ¡apóyanos con una donación!
Donar por Airtm Donar por Binance¡Gracias por tu apoyo! ❤️