127 Registro de Pagos del Sistema de Reserva de Citas Medicas con LARAVEL(PHP-MySql) FullStack
Duración: 12 min¡Contenido Exclusivo!
Adquiere este curso para tener acceso inmediato a esta y a **todas las lecciones Premium**.
Inscribirse Ahora por $10.00 Acceso instantáneo de por vida y código fuente incluido.Descripción
💾 Lección 127: Almacenamiento y Validación de Registros de Pago
La Lección 127 completa el flujo de creación para el Módulo de Pagos al implementar el método store en el controlador. Este método se encarga de recibir los datos del formulario, realizar las validaciones necesarias y persistir la información en la base de datos de Laravel, además de actualizar la vista Index para mostrar los nuevos registros.
1. 📝 Ajustes al Formulario Create [00:14]
Antes de implementar el guardado, se realiza un ajuste crucial en el formulario create.blade.php:
- Adición del Campo monto: Se agrega el campo de entrada para capturar el monto 💰 del pago. Este campo es vital para el módulo de cobranzas.
- Se le asigna un name de monto para la recepción en el Request [03:00].
Fecha por Defecto: Se configura el campo fecha_pago para que muestre automáticamente la fecha actual como valor predeterminado, facilitando el trabajo de la secretaria [01:13]:
PHP
value="{{ date('Y-m-d') }}"
- Asignación de name: Se verifica que todos los campos del formulario tengan sus atributos name correspondientes: paciente_id, doctor_id, fecha_pago, monto, y descripcion [02:47].
2. 🛡️ Implementación del Método store (Guardado) [03:32]
El método store del PagosController maneja la lógica de inserción de datos:
A. Validación de Datos [04:26]
Se utiliza el método validate del objeto Request para asegurar que los campos esenciales no estén vacíos:
- Campos Requeridos: Se valida que el monto, la fecha_pago, y la descripcion sean campos required [05:04].
B. Inserción en la Base de Datos [05:40]
Una vez que la validación es exitosa, se crea una nueva instancia del modelo Pago y se le asignan los valores recibidos:
- Se crea un nuevo objeto Pago [05:43].
- Se asignan los valores del Request a las columnas del modelo:
- monto
- fecha_pago
- descripcion
- paciente_id
- doctor_id
- Se llama al método save() para guardar el registro [07:03].
- Redireccionamiento: Se retorna una redirección a la ruta pagos.index con un mensaje de éxito (se registró el pago de la manera correcta) [07:18].
3. 🖼️ Actualización de la Vista Index [07:57]
Para que el registro recién creado sea visible, se actualiza la tabla de la vista pagos/index.blade.php:
- Columnas: Se definen las columnas de la tabla para mostrar la información del pago: Paciente, Doctor, Fecha de Pago, Monto, y Descripción [08:16].
- Relaciones: Se utiliza la sintaxis de relación de Eloquent (previamente configurada en el modelo Pago) para mostrar los datos relacionados del paciente y del doctor:
- Visualización: El monto se alinea al centro para mejorar la presentación [10:25].
El resultado es una tabla funcional donde se pueden registrar y visualizar todos los pagos realizados en el sistema.
➡️ Próximo Paso [11:30]
El siguiente capítulo se centrará en la implementación de las acciones CRUD restantes (Show, Edit, Delete) y la creación del comprobante de pago/factura 🧾 en PDF.
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! ❤️