
Sistema de Gestión de Permisos - Grace School
Plataforma full-stack de gestión de permisos con flujos de aprobación jerárquicos
Descripción del Proyecto
Sistema completo de gestión de permisos laborales desarrollado para Grace School que digitaliza y automatiza el proceso de solicitud y aprobación de permisos. La plataforma implementa un flujo de trabajo jerárquico con múltiples niveles de aprobación (Usuario Estándar → Supervisor → Director), control de cuotas según tipo de permiso, y sistema de notificaciones en tiempo real. Incluye 6 tipos de permisos con reglas de negocio específicas, validación de RUT chileno, y gestión completa del ciclo de vida de solicitudes.

Arquitectura y Tecnologías
Arquitectura full-stack moderna basada en API RESTful con separación de responsabilidades. Backend construido con Node.js + Express + MongoDB implementando autenticación JWT, middleware de autorización basado en roles, y servicios para notificaciones y emails. Frontend desarrollado con Next.js 15.4.2 + React 19 + TypeScript, utilizando Radix UI y shadcn/ui para componentes accesibles, Tailwind CSS para estilos, y dashboards específicos por rol. Base de datos MongoDB con Mongoose ODM gestionando 5 modelos principales: Users con jerarquías (jefe_directo_id), PermissionRequests con estados de aprobación, PermissionTypes con cuotas y reglas, Notifications en memoria, y Hierarchy para estructura organizacional.
Vista Desktop Completa
Características Principales
Sistema de roles jerárquicos (USER_STANDARD, USER_SUPERVISOR, USER_DIRECTOR, USER_INSPECTOR, USER_RRHH) con permisos y vistas diferenciadas. Flujo de aprobación multinivel con notificaciones automáticas en cada estado. Control de cuotas por tipo de permiso (Administrativo, Cumpleaños, Salir Antes, Solicitud General, Horas Compensadas, Permisos por Horas). Sistema completo de notificaciones push in-app con dropdown de campana y toasts. Autenticación segura con verificación de email mediante códigos de 6 dígitos y recuperación de contraseñas con tokens temporales. Validaciones avanzadas: RUT chileno, 24 horas de anticipación mínima, sin solapamiento de permisos, horarios específicos según tipo. Suite completa de scripts de utilidad para gestión de usuarios, mantenimiento, y debugging.
Seguridad y Validaciones
Implementación de autenticación JWT con control de acceso basado en roles (RBAC). Sistema de verificación de email con códigos de 6 dígitos con expiración de 15 minutos. Recuperación de contraseñas mediante tokens seguros de 32 bytes con expiración de 1 hora. Validación exhaustiva de datos: formato RUT chileno, fortaleza de contraseñas, rangos horarios permitidos (07:00-18:00), y prevención de solapamiento de permisos. Mensajes de error seguros sin vulnerabilidades de enumeración de usuarios. Integración con Nodemailer para envío de emails transaccionales con plantillas HTML profesionales.
Detalles

Stack Tecnológico
Galería Adicional

