Skip to content

Aplicación de escritorio para la gestión de inventario, productos, proveedores y movimientos de stock. Desarrollada en Java + JavaFX con persistencia mediante Hibernate y MySQL.

Notifications You must be signed in to change notification settings

DavidLazaro08/StockManager

Repository files navigation

Stock Manager

1. Descripción del proyecto

Stock Manager es una aplicación de escritorio desarrollada en Java y JavaFX para gestionar inventario de manera sencilla.
Permite llevar el control de productos, proveedores y movimientos de stock, todo apoyado en Hibernate y MySQL para la persistencia de datos.

El sistema trabaja con dos roles claramente diferenciados:

  • Administrador: crea y gestiona usuarios del sistema.
  • Empleado: realiza la gestión del inventario (productos, proveedores, movimientos y consultas).

El objetivo es ofrecer una herramienta clara y funcional para un entorno real de trabajo, manteniendo un uso sencillo desde la primera ejecución.


2. Tecnologías utilizadas

  • Java
  • JavaFX
  • Hibernate
  • MySQL
  • Maven

3. Requisitos previos

Para ejecutar la aplicación necesitas:

  • MySQL en ejecución (por ejemplo, desde XAMPP).
  • No es necesario crear tablas: Hibernate las genera automáticamente al iniciar la aplicación.
  • Asegúrate de que tu usuario/contraseña de MySQL coinciden con la configuración del proyecto.
  • Java 17 o superior.
  • Maven instalado o ejecutado desde el IDE.

4. Instalación y ejecución

1. Clonar el repositorio

Clona el proyecto en tu equipo:

git clone https://github.com/DavidLazaro08/StockManager

2. Preparar conexión a MySQL

En el archivo hibernate.cfg.xml asegúrate de que los datos de conexión son correctos:

<property name="connection.url">jdbc:mysql://localhost:3306/StockManagerDB</property>
<property name="connection.username">root</property>
<property name="connection.password"></property>

La base de datos StockManagerDB puede estar vacía:
Hibernate la inicializa y crea todas las tablas en el primer arranque.

3. Ejecutar la aplicación

Desde el IDE o desde terminal:

mvn clean javafx:run

4. Primer inicio de sesión

Si en la base de datos no existe ningún usuario, el sistema crea automáticamente:

  • Email: admin@admin
  • Contraseña: 1234

Este usuario tiene el rol de administrador.


5. Flujo de uso básico

1. Iniciar sesión como administrador

Accede con:

Email: admin@admin
Contraseña: 1234

2. Crear usuarios empleados

Desde el panel de administración, crea uno o varios usuarios con rol empleado.

Estos usuarios serán quienes gestionen el inventario.

3. Entrar como empleado

Cierra sesión y accede con el usuario recién creado.
El rol de empleado desbloquea:

  • Gestión de productos
  • Gestión de proveedores
  • Movimientos de stock (entradas y salidas)
  • Inventario
  • Importación y exportación

4. Uso general del sistema

  • Al crear un producto con stock inicial, el sistema registra automáticamente un movimiento de entrada.
  • Todas las operaciones de stock quedan registradas.
  • La aplicación carga imágenes de productos desde un directorio local dentro del usuario (~/.stockmanager/images/productos).

6. Funcionalidades principales

  • Gestión de productos: creación, edición, eliminación y control de stock.
  • Cálculo automático de IVA en precios y costes.
  • Gestión de proveedores enlazados a cada producto.
  • Movimientos de stock: entradas, salidas y registro automático.
  • Inventario completo con stock total y valoración del inventario.
  • Búsqueda y filtrado de productos.
  • Importar y exportar datos en XML/JSON.

7. Estructura del proyecto

  • app/: clase principal de arranque.
  • controller/: controladores JavaFX.
  • database/: clases de acceso a datos (DAO) y utilidades Hibernate.
  • model/: entidades del dominio.
  • viewmodel/: modelos auxiliares para la UI.
  • resources/view/: archivos FXML de las vistas.
  • resources/images/: iconos y logos.
  • docs/: documentación del proyecto.

8. Mejoras futuras

  • Panel de estadísticas.
  • Módulo de pedidos y facturación.
  • Gestión avanzada de permisos.
  • Informes y gráficos.
  • Nuevos formatos de exportación.

9. Licencia

Proyecto desarrollado con fines exclusivamente educativos.

10. Créditos

Aplicación desarrollada por Juan Jiménez, Miguel Benjumea, Ronnald Benítez y David Gutiérrez.

📘 Documentación del proyecto

Puedes consultar la memoria completa aquí:

➡️ Documentación - Stock Manager V2 (PDF)

About

Aplicación de escritorio para la gestión de inventario, productos, proveedores y movimientos de stock. Desarrollada en Java + JavaFX con persistencia mediante Hibernate y MySQL.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •