Skip to content

Borghii/Sales-System-MySQL

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sistema de ventas en Java FX

Aplicación de Gestión de Ventas con Java 17, JavaFX, MySQL y Patrones de Diseño MVC y DAO

License: MIT

📑 Descripcion

Este proyecto es una herramienta que diseñé para mejorar mis habilidades con el lenguaje Java, centrándome en la gestión de ventas para vendedores. Utiliza los patrones de diseño MVC (Modelo-Vista-Controlador) y DAO (Data Access Object) para una arquitectura robusta y modular.

Con esta aplicación, puedes iniciar sesión como vendedor, administrar tus productos y clientes, así como realizar ventas de manera sencilla. Además, cuenta con una sección de reportes donde puedes ver detalles de tus ventas, filtrarlas y generar informes personalizados.

Todos los datos se almacenan de forma segura en una base de datos MySQL, utilizando el patrón DAO para separar la lógica de acceso a datos de la lógica de negocio. Esto garantiza un código más limpio, mantenible y escalable.

Además, hay una sección de estadísticas que te muestra cuántas ventas has realizado de cada producto y cómo han variado a lo largo del tiempo, utilizando el patrón MVC para separar la lógica de presentación de la lógica de negocio y la manipulación de datos.

💻 Entorno

Este proyecto requiere las siguientes herramientas y versiones:

  • SO: Windows
  • Java: 17
  • Maven: 3.8.5
  • MySQL: 8.0.33
  • JavaFX: 21

🚀 Instalacion

Para utilizar este proyecto, simplemente clona el repositorio en tu máquina local y sigue estos pasos:

Instalación del JDK 17

Para ejecutar este proyecto, necesitarás tener instalado el JDK 17. Sigue estos pasos para instalarlo:

  1. Descarga del JDK 17: Visita la página de descargas de Oracle JDK en https://www.oracle.com/java/technologies/javase-jdk17-downloads.html.
  2. Selecciona tu sistema operativo: Descarga la versión adecuada del JDK 17 para tu sistema operativo. Asegúrate de seleccionar la versión correcta para Windows.
  3. Instalación: Una vez descargado el archivo de instalación, sigue las instrucciones proporcionadas por Oracle para instalar el JDK 17 en tu sistema.
  4. Configuración de las Variables de Entorno (Opcional): Después de instalar el JDK 17, puedes configurar las variables de entorno JAVA_HOME y PATH en tu sistema para que apunten al directorio de instalación del JDK. Esto facilitará el uso del JDK desde la línea de comandos.

Configuración de la Base de Datos

Antes de ejecutar el proyecto, asegúrate de configurar la base de datos:

  1. Instala MySQL: Si aún no tienes MySQL instalado, descárgalo e instálalo desde https://dev.mysql.com/downloads/mysql/.

  2. Crea la Base de Datos: Utiliza el script proporcionado llamado salesystem.sql para importar la base de datos y las tablas necesarias.

  3. Configura la Conexión: Para configurar la conexión a la base de datos, sigue estos pasos:

    • Crea un archivo llamado config.properties en la ruta src/main/java/org/borghisales/salessystem/model/.
    • Define las propiedades de configuración para la conexión a la base de datos en el archivo config.properties.
    • Las propiedades necesarias son db.url, db.user y db.password. Por ejemplo:
    db.url=jdbc:mysql://localhost:3306/salesystem
    db.user=usuario
    db.password=contraseña
    

    Asegúrate de reemplazar nombre_basedatos, usuario y contraseña con los valores correspondientes de tu entorno de desarrollo.

Ejecución del Proyecto

Una vez que hayas configurado la base de datos, puedes ejecutar el proyecto siguiendo estos pasos:

  1. Clona el Proyecto: Clona este repositorio en tu máquina local utilizando Git o descargando el archivo ZIP.
  2. Importa el Proyecto: Importa el proyecto en tu IDE preferido (como IntelliJ, Eclipse, etc.) como un proyecto Maven existente.
  3. Verifica las Dependencias: Antes de compilar y ejecutar el proyecto, asegúrate de que todas las dependencias estén resueltas correctamente. Esto se puede hacer actualizando Maven o ejecutando el comando mvn clean install desde la línea de comandos en el directorio del proyecto. Esto garantizará que todas las dependencias se descarguen y configuren correctamente.
  4. Compila y Ejecuta: Compila y ejecuta el proyecto desde tu IDE. Asegúrate de ejecutar la clase principal adecuada (si es necesario) para iniciar la aplicación.

Modificación de las Vistas con Scene Builder

Si deseas modificar las vistas de la aplicación, puedes utilizar Scene Builder, una herramienta gráfica para diseñar interfaces de usuario JavaFX. Para instalar Scene Builder, sigue estos pasos:

  1. Descarga Scene Builder: Puedes descargar Scene Builder desde el sitio web oficial de Gluon https://gluonhq.com/products/scene-builder/.
  2. Instalación: Una vez descargado, sigue las instrucciones de instalación para tu sistema operativo.

🧬 Estructura Basica

+ java
  |-- controllers // controladores de la aplicacion
  |-- model	// modelos de datos de la aplicación
  --Main.java // donde se inicia la ejecución del programa      
+ Resources
  |-- images // imágenes utilizadas en la aplicación
  |-- views // vistas de la aplicación fxml
  |-- reports // informes generados por la aplicación

🗄️ Diagrama de Base de Datos

💡 Fucionalidades

Inicio de sesión

Para iniciar sesión, se requiere el DNI y la contraseña del vendedor. En la base de datos, estos corresponden a los atributos del vendedor(seller), donde el DNI se asocia con 'dni' y la contraseña con 'user'.

Pantalla principal

La pantalla principal muestra las siguientes ventanas

  • Menu: incluyen la posibilidad de salir o visitar la documentación

  • Sales: Permite generar nuevas ventas.

  • Management: Ofrece operaciones CRUD (Crear, Leer, Actualizar, Eliminar) para clientes, productos y vendedores.

  • Reports: Aquí se encuentran las operaciones de reportes y estadísticas relacionadas.

Sales

ventas.mp4

Management

management.mp4

Reports

reports.mp4

📧 Contacto

Si tienes alguna pregunta, sugerencia o crítica sobre el proyecto, no dudes en contactarme por correo electrónico a [email protected].

📝 Licencia

Este proyecto está bajo licencia. Ver el archivo LICENSE para más detalles.

⬆ Volver al inicio

About

Sistema de ventas con JavaFX/Maven/MySQL

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages