Files
hotel-hacienda/CHANGELOG.md
Consultoria AS 411d517ba4 docs: documentación extensiva del proyecto
- README.md con guía completa de instalación y arquitectura
- docs/BACKEND.md — guía detallada del API
- docs/FRONTEND.md — guía del SPA React
- docs/DATABASE.md — funciones SQL y patrones de datos
- docs/API.md — referencia completa de endpoints REST
- docs/DEPLOYMENT.md — guía de despliegue en producción
- docs/TROUBLESHOOTING.md — solución de problemas comunes
- CHANGELOG.md — historial de cambios
- CONTRIBUTING.md — guía de contribución
2026-06-09 16:26:09 -07:00

104 lines
3.6 KiB
Markdown

# 📜 Changelog — Sistema de Gestión Hotelera Hacienda San Angel
> Formato basado en [Keep a Changelog](https://keepachangelog.com/es-ES/1.0.0/).
---
## [1.0.0] - 2026-06-09
### Agregado
- Documentación técnica completa del sistema (`DOCUMENTACION_TECNICA.md`).
- README principal con guía de instalación y arquitectura.
- Documentación extendida en carpeta `docs/`:
- `BACKEND.md` — Guía detallada de la API Node.js/Express.
- `FRONTEND.md` — Guía del SPA React + Vite.
- `DATABASE.md` — Documentación de funciones SQL de PostgreSQL.
- `API.md` — Referencia completa de endpoints REST.
- `DEPLOYMENT.md` — Guía de despliegue en producción.
- `TROUBLESHOOTING.md` — Solución de problemas comunes.
- Commit de consolidación con todo el código base del proyecto.
- Repositorio migrado a Gitea (`https://git.consultoria-as.com`).
### Notas Técnicas
- El proyecto utiliza arquitectura "Database-First" donde la lógica de negocio reside en funciones SQL de PostgreSQL.
- Backend: Node.js + Express 5 + pg (sin ORM).
- Frontend: React 19 + Vite + React Router DOM 7.
- Integraciones: Stripe, Banxico, API de Facturas (México), Nodemailer.
---
## [Pre-1.0] — Historial de Desarrollo
### Funcionalidades Implementadas
#### Autenticación
- Login con validación mediante función SQL `validarusuario()`.
- Recuperación de contraseña con generación aleatoria y envío por correo.
- Creación de usuarios con roles numéricos.
#### Nómina (Payroll)
- CRUD de empleados con RFC, NSS, CURP, contactos de emergencia.
- Gestión de contratos laborales con fechas de vencimiento.
- Catálogos: puestos, áreas, grados de estudio, parentescos.
- Reporte de asistencia.
#### Gastos (Expenses)
- Creación de gastos con productos asociados (JSONB).
- Flujo de aprobación: Pendiente → Aprobado → Rechazado.
- Flujo de pago con estados separados de aprobación.
- Gastos mensuales recurrentes.
- Reportes de gastos y pagos.
#### Inventario
- Catálogo de productos con categorías, tipos, proveedores.
- Entradas de compra (`purchaseentry`) con recepción física.
- Ajustes de stock masivos via JSONB.
- Consumos de inventario por empleado.
- Descarte de productos con motivo.
- Reporte de movimientos de inventario.
#### Ingresos
- Carga masiva desde Little Hotelier (CSV/XLSX).
- Sincronización de facturas electrónicas via API externa.
- Integración con Stripe para transfers.
- Ingresos manuales (Horux) con categorías.
- Reportes P&L para Hotel y Restaurante.
#### Configuraciones
- Gestión de habitaciones y propiedades.
- Catálogos maestros: monedas, unidades, categorías de gasto, recurrencias.
#### Emails Programáticos
- Envío controlado de emails (1x/mes) para:
- Contratos por vencer
- Pagos atrasados
- Gastos próximos a fecha límite
- Cumpleaños de empleados
- Contratos vencidos
---
## Problemas Conocidos (Deuda Técnica)
### Críticos
- Sin autenticación JWT ni middleware de autorización en el backend.
- Ruta malformada: `updatesupplier/:id` falta `/` inicial.
- `useAuth` no exportado desde `AuthContext.jsx`.
- URLs hardcodeadas a `localhost` en varios servicios del frontend.
### Medios
- Sin `ProtectedRoute` activo en `App.jsx`.
- Mezcla inconsistente de `fetch` y `axios`.
- Código comentado masivo en varios archivos.
- `multer` incluido en dependencias del frontend (es un middleware de Node.js).
- Sin tests unitarios ni e2e.
### Leves
- Tailwind CSS instalado pero usado esporádicamente junto con Bootstrap y CSS puro.
- Sin manejo de estado de servidor (TanStack Query/SWR).
- Sin TypeScript.
---
> Para ver el historial completo de commits, ejecutar: `git log --oneline --all --graph`