- Introducción
- Características
- Interfaz de Usuario
- Contribuir
- Para el Desarrollador
- Documentación API
- Recordatorios
La aplicación web está desarrollada en el backend con PHP usando Slim Framework para las API REST. Para la capa de datos se utilizó MySQL y en el frontend Angular V18. Cada una de estas capas está separada por contenedores en Docker. Para la seguridad de las APIs se utilizó JWT, entre otras dependencias de PHP.
Este sistema web permite a los clientes reservar habitaciones en un hotel. Las reservaciones se cobran por noche, contando desde el día de la reservación hasta las 12 PM del día siguiente.
- Puede modificar, agregar, eliminar, actualizar y acceder a cualquier recurso y funcionalidad del sistema.
- Tiene acceso completo a todas las funcionalidades y datos del sistema.
- Puede modificar, agregar, eliminar, actualizar y acceder a los recursos de habitaciones y reservaciones.
- Puede realizar reservaciones en nombre de los clientes.
- Gestiona las reservas y la disponibilidad de las habitaciones.
- Puede realizar reservaciones de habitaciones.
- Puede cancelar sus propias reservaciones.
- Solo puede ver las reservaciones que ha hecho él mismo.
(Incluir aquí las directrices para contribuir al proyecto, si las hay.)
- Tener Docker-Desktop, PHP, Node.js, Angular, Composer, Slim Framework, etc.
- Descargar el proyecto y descomprimirlo.
- Descomprimir la carpeta de presentación y asegurarse de que esté al mismo nivel que las carpetas de datos y negocios.
- Abrir la consola o CMD y dirigirse a la ubicación de la carpeta de presentación, luego ejecutar el comando
npm install
. - Abrir la carpeta de datos y realizar
composer install
. Puede ser necesario hacerlo también en la carpeta de negocios. - Ejecutar el comando
docker-compose up --build -d
en la ubicación de la carpeta de datos. - Probar la aplicación en
localhost:80
. Si no funciona, ir a la carpeta de presentación y ejecutarng serve -p
. - El administrador o superusuario del sistema es
55
con contraseña55
.
Para más detalles sobre la API, consulta la Documentación de la API.
- No se creo un diagrama de componentes.
- No hay manual de usuario especifico del sistema
- El superusuario del sistema es 55 y su contraseña es 55.
- La funcionalidad de cambiar rol no está.
- Los administradores pueden modificar datos de otros administradores (esto es importante arreglarlo).
- El usuario puede ser el id numérico o el correo.
- Solo se puede reservar por noches (Deberia asignarse por cualquier rango de fecha válido y deseado por el cliente).
- El cliente no puede registrarse en el sistema, debe solictarlo al recepcionista o administrador.
- El cliente no puede ver las habitaciones ocupadas y tampoco las reservaciones que no son propias de el.