100 Módulo Configuraciones del Sistema de Reserva de Citas Medicas con LARAVEL(PHP-MySql) FullStack

Duración: 16 min
Módulo: 📝 Historial Clínico, Configuraciones y Reportes Lección 1 de 23

Descripción

⚙️ Módulo 100: Estructura y Creación del Módulo de Configuraciones

Esta lección aborda la implementación inicial y la estructura del nuevo módulo de Configuraciones para el sistema, un componente esencial para gestionar datos globales de la clínica u hospital.

1. 📊 Mejora del Dashboard del Administrador

Antes de comenzar con el nuevo módulo, se añadió un widget informativo al dashboard del administrador para proveer una visión general del sistema [01:29].

  • Total de Reservas: Se utiliza el modelo Event para contar el número total de reservas registradas en el sistema.
  • Visualización: Se muestra una tarjeta de color info (azul claro) con el ícono de un calendario (fa-calendar-check) que indica la cantidad de reservas existentes [04:35].

2. 🧭 Creación del Elemento en el Menú [05:53]

Se modificó la barra lateral de navegación para incluir el acceso al nuevo módulo, restringido únicamente al administrador.

  • Menú: Se añadió un nuevo elemento de lista que apunta a la ruta de configuración (admin/configuraciones).
  • Icono: Se eligió el ícono de engranaje o tuerca (fa-cog) para representar el módulo de configuración [06:26].

3. 🏗️ Estructura del Módulo (Scaffolding)

Se utilizaron comandos de Artisan para generar todos los archivos necesarios para el nuevo módulo, siguiendo una convención de recursos completa [08:36].

  • Comando de Generación: Se ejecutó un solo comando para crear el Modelo, la Migración y el Controlador con todos sus métodos de recurso:

    Bash

    php artisan make:model Configuracion -mcr

  • Vistas: Se crearon manualmente las cinco vistas básicas dentro de un nuevo directorio admin/configuraciones:
    • index.blade.php
    • show.blade.php
    • edit.blade.php
    • delete.blade.php
    • create.blade.php

4. 📝 Diseño de la Base de Datos (configuraciones)

Se definieron los campos de la tabla configuraciones en la migración para almacenar los datos fundamentales del sistema [09:13]:

CampoTipo de DatoPropósito
nombrestringNombre de la clínica/hospital.
direccionstringDirección de contacto.
telefonostringNúmero(s) de contacto.
correostringCorreo electrónico institucional.
logotextRuta o nombre del archivo del logotipo de la institución.

Finalmente, se ejecutó php artisan migrate para crear la nueva tabla en la base de datos [10:43].

5. 🛡️ Rutas y Permisos [11:34]

Se definieron las rutas de recurso completas para el módulo y se asignaron permisos exclusivos para el rol de administrador.

  • Rutas de Recurso: Se configuró el conjunto completo de rutas (Index, Create, Store, Show, Edit, Update, Destroy) en web.php.
  • Asignación de Permisos: Se actualizaron los seeders para que solo el rol admin tenga acceso a la lista completa de permisos del módulo configuraciones [14:46].

Nota: La ejecución de migrate:fresh --seed fue necesaria para cargar los nuevos permisos en el sistema, lo cual eliminó temporalmente los datos de prueba anteriores, incluyendo las reservas [15:04].

El próximo paso será trabajar en la lógica y la interfaz de usuario de las vistas para el nuevo módulo de configuración.