La App permitirá a los miembros de la comunidad universitaria acceder a una oferta de productos alimenticios. Tiene el objetivo de brindar una alternativa para la limitada oferta de las cafeterías disponibles en la propia universidad.
GitHub Project: [https://github.com/orgs/codeurjc-students/projects/10]
Blog de Medium: [https://medium.com/@jesusp.sanchez77]
Video YouTube Fase 1: [https://youtu.be/QWPBhac1iVk?si=nwOW65DqL7pB7ikM]
- Alumno: Jesús Pérez Sánchez
- Tutor: Micael Gallego Carrillo
IMPORTANTE: Es necesario tener Docker instalado en el ordenador o máquina virtual donde se ejecutará la aplicación. Se recomienda tener instalado además Docker Desktop [https://www.docker.com/products/docker-desktop/]
- Clonar el repositorio de GitHub: [https://github.com/codeurjc-students/2024-bits-of-flavor.git]
- Abrir nueva terminal y situarnos en la raiz del proyecto.
- Ejecutar el comando cd docker para cambiar de directorio.
- Ejecutar el comando docker-compose up para iniciar el contenedor.
- La aplicación web estará disponible en la URL: https://localhost:8443/new/
- Ejecutar el comando docker-compose down para parar el contenedor.
CREDENCIALES DE ACCESO: Al iniciar la app existen dos usuarios precreados con permisos diferentes:
- Nombre de usuario: user // Contraseña: pass // Rol: USER
- Nombre de usuario: admin // Contraseña: pass // Rol: ADMIN
Admeás, en los datos de ejemplo se carga una lista de 10 platos/productos visibles desde la pestaña "Buscar" en la barra de navegación. Para futuras versiones se añadiran más datos de ejemplo.
- Clonar el repositorio de GitHub: [https://github.com/codeurjc-students/2024-bits-of-flavor.git]
- Abrir nueva terminal y situarnos en la raiz del proyecto.
- Ejecutar el comando cd docker para cambiar de directorio.
- Ejecutar el comando ./script.sh para construir una nueva imágen Docker.
- La imágen se publicará en el repositorio [https://hub.docker.com/r/jperezsa2020/java_app].
La version 1.0.0 incluye las siguientes funcionalidades displonibles:
- Visualizar el listado de productos.
- Filtrar el listado de productos.
- Visualizar página con los detalles de un producto específico.
- Registrarse.
- Iniciar sesión.
- Comprar y seleccionar fecha de recogida de productos.
- Modificar perfil de usuario.
- Crear y añadir nuevos productos a la app.
- Eliminar productos ya existentes.
Existen dos tipos de roles en la aplicación: USER y ADMIN. Los permisos y las funcionalidades disponibles para cada tipo de usuario varian en funcion del rol adquirido.
NOTA: Los usuarios con rol ADMIN también tienen permiso para acceder a las funcionalidades de USER.
Usuario anónimo: tipo usuario sin cuenta en la aplicación o sin la sesión iniciada. Este usuario no dispone de ningún rol. Sus funcionalidades disponibles son: 1, 2, 3, 4 y 5.
Usuario registrado: tipo de usuario estandar con la sesión iniciada. Este usuario dispone del rol USER. Sus funcionalidades disponibles son: 6 y 7 (además de las funcionalidades de usuario anónimo).
Usuario administrador: tipo de usuario con la sesión iniciada. Este usuario despone del rol ADMIN. Tiene acceso a todas las funcionalides disponibles en la aplicación.
- Página de inicio:
- Página de Iniciar Sesion / Registrarse:
- Página de búsqueda con filtro:
- Página de detalles de producto:
- Página de perfil de usuario:
- Página de resumen de compra y proceso de pago:
- Página de administrador para añadir un nuevo producto:
- Usuario | User
- Producto | Product
- Pedido | Ticket
⋅⋅⋅ Un Pedido lo realiza un Cliente (N:1) ⋅⋅⋅ Un Pedido es una lista de varios Productos (1:M)
- Cada Usuario tiene una foto de perfil.
- Cada Producto tiene una imagen asociada.
- Generación de tickets (PDFs) con los detalles de compra.
- Sistema de ofertas personalizadas en base a los productos comprados previamente por el usuario.
- Visualizar el listado de productos. (BÁSICA)
- Filtrar el listado de productos. (BÁSICA)
- Visualizar página con los detalles de un producto específico. (BÁSICA)
- Registrarse. (BÁSICA)
- Iniciar sesión. (BÁSICA)
- Visualizar gráfico con estadísticas de productos. (AVANZADA)
- Añádir productos al carrito de compra. (BÁSICA)
- Seleccionar fecha de recogida de productos. (BÁSICA)
- Modificar perfil de usuario. (BÁSICA)
- Descargar ticket PDF con los detalles de compra. (AVANZADA)
- Simulación de pasarela de pago real con Stipe. (AVANZADA)
- Crear y añadir nuevos productos a la app. (BÁSICA)
- Eliminar productos ya existentes. (BÁSICA)
- Sistema de gestión de ofertas. (AVANZADA)
- Página de inicio:
- Página de Iniciar Sesión | Registrarse
- Página de búsqueda con filtro:
- Página de detalles de producto:
- Página de perfil de usuario:
- Página de resumen de compra y proceso de pago:
- Página de administrador para añadir un nuevo producto: