volver

Sistema Hospitalario

Gestión de Turnos Médicos

Contexto

Proyecto de grado enfocado en resolver la ineficiencia en la asignación de turnos médicos dentro de instituciones hospitalarias. El sistema fue desarrollado con Laravel y MySQL, contenerizado con Docker, siguiendo una arquitectura modular y buenas prácticas de desarrollo.

Problema

Los procesos manuales de gestión de turnos generan errores humanos, demoras en la atención al paciente, falta de visibilidad sobre la disponibilidad del personal médico, y dificultad para generar reportes administrativos.

Solución

Sistema web modular con autenticación de usuarios, roles y permisos (RBAC), gestión de servicios hospitalarios, asignación de personal basada en disponibilidad, control de turnos en tiempo real y dashboard administrativo con métricas clave.

Arquitectura

┌─────────────────────────────────────────────────────────┐
│                    Cliente Web                           │
│              (HTML, CSS, JavaScript)                     │
└────────────────────┬────────────────────────────────────┘
                     │ HTTP Requests
                     ▼
┌─────────────────────────────────────────────────────────┐
│              Laravel Application                         │
│  ┌──────────┐  ┌──────────┐  ┌──────────────────────┐   │
│  │  Routes  │  │  Controllers  │  │  Services/Helpers  │   │
│  └──────────┘  └──────────┘  └──────────────────────┘   │
│  ┌──────────┐  ┌──────────┐  ┌──────────────────────┐   │
│  │ Eloquent │  │  Blade   │  │  Middleware (Auth)   │   │
│  └──────────┘  └──────────┘  └──────────────────────┘   │
└────────────────────┬────────────────────────────────────┘
                     │
                     ▼
┌─────────────────────────────────────────────────────────┐
│                    MySQL Database                         │
│  usuarios | roles | permisos | servicios | turnos        │
└─────────────────────────────────────────────────────────┘
                     ▲
                     │
┌─────────────────────────────────────────────────────────┐
│              Docker Containers                            │
│    [Nginx] ←→ [PHP-FPM] ←→ [MySQL] ←→ [phpMyAdmin]     │
└─────────────────────────────────────────────────────────┘
            

Stack Tecnológico

Laravel 10PHP 8.2MySQL 8DockerNginxHTML5CSS3JavaScriptGit

Módulos del Sistema

Gestión de Usuarios

Registro, autenticación y perfiles con roles asignables

Roles y Permisos

Control de acceso granular basado en roles (RBAC)

Servicios Hospitalarios

Catálogo completo de servicios médicos disponibles

Asignación de Personal

Vinculación de personal médico a servicios según disponibilidad

Disponibilidad Médica

Gestión de horarios y disponibilidad del personal

Control de Turnos

Asignación, modificación y seguimiento de turnos

Dashboard

Panel administrativo con métricas y estadísticas

Reportes

Generación de reportes de atención y ocupación

Métricas del Proyecto

8

Módulos

3+

Roles

9

Tecnologías

4

Contenedores

Lo que aprendí

  • Diseñar arquitecturas modulares con Laravel
  • Implementar autenticación y autorización con roles
  • Contenerizar aplicaciones web completas con Docker
  • Modelar bases de datos relacionales para dominios complejos
  • Aplicar buenas prácticas de desarrollo y control de versiones