diff --git a/README.md b/README.md
index c1c0109..31b7c8d 100644
--- a/README.md
+++ b/README.md
@@ -2,32 +2,16 @@
# Challenge ONE - Hotel Alura
-[ToC]
-
### 🖥️ Tecnologías Utilizadas
-- Java v17
+- Java OpenJDK 17
- Eclipse
- Plugin WindowBuilder
- MySql
- Biblioteca JCalendar
- Biblioteca Dotenv
-> **Note** Para este desafío, concéntrate en la parte lógica y la conexión
-con la base de datos, después de completar el desafío, siéntete libre de
-agregar nuevas funciones y modificar la interfaz gráfica.
-
-
-### Proyeto base
-
-Github [Hotel Alura](https://github.com/alura-challenges/challenge-one-alura-hotel-latam)
-
-:small_orange_diamond: `src/views` Directorio con la interfaz gráfica
-necesaria para el programa
-:small_orange_diamond: `src/imagenes` Directorio con imágenes a usar en el
-proyecto
-
-### Requerimientos
+Requerimientos
- Sistema de autenticación de usuario para que solo usuarios autorizados accedan
al sistema
@@ -39,16 +23,15 @@ y al valor diario. Asignar en la moneda local de tu país; p.e. una reserva de 3
dias con valor diario de $20, serian $60, todo esto deberá ser hecho
automaticamente y mostrado al usuario antes de guardar la reserva
- Base de datos para almacenar todos los datos pedidos anteriormente.
-- Ahora te preguntarás ¿Cómo se que datos debo registrar? Para eso el líder del
-proyecto puso a disposición un Diagrama de Entidad Relación que usaremos para
-crear las tablas en nuestra base de Datos y que está anexado a esta tarjeta
-y que también estará como una tarea en nuestro backlog. No olvides leer todas
-las tarjetas.
-- Periodo de tiempo de cuatro semanas para desarrollar el proyecto y por eso en
-esta oportunidad se facilota la parte visual del proyecto, para centrar el
-desarrollo de la lógica y funcionamiento, puedes hacer las modificaciones que
-creas convenientes, y se trabaja usando el sistema ágil de desarrollo utilizando
-Trello
+- Diagrama de [Entidad Relación](#modelo-entidad-relación) para creación de
+tablas en la base de Datos
+- Periodo de tiempo de cuatro semanas para desarrollar el proyecto y por ello
+se facilita la parte visual del proyecto, para centrar el desarrollo de la
+lógica y funcionamiento, puedes hacer las modificaciones que creas convenientes.
+Se trabaja usando el sistema ágil de desarrollo utilizando
+[Trello](https://trello.com/b/qMCaaWg4/g5-challenge-hotel)
+
+
## :construction: Proyecto
@@ -64,12 +47,12 @@ proyecto
├── 📁 bin
├── 📁 src
├── 📁 target
-├── .classpath
-├── .env <---- Dotenv file
-├── .gitignore
-├── .project
-├── pom.xml
-└── README.md
+├── 📄 .classpath
+├── 📄 .env <---- Dotenv file
+├── 📄 .gitignore
+├── 📄 .project
+├── 📄 pom.xml
+└── 📄 README.md
```
Contenido de `.env`
@@ -84,42 +67,77 @@ DBPASS=password
#### Modelo entidad relación
-- **`huesped`**
-- **`reserva`** clave externa (***foreign key***) **idReserva**
+- **Tabla `HUESPED`**
+- **Tabla `RESERVA`** - Foreign key *`id_huesped`*
```mermaid
erDiagram
- Huesped ||--|{ Reserva : tiene
- Huesped {
- Id int PK "NN NB"
- Nombre varchar "bla bla"
- Apellido varchar "bla bla"
- Fecha_Nacimiento date "1931-12-20"
- Nacionalidad varchar "CL"
- Telefono varchar
- Id_Reserva int FK "bla bla"
+ HUESPED ||..o{ RESERVA : tiene
+ HUESPED {
+ id int PK "NN"
+ nombre varchar
+ apellido varchar
+ fecha_nacimiento date "AAAA-MM-DD"
+ nacionalidad varchar
+ telefono varchar "+00 123456789"
}
- Reserva {
- Id int PK "NN NB"
- Fecha_Entrada date "1931-12-20"
- Fecha_Salida date "1931-12-20"
- Valor int FK "bla bla"
- Forma_Pago varchar "cheque"
+ RESERVA {
+ Id int PK "NN"
+ fecha_entrada date "AAAA-MM-DD"
+ fecha_salida date "AAAA-MM-DD"
+ valor int "Costo total de la reserva"
+ forma_pago varchar "debito, credito, efectivo, cheque"
+ id_huesped int FK "Huesped a quien pertenece la reserva"
}
```
-### 🗔 Plugin WindowBuilder
-- Explorar *Window Builder*, agregar nuevas ventanas, o cambiar el diseño
-de las existentes, haz clic en el archivo **java**, luego en *Open With* ->
-*Window Builder Editor*
+
+
+Database creation statement
+
+[SQL script](./database/creation_stmnt.sql)
+
+```sql
+CREATE DATABASE IF NOT EXISTS `hotel_alura` DEFAULT CHARACTER SET utf8mb4
+COLLATE utf8mb4_general_ci;
+
+USE `hotel_alura`;
+
+CREATE TABLE IF NOT EXISTS `huesped` (
+ `id` int(11) NOT NULL AUTO_INCREMENT,
+ `nombre` varchar(20) NOT NULL,
+ `apellido` varchar(20) NOT NULL,
+ `fecha_nacimiento` date DEFAULT NULL,
+ `nacionalidad` varchar(20) DEFAULT NULL,
+ `telefono` varchar(20) NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8mb4
+COLLATE=utf8mb4_general_ci;
+
+CREATE TABLE IF NOT EXISTS `reserva` (
+ `id` int(11) NOT NULL AUTO_INCREMENT,
+ `fecha_entrada` date NOT NULL,
+ `fecha_salida` date NOT NULL,
+ `valor` double NOT NULL,
+ `forma_pago` varchar(20) NOT NULL,
+ `id_huesped` int(11) NOT NULL,
+ PRIMARY KEY (`id`),
+ KEY `id_huesped_idx` (`id_huesped`),
+ CONSTRAINT `id_huesped` FOREIGN KEY (`id_huesped`) REFERENCES `huesped` (`id`)
+ ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8mb4
+COLLATE=utf8mb4_general_ci;
+```
+
+
### :mailbox_with_mail: Entrega
-1. Utilizar topico **challengeonehotelaluralatam4** en *About* -> *topics* ->
-etiqueta **challengeonehotelaluralatam4**
-2. Rellenar formulario de entrega con el enlace al repositorio
+1. Utilizar topico **challengeonehotelaluralatam5** en *About* -> *topics* ->
+etiqueta **challengeonehotelaluralatam4** ¿5?
+2. Completar el formulario de entrega con el enlace al repositorio ->
[Link formulario](https://lp.alura.com.br/alura-latam-entrega-challenge-one-esp-back-end)
3. ¡Añadir enlace y/o video del proyecto en Linkedin! Etiqueta a `#Oracle` y
`#AluraLatam` :checkered_flag:
@@ -127,6 +145,6 @@ etiqueta **challengeonehotelaluralatam4**
🧡 Oracle
[
](https://www.linkedin.com/company/oracle/)
-💙 Alura Latam
+:blue_heart: Alura Latam
[
](https://www.linkedin.com/company/alura-latam/mycompany/)
diff --git a/database/creation_stmnt.sql b/database/creation_stmnt.sql
new file mode 100644
index 0000000..6f6a6f6
--- /dev/null
+++ b/database/creation_stmnt.sql
@@ -0,0 +1,25 @@
+CREATE DATABASE IF NOT EXISTS `hotel_alura` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
+
+USE `hotel_alura`;
+
+CREATE TABLE IF NOT EXISTS `huesped` (
+ `id` int(11) NOT NULL AUTO_INCREMENT,
+ `nombre` varchar(20) NOT NULL,
+ `apellido` varchar(20) NOT NULL,
+ `fecha_nacimiento` date DEFAULT NULL,
+ `nacionalidad` varchar(20) DEFAULT NULL,
+ `telefono` varchar(20) NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
+
+CREATE TABLE IF NOT EXISTS `reserva` (
+ `id` int(11) NOT NULL AUTO_INCREMENT,
+ `fecha_entrada` date NOT NULL,
+ `fecha_salida` date NOT NULL,
+ `valor` double NOT NULL,
+ `forma_pago` varchar(20) NOT NULL,
+ `id_huesped` int(11) NOT NULL,
+ PRIMARY KEY (`id`),
+ KEY `id_huesped_idx` (`id_huesped`),
+ CONSTRAINT `id_huesped` FOREIGN KEY (`id_huesped`) REFERENCES `huesped` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
diff --git a/database/er_diagram.mwb b/database/er_diagram.mwb
new file mode 100644
index 0000000..f232639
Binary files /dev/null and b/database/er_diagram.mwb differ
diff --git a/src/cl/com/alura/hotel/views/Exito.java b/src/cl/com/alura/hotel/views/Exito.java
index f0119b4..1ad70ee 100644
--- a/src/cl/com/alura/hotel/views/Exito.java
+++ b/src/cl/com/alura/hotel/views/Exito.java
@@ -22,7 +22,7 @@ public class Exito extends JDialog {
private final JPanel contentPanel = new JPanel();
/**
- * Launch the application.
+ * Launch application.
*/
public static void main(String[] args) {
try {
@@ -35,7 +35,7 @@ public class Exito extends JDialog {
}
/**
- * Create the dialog.
+ * Create dialog.
*/
public Exito() {
setIconImage(Toolkit.getDefaultToolkit().getImage(Exito.class.getResource("/imagenes/aH-40px.png")));