18 🧾 Impresión de la factura del ticket de parqueo | Sistema de Parqueo Laravel 12 FullStack
Duración: 48 minDescripción
18 🧾 Índice de Lección: Impresión de la Factura del Ticket de Parqueo | Sistema de Parqueo Laravel 12 FullStack
La lección se centra en la finalización del proceso de facturación en el controlador, la creación de una tabla de base de datos dedicada a las facturas y el diseño final de la factura en formato PDF.
1. Actualización y Finalización del Ticket
- Verificación del Cálculo:
- Confirmación del resultado de las variables $monto_total y $tiempo_total calculadas en el capítulo anterior [00:24].
- Actualización de la Tabla tickets:
- Prueba de Facturación:
2. Implementación del Modelo de Facturación
- Justificación de la Tabla facturaciones:
- Necesidad de almacenar datos inmutables (que no cambien) para la factura, independientemente de futuras modificaciones a las tablas clientes o tarifas [11:42].
- Diseño y Campos de la Migración:
- Creación y Migración:
- Creación del modelo Facturacion y ejecución de la migración [17:14].
- Definición de Relaciones (Eloquent):
3. Registro y Guardado de la Factura
- Lógica de Consecutivo:
- Implementación de la lógica para calcular el siguiente número de factura consecutivo (buscando el máximo ID y sumando 1) [28:26].
- Asignación de Valores:
- Asignación del ticket_ID, usuario_ID (autenticado) y el número de factura [26:51].
- Asignación del nombre_cliente, numero_documento y la placa (desde las relaciones del ticket) [32:39].
- Creación del campo detalle concatenando el servicio y el $tiempo_total [29:47].
- Guardado final de la instancia de la factura [30:36].
- Prueba de Registro:
- Verificación en la tabla facturaciones de que el registro se haya insertado correctamente con todos los datos desnormalizados [33:48].
4. Diseño de la Factura en PDF
- Ruta y Función de Impresión:
- Diseño de la Vista PDF (factura-pdf.blade.php):
- Adaptación de la plantilla de impresión de ticket [37:51].
- Encabezado: Se muestra el número de la factura [38:51].
- Datos Clave: Se muestran los datos del cliente (nombre, documento, placa) y los datos del servicio (espacio, fechas/horas de ingreso y salida) [39:11] - [41:32].
- Tabla de Detalle: Se crea una tabla para el desglose del cobro, con columnas para Detalle, Precio, Cantidad y Total [41:41].
- Monto Final: Se muestra el monto total a pagar en negritas y con el símbolo de divisa [46:23].
- Próximo Capítulo:
- Se anuncia la implementación de un Código QR en la factura para mayor seguridad y validación [47:45].