From d684c59adcdee502dff9e3da4afdb11173ba0fe9 Mon Sep 17 00:00:00 2001
From: "victor.monge" <zs22016120@estudiantes.uv.mx>
Date: Wed, 5 Mar 2025 10:54:31 -0600
Subject: [PATCH] Avances con el modelo de datos

---
 .../ProyectoVentaBoletos.java                 |  2 +-
 .../ConexionSingleton.java                    |  8 +-
 .../MenuController.java                       |  4 +-
 .../src/main/java/model/Asiento.java          | 32 ++++++++
 .../src/main/java/model/Boleto.java           | 81 +++++++++++++++++++
 .../src/main/java/model/Evento.java           | 34 ++++++++
 .../src/main/java/model/ModeloSQL.java        | 47 +++++++++++
 .../src/main/java/model/Venta.java            | 55 +++++++++++++
 .../src/main/java/modelo/Asiento.java         |  8 --
 .../src/main/java/modelo/Boleto.java          |  5 --
 .../src/main/java/modelo/Evento.java          |  8 --
 .../src/main/java/modelo/Reporte.java         |  5 --
 .../src/main/java/modelo/Venta.java           |  5 --
 .../src/main/java/{vista => view}/Menu.form   |  3 -
 .../src/main/java/{vista => view}/Menu.java   |  3 +-
 .../main/java/{vista => view}/MenuSala.form   |  0
 .../main/java/{vista => view}/MenuSala.java   |  2 +-
 17 files changed, 258 insertions(+), 44 deletions(-)
 rename ProyectoVentaBoletos/src/main/java/{controlador => controller}/ConexionSingleton.java (89%)
 rename ProyectoVentaBoletos/src/main/java/{controlador => controller}/MenuController.java (76%)
 create mode 100644 ProyectoVentaBoletos/src/main/java/model/Asiento.java
 create mode 100644 ProyectoVentaBoletos/src/main/java/model/Boleto.java
 create mode 100644 ProyectoVentaBoletos/src/main/java/model/Evento.java
 create mode 100644 ProyectoVentaBoletos/src/main/java/model/ModeloSQL.java
 create mode 100644 ProyectoVentaBoletos/src/main/java/model/Venta.java
 delete mode 100644 ProyectoVentaBoletos/src/main/java/modelo/Asiento.java
 delete mode 100644 ProyectoVentaBoletos/src/main/java/modelo/Boleto.java
 delete mode 100644 ProyectoVentaBoletos/src/main/java/modelo/Evento.java
 delete mode 100644 ProyectoVentaBoletos/src/main/java/modelo/Reporte.java
 delete mode 100644 ProyectoVentaBoletos/src/main/java/modelo/Venta.java
 rename ProyectoVentaBoletos/src/main/java/{vista => view}/Menu.form (97%)
 rename ProyectoVentaBoletos/src/main/java/{vista => view}/Menu.java (98%)
 rename ProyectoVentaBoletos/src/main/java/{vista => view}/MenuSala.form (100%)
 rename ProyectoVentaBoletos/src/main/java/{vista => view}/MenuSala.java (99%)

diff --git a/ProyectoVentaBoletos/src/main/java/com/cip/proyectoventaboletos/ProyectoVentaBoletos.java b/ProyectoVentaBoletos/src/main/java/com/cip/proyectoventaboletos/ProyectoVentaBoletos.java
index f9596c5..732144a 100644
--- a/ProyectoVentaBoletos/src/main/java/com/cip/proyectoventaboletos/ProyectoVentaBoletos.java
+++ b/ProyectoVentaBoletos/src/main/java/com/cip/proyectoventaboletos/ProyectoVentaBoletos.java
@@ -1,9 +1,9 @@
 package com.cip.proyectoventaboletos;
 
+import view.Menu;
 import javax.swing.UIManager;
 import com.formdev.flatlaf.themes.FlatMacLightLaf;
 import javax.swing.UnsupportedLookAndFeelException;
-import vista.*;
 
 public class ProyectoVentaBoletos {
 
diff --git a/ProyectoVentaBoletos/src/main/java/controlador/ConexionSingleton.java b/ProyectoVentaBoletos/src/main/java/controller/ConexionSingleton.java
similarity index 89%
rename from ProyectoVentaBoletos/src/main/java/controlador/ConexionSingleton.java
rename to ProyectoVentaBoletos/src/main/java/controller/ConexionSingleton.java
index 9c8eb70..7caa864 100644
--- a/ProyectoVentaBoletos/src/main/java/controlador/ConexionSingleton.java
+++ b/ProyectoVentaBoletos/src/main/java/controller/ConexionSingleton.java
@@ -1,13 +1,13 @@
-package controlador;
+package controller;
 
 import java.sql.DriverManager; 
 import java.sql.SQLException;
 import java.sql.Connection;
 
 public class ConexionSingleton {
-    private static final String URL = "jdbc:mysql://localhost:3306/venta_boletos";
-    private static final String USERNAME = "vboletos";
-    private static final String PASSWORD = "vboletos";
+    private static final String URL = "jdbc:mysql://localhost:3306/ventaboletos";
+    private static final String USERNAME = "uservb";
+    private static final String PASSWORD = "uservbps";
     private static Connection CONEXION = null;
     
     private ConexionSingleton(){
diff --git a/ProyectoVentaBoletos/src/main/java/controlador/MenuController.java b/ProyectoVentaBoletos/src/main/java/controller/MenuController.java
similarity index 76%
rename from ProyectoVentaBoletos/src/main/java/controlador/MenuController.java
rename to ProyectoVentaBoletos/src/main/java/controller/MenuController.java
index 487fb65..655cf6e 100644
--- a/ProyectoVentaBoletos/src/main/java/controlador/MenuController.java
+++ b/ProyectoVentaBoletos/src/main/java/controller/MenuController.java
@@ -1,6 +1,6 @@
-package controlador;
+package controller;
 
-import vista.Menu;
+import view.Menu;
 
 public class MenuController {
     private Menu menu;
diff --git a/ProyectoVentaBoletos/src/main/java/model/Asiento.java b/ProyectoVentaBoletos/src/main/java/model/Asiento.java
new file mode 100644
index 0000000..3f8e962
--- /dev/null
+++ b/ProyectoVentaBoletos/src/main/java/model/Asiento.java
@@ -0,0 +1,32 @@
+package model;
+
+public class Asiento {
+    private String idEvento;
+    private String fila;
+    private int numero;
+
+    public void setIdEvento(String idEvento) {
+        this.idEvento = idEvento;
+    }
+    
+    public void setFila(String fila) {
+        this.fila = fila;
+    }
+
+    public void setNumero(int numero) {
+        this.numero = numero;
+    }
+    
+    public String getIdEvento() {
+        return idEvento;
+    }
+
+    public String getFila() {
+        return fila;
+    }
+
+    public int getNumero() {
+        return numero;
+    }
+    
+}
diff --git a/ProyectoVentaBoletos/src/main/java/model/Boleto.java b/ProyectoVentaBoletos/src/main/java/model/Boleto.java
new file mode 100644
index 0000000..94f0107
--- /dev/null
+++ b/ProyectoVentaBoletos/src/main/java/model/Boleto.java
@@ -0,0 +1,81 @@
+package model;
+
+import java.time.LocalDateTime;
+
+public class Boleto {
+    private int idBoleto;
+    private int idEvento;
+    private int idAsiento;
+    private double precio;
+    private String estado;
+    private LocalDateTime fechaVenta;
+    private Integer idVenta;
+
+    public Boleto(int idBoleto, int idEvento, int idAsiento, double precio, String estado, LocalDateTime fechaVenta, Integer idVenta) {
+        this.idBoleto = idBoleto;
+        this.idEvento = idEvento;
+        this.idAsiento = idAsiento;
+        this.precio = precio;
+        this.estado = estado;
+        this.fechaVenta = fechaVenta;
+        this.idVenta = idVenta;
+    }
+
+    public void setIdBoleto(int idBoleto) {
+        this.idBoleto = idBoleto;
+    }
+
+    public void setIdEvento(int idEvento) {
+        this.idEvento = idEvento;
+    }
+
+    public void setIdAsiento(int idAsiento) {
+        this.idAsiento = idAsiento;
+    }
+
+    public void setPrecio(double precio) {
+        this.precio = precio;
+    }
+
+    public void setEstado(String estado) {
+        this.estado = estado;
+    }
+
+    public void setFechaVenta(LocalDateTime fechaVenta) {
+        this.fechaVenta = fechaVenta;
+    }
+
+    public void setIdVenta(Integer idVenta) {
+        this.idVenta = idVenta;
+    }
+
+    public int getIdBoleto() {
+        return idBoleto;
+    }
+
+    public int getIdEvento() {
+        return idEvento;
+    }
+
+    public int getIdAsiento() {
+        return idAsiento;
+    }
+
+    public double getPrecio() {
+        return precio;
+    }
+
+    public String getEstado() {
+        return estado;
+    }
+
+    public LocalDateTime getFechaVenta() {
+        return fechaVenta;
+    }
+
+    public Integer getIdVenta() {
+        return idVenta;
+    }
+    
+    // Método para cambiar estado venderBoleto() que establezca estado, fechaVenta e idVenta.
+}
diff --git a/ProyectoVentaBoletos/src/main/java/model/Evento.java b/ProyectoVentaBoletos/src/main/java/model/Evento.java
new file mode 100644
index 0000000..4860bb4
--- /dev/null
+++ b/ProyectoVentaBoletos/src/main/java/model/Evento.java
@@ -0,0 +1,34 @@
+package model;
+
+import java.time.LocalDate;
+
+public class Evento {
+    private int idEvento;
+    private String nombre;
+    private LocalDate fecha;
+
+    public void setIdEvento(int idEvento) {
+        this.idEvento = idEvento;
+    }
+
+    public void setNombre(String nombre) {
+        this.nombre = nombre;
+    }
+
+    public void setFecha(LocalDate fecha) {
+        this.fecha = fecha;
+    }
+
+    public int getIdEvento() {
+        return idEvento;
+    }
+
+    public String getNombre() {
+        return nombre;
+    }
+
+    public LocalDate getFecha() {
+        return fecha;
+    }
+        
+}
diff --git a/ProyectoVentaBoletos/src/main/java/model/ModeloSQL.java b/ProyectoVentaBoletos/src/main/java/model/ModeloSQL.java
new file mode 100644
index 0000000..fdad1fc
--- /dev/null
+++ b/ProyectoVentaBoletos/src/main/java/model/ModeloSQL.java
@@ -0,0 +1,47 @@
+package model;
+
+import controller.ConexionSingleton;
+import java.sql.*;
+import java.time.LocalDateTime;
+import java.util.ArrayList;
+import java.util.List;
+
+public class ModeloSQL {
+    Connection con;
+    
+    public ModeloSQL(){
+        con = ConexionSingleton.getInstance();
+    }
+    
+    // Eventos
+    public ResultSet obtenerEventos(){
+        ResultSet rs = null;
+        return rs;
+    }
+    
+    // Boleto
+    
+    public ResultSet obtenerBoletosPorEvento(int idEvento){
+        ResultSet rs = null;
+        return rs;
+    }
+    
+    public boolean actualizarEstadoBoleto(int idBoleto, String nuevoEstado, LocalDateTime fechaVenta, Integer idVenta){
+        return true;
+    }
+    
+    public ResultSet getBoleto(int idEvento, int idAsiento){
+        ResultSet rs = null;
+        return rs;
+    }
+    
+    // Venta
+    public boolean registrarVenta(Venta venta){
+        return true;
+    }
+    
+    public ResultSet getVentasPorPeriodo(LocalDateTime inicio, LocalDateTime fin){
+        ResultSet rs = null;
+        return rs;
+    }
+}
diff --git a/ProyectoVentaBoletos/src/main/java/model/Venta.java b/ProyectoVentaBoletos/src/main/java/model/Venta.java
new file mode 100644
index 0000000..a20c358
--- /dev/null
+++ b/ProyectoVentaBoletos/src/main/java/model/Venta.java
@@ -0,0 +1,55 @@
+package model;
+
+import java.time.LocalDateTime;
+import java.util.List;
+
+public class Venta {
+    private int idVenta;
+    private int idEvento;
+    private LocalDateTime fechaVenta;
+    private String vendedor;
+    private List<Boleto> boletos;
+
+    public void setIdVenta(int idVenta) {
+        this.idVenta = idVenta;
+    }
+
+    public void setIdEvento(int idEvento) {
+        this.idEvento = idEvento;
+    }
+
+    public void setFechaVenta(LocalDateTime fechaVenta) {
+        this.fechaVenta = fechaVenta;
+    }
+
+    public void setBoletos(List<Boleto> boletos) {
+        this.boletos = boletos;
+    }
+
+    public void setVendedor(String vendedor) {
+        this.vendedor = vendedor;
+    }
+
+    public int getIdVenta() {
+        return idVenta;
+    }
+
+    public int getIdEvento() {
+        return idEvento;
+    }
+
+    public LocalDateTime getFechaVenta() {
+        return fechaVenta;
+    }
+
+    public String getVendedor() {
+        return vendedor;
+    }
+
+    public List<Boleto> getBoletos() {
+        return boletos;
+    }
+    
+    // métodos para agregar boletos, calcular total, etc.
+
+}
diff --git a/ProyectoVentaBoletos/src/main/java/modelo/Asiento.java b/ProyectoVentaBoletos/src/main/java/modelo/Asiento.java
deleted file mode 100644
index bce2320..0000000
--- a/ProyectoVentaBoletos/src/main/java/modelo/Asiento.java
+++ /dev/null
@@ -1,8 +0,0 @@
-package modelo;
-
-public class Asiento {
-    private String idEvento;
-    private boolean reservado;
-    
-    
-}
diff --git a/ProyectoVentaBoletos/src/main/java/modelo/Boleto.java b/ProyectoVentaBoletos/src/main/java/modelo/Boleto.java
deleted file mode 100644
index aa5af34..0000000
--- a/ProyectoVentaBoletos/src/main/java/modelo/Boleto.java
+++ /dev/null
@@ -1,5 +0,0 @@
-package modelo;
-
-public class Boleto {
-    
-}
diff --git a/ProyectoVentaBoletos/src/main/java/modelo/Evento.java b/ProyectoVentaBoletos/src/main/java/modelo/Evento.java
deleted file mode 100644
index 6f45043..0000000
--- a/ProyectoVentaBoletos/src/main/java/modelo/Evento.java
+++ /dev/null
@@ -1,8 +0,0 @@
-package modelo;
-
-public class Evento {
-    private int id_evento;
-    private String nombre;
-    
-    
-}
diff --git a/ProyectoVentaBoletos/src/main/java/modelo/Reporte.java b/ProyectoVentaBoletos/src/main/java/modelo/Reporte.java
deleted file mode 100644
index b5f3d8d..0000000
--- a/ProyectoVentaBoletos/src/main/java/modelo/Reporte.java
+++ /dev/null
@@ -1,5 +0,0 @@
-package modelo;
-
-public class Reporte {
-    
-}
diff --git a/ProyectoVentaBoletos/src/main/java/modelo/Venta.java b/ProyectoVentaBoletos/src/main/java/modelo/Venta.java
deleted file mode 100644
index 3d99567..0000000
--- a/ProyectoVentaBoletos/src/main/java/modelo/Venta.java
+++ /dev/null
@@ -1,5 +0,0 @@
-package modelo;
-
-public class Venta {
-    
-}
diff --git a/ProyectoVentaBoletos/src/main/java/vista/Menu.form b/ProyectoVentaBoletos/src/main/java/view/Menu.form
similarity index 97%
rename from ProyectoVentaBoletos/src/main/java/vista/Menu.form
rename to ProyectoVentaBoletos/src/main/java/view/Menu.form
index 6c451d7..d1448a9 100644
--- a/ProyectoVentaBoletos/src/main/java/vista/Menu.form
+++ b/ProyectoVentaBoletos/src/main/java/view/Menu.form
@@ -10,9 +10,6 @@
     <Property name="location" type="java.awt.Point" editor="org.netbeans.beaninfo.editors.PointEditor">
       <Point value="[0, 0]"/>
     </Property>
-    <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
-      <Dimension value="[1280, 720]"/>
-    </Property>
     <Property name="size" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
       <Dimension value="[0, 0]"/>
     </Property>
diff --git a/ProyectoVentaBoletos/src/main/java/vista/Menu.java b/ProyectoVentaBoletos/src/main/java/view/Menu.java
similarity index 98%
rename from ProyectoVentaBoletos/src/main/java/vista/Menu.java
rename to ProyectoVentaBoletos/src/main/java/view/Menu.java
index 9263cf6..ec60867 100644
--- a/ProyectoVentaBoletos/src/main/java/vista/Menu.java
+++ b/ProyectoVentaBoletos/src/main/java/view/Menu.java
@@ -1,4 +1,4 @@
-package vista;
+package view;
 
 import java.awt.BorderLayout;
 
@@ -24,7 +24,6 @@ public class Menu extends javax.swing.JFrame {
         setTitle("Aplicación de venta de boletos");
         setBackground(new java.awt.Color(255, 255, 255));
         setLocation(new java.awt.Point(0, 0));
-        setPreferredSize(new java.awt.Dimension(1280, 720));
         setSize(new java.awt.Dimension(0, 0));
 
         jLabel1.setFont(new java.awt.Font("Gill Sans MT", 0, 14)); // NOI18N
diff --git a/ProyectoVentaBoletos/src/main/java/vista/MenuSala.form b/ProyectoVentaBoletos/src/main/java/view/MenuSala.form
similarity index 100%
rename from ProyectoVentaBoletos/src/main/java/vista/MenuSala.form
rename to ProyectoVentaBoletos/src/main/java/view/MenuSala.form
diff --git a/ProyectoVentaBoletos/src/main/java/vista/MenuSala.java b/ProyectoVentaBoletos/src/main/java/view/MenuSala.java
similarity index 99%
rename from ProyectoVentaBoletos/src/main/java/vista/MenuSala.java
rename to ProyectoVentaBoletos/src/main/java/view/MenuSala.java
index e3d7d4a..730e2d9 100644
--- a/ProyectoVentaBoletos/src/main/java/vista/MenuSala.java
+++ b/ProyectoVentaBoletos/src/main/java/view/MenuSala.java
@@ -2,7 +2,7 @@
  * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
  * Click nbfs://nbhost/SystemFileSystem/Templates/GUIForms/JPanel.java to edit this template
  */
-package vista;
+package view;
 
 import javax.swing.JToggleButton;