feat: inicializacion de Help Desk segun estandar Telcotronics con bitacora de errores e integracion MCP

This commit is contained in:
2026-10-16 23:29:32 -05:00
commit 0f2708462e
54 changed files with 7590 additions and 0 deletions
+41
View File
@@ -0,0 +1,41 @@
# Memoria del Proyecto - Help Desk
## Fecha de inicio
16 de Mayo, 2026
## Stack tecnológico
- Node.js con Express 5
- EJS como motor de plantillas
- MariaDB/MySQL con mysql2
- express-session + bcryptjs para autenticación
- Bootstrap 5 + Font Awesome para UI
- morgan, connect-flash, express-fileupload
## Decisiones de arquitectura
1. **MySQL vs MongoDB**: El usuario eligió MySQL (MariaDB) como base de datos, consistente con su stack habitual en otros proyectos Node.
2. **express-session vs JWT**: Se optó por sesiones del lado del servidor con express-session en lugar de JWT para mantener la compatibilidad con connect-flash y facilitar mensajes flash. Aunque se instaló jsonwebtoken, no se está utilizando activamente.
3. **3 roles de usuario**: admin, agent, client. Cada uno con acceso a rutas específicas protegidas por middleware de autenticación.
4. **EJS con partials**: Se usan partials (header.ejs, footer.ejs, navbar.ejs, sidebar.ejs) en lugar de layouts para mantener la estructura simple sin dependencias extra.
5. **Bootstrap 5 desde CDN**: No se incluye Bootstrap local para mantener el proyecto liviano. Se carga desde CDN junto con Font Awesome.
## Base de Datos
- Servidor MariaDB en `192.168.10.149`
- Usuario: `helpdesk`@`192.168.10.101`
- Base de datos: `help_desk`
- 4 tablas: users, departments, tickets, ticket_respuestas
## Puerto del servidor
- El servidor corre en el puerto 3008
## Pendientes / Notas
- La contraseña del usuario helpdesk se cambió de `password` a `5oyN9zvq/2K8b1Fs`
- jsonwebtoken está instalado como dependencia pero no se usa activamente
- El frontend es funcional pero se puede mejorar
## Problemas conocidos
- node --watch no funciona correctamente en algunos entornos; usar nodemon como alternativa