116 Modificación del Historial Clínico del Sistema con LARAVEL(PHP-MySql) FullStack
Duración: 15 min¡Contenido Exclusivo!
Adquiere este curso para tener acceso inmediato a esta y a **todas las lecciones Premium**.
Inscribirse Ahora por $20.00 Acceso instantáneo de por vida y código fuente incluido.Descripción
💉 Lección 116: Modificación y Optimización del Historial Clínico
La Lección 116 completa la funcionalidad de listado del Módulo de Historial Clínico optimizando la visualización del diagnóstico, y luego implementa la función completa de Edición (Edit/Update) para modificar los registros existentes.
1. 📋 Optimización en el Listado (Index)
Para evitar que la tabla de historiales se vea demasiado grande o desordenada debido a los diagnósticos extensos, se implementa una limitación de caracteres.
A. Limitación del Detalle [01:03]
- Problema: Un diagnóstico extenso puede ocupar múltiples líneas en la columna "Detalle" de la tabla, volviendo el listado poco estético y difícil de navegar [00:30].
- Solución: Se utiliza la función Str::limit() de Laravel para mostrar solo los primeros 100 caracteres del campo detalle en la tabla.
Implementación: Después del límite, se añaden automáticamente tres puntos suspensivos (...) para indicar que hay más información disponible. El contenido completo solo es visible al usar la acción Ver/Show [01:42].
💡 El instructor ajusta el límite a 100 caracteres, encontrando que es el valor ideal para mantener el diseño compacto y funcional [02:22].
2. ✏️ Implementación de la Edición (Edit/Update)
Se configura el flujo para que el doctor pueda modificar los registros de historial clínico que haya creado.
A. Función Edit (Controlador) [03:08]
- Recepción del ID: La función Edit recibe el ID del historial a modificar.
- Consulta: Se utiliza el modelo Historial y el método find() para obtener el registro completo de la base de datos [03:37].
- Consulta de Pacientes: Se realiza una consulta al modelo Paciente (ordenado por apellido) para llenar la lista desplegable del formulario de edición, al igual que en la vista Create [06:16].
- Retorno: Se devuelve la vista admin.historial.edit con las variables $historial y $pacientes [06:40].
B. Diseño de la Vista Edit (Formulario) [04:36]
- Título: Se cambia el título a "Modificar Historial" [04:46].
- Ruta y Método: El formulario se configura para enviar los datos a la ruta de actualización utilizando el método PUT y enviando el ID del historial en la ruta [05:17].
- Selección Automática del Paciente:
- Para que el formulario sea usable, el paciente asociado al historial debe aparecer seleccionado por defecto en el select [06:50].
- Esto se logra usando una expresión condicional ternaria dentro de la etiqueta <option> que compara el paciente_id del historial ($historial->paciente_id) con el ID del paciente en el bucle ($paciente->id), añadiendo el atributo selected si son iguales [08:11].
- Carga de Datos Existentes:
C. Función Update (Lógica de Guardado) [10:50]
- Recepción: La función Update recibe el request (datos del formulario) y el ID del historial a actualizar.
- Actualización: Se busca el registro existente con el método find($id) y luego se actualizan los campos con los nuevos valores recibidos en el request [13:16].
- Doctor ID: Se asegura que el campo doctor_id se mantenga sin cambios (o se reasigne al doctor actual) [13:22].
- Guardado: Se llama al método save() [13:25].
- Redirección: Se retorna a la vista de listado con un mensaje de éxito "Se actualizó el historial médico del paciente de la manera correcta" [13:30].
➡️ Próximo Paso [14:15]
Las próximas lecciones se centrarán en completar las acciones pendientes del módulo: la función Eliminar (Delete) y la generación de un Reporte en PDF (impresión) del historial clínico. También se desarrollará un reporte para imprimir todos los registros de un paciente específico.
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! ❤️