summaryrefslogtreecommitdiffstats
path: root/back/odiparback/src
diff options
context:
space:
mode:
authorDayana31 <[email protected]>2022-05-23 22:38:10 -0500
committerDayana31 <[email protected]>2022-05-23 22:38:10 -0500
commit2da5eab182017b29c131304a90a3633fe4d887ca (patch)
tree51273fac8b8590fca477fd748bc1cc4c15dd0fcb /back/odiparback/src
parent758d03eae1d7d83c8e7685fa04e8ae9b3a62bddb (diff)
parent11a08a862b3c87ae9699dc5625d9104adaea9528 (diff)
downloadDP1_project-2da5eab182017b29c131304a90a3633fe4d887ca.tar.gz
DP1_project-2da5eab182017b29c131304a90a3633fe4d887ca.tar.bz2
DP1_project-2da5eab182017b29c131304a90a3633fe4d887ca.zip
Merge branch 'develop' into dayana
Diffstat (limited to 'back/odiparback/src')
-rw-r--r--back/odiparback/src/main/java/pe/edu/pucp/odiparback/OdiparbackApplication.java13
-rw-r--r--back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Almacen.java49
-rw-r--r--back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Averia.java49
-rw-r--r--back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Camion.java47
-rw-r--r--back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Cliente.java42
-rw-r--r--back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/PTG.java40
-rw-r--r--back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Pedido.java86
-rw-r--r--back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Region.java33
-rw-r--r--back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Rol.java33
-rw-r--r--back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Ruta.java60
-rw-r--r--back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/TipoAveria.java38
-rw-r--r--back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/TipoCamion.java37
-rw-r--r--back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Tramo.java48
-rw-r--r--back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/TramoRuta.java57
-rw-r--r--back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Usuario.java55
-rw-r--r--back/odiparback/src/main/resources/application.properties1
-rw-r--r--back/odiparback/src/test/java/pe/edu/pucp/odiparback/OdiparbackApplicationTests.java13
17 files changed, 701 insertions, 0 deletions
diff --git a/back/odiparback/src/main/java/pe/edu/pucp/odiparback/OdiparbackApplication.java b/back/odiparback/src/main/java/pe/edu/pucp/odiparback/OdiparbackApplication.java
new file mode 100644
index 0000000..dc84aad
--- /dev/null
+++ b/back/odiparback/src/main/java/pe/edu/pucp/odiparback/OdiparbackApplication.java
@@ -0,0 +1,13 @@
+package pe.edu.pucp.odiparback;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+
+@SpringBootApplication
+public class OdiparbackApplication {
+
+ public static void main(String[] args) {
+ SpringApplication.run(OdiparbackApplication.class, args);
+ }
+
+}
diff --git a/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Almacen.java b/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Almacen.java
new file mode 100644
index 0000000..ab8e989
--- /dev/null
+++ b/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Almacen.java
@@ -0,0 +1,49 @@
+package pe.edu.pucp.odiparback.models;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.Table;
+
+import org.hibernate.annotations.SQLDelete;
+import org.hibernate.annotations.Where;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+import lombok.Setter;
+
+@Entity
+@Table(name = "almacen")
+@SQLDelete(sql = "UPDATE almacen SET activo = 0 WHERE id = ?")
+@Where(clause = "activo = 1")
+@NoArgsConstructor
+@AllArgsConstructor
+@Getter @Setter
+public class Almacen {
+ @Id
+ @GeneratedValue(strategy = GenerationType.IDENTITY)
+ @Column(name = "idAlmacen", updatable = false, nullable = false)
+ private int idAlmacen;
+
+ @Column(name = "cuidad")
+ private String cuidad; //nombre del almacen = nombre cuidad
+
+ @Column(name = "posicionX")
+ private int posicionX;
+
+ @Column(name = "posicionY")
+ private int posicionY;
+
+ @Column(name = "esPrincipal")
+ private boolean esPrincipal;
+
+ @ManyToOne(fetch = FetchType.EAGER)
+ @JoinColumn(name = "idRegion")
+ private Region region;
+}
diff --git a/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Averia.java b/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Averia.java
new file mode 100644
index 0000000..69d69c3
--- /dev/null
+++ b/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Averia.java
@@ -0,0 +1,49 @@
+package pe.edu.pucp.odiparback.models;
+
+import java.util.Date;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.Table;
+
+import org.hibernate.annotations.SQLDelete;
+import org.hibernate.annotations.Where;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+import lombok.Setter;
+
+@Entity
+@Table(name = "averia")
+@SQLDelete(sql = "UPDATE averia SET activo = 0 WHERE id = ?")
+@Where(clause = "activo = 1")
+@NoArgsConstructor
+@AllArgsConstructor
+@Getter @Setter
+public class Averia {
+ @Id
+ @GeneratedValue(strategy = GenerationType.IDENTITY)
+ @Column(name = "idAveria", updatable = false, nullable = false)
+ private int idAveria;
+
+ @Column(name = "descripcion")
+ private String nombre;
+
+ @Column(name = "fechaRegistro")
+ private Date fechaRegistro;
+
+ @ManyToOne(fetch = FetchType.EAGER)
+ @JoinColumn(name = "idCamion")
+ private Camion camion;
+
+ @ManyToOne(fetch = FetchType.EAGER)
+ @JoinColumn(name = "idTipoAveria")
+ private TipoAveria tipoAveria;
+}
diff --git a/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Camion.java b/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Camion.java
new file mode 100644
index 0000000..123ce79
--- /dev/null
+++ b/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Camion.java
@@ -0,0 +1,47 @@
+package pe.edu.pucp.odiparback.models;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.Table;
+
+import org.hibernate.annotations.SQLDelete;
+import org.hibernate.annotations.Where;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+import lombok.Setter;
+
+@Entity
+@Table(name = "camion")
+@SQLDelete(sql = "UPDATE camion SET activo = 0 WHERE id = ?")
+@Where(clause = "activo = 1")
+@NoArgsConstructor
+@AllArgsConstructor
+@Getter @Setter
+public class Camion {
+ @Id
+ @GeneratedValue(strategy = GenerationType.IDENTITY)
+ @Column(name = "idCamion", updatable = false, nullable = false)
+ private int idCamion;
+
+ @Column(name = "placa")
+ private String placa;
+
+ @Column(name = "kilometraje")
+ private Double kilometraje;
+
+ @Column(name = "estado")
+ private int estado = 0; //0:
+
+ @ManyToOne(fetch = FetchType.EAGER)
+ @JoinColumn(name = "idTipoCamion")
+ private TipoCamion tipoCamion;
+
+}
diff --git a/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Cliente.java b/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Cliente.java
new file mode 100644
index 0000000..bea5d13
--- /dev/null
+++ b/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Cliente.java
@@ -0,0 +1,42 @@
+package pe.edu.pucp.odiparback.models;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.Table;
+
+import org.hibernate.annotations.SQLDelete;
+import org.hibernate.annotations.Where;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+import lombok.Setter;
+
+@Entity
+@Table(name = "cliente")
+@SQLDelete(sql = "UPDATE cliente SET activo = 0 WHERE id = ?")
+@Where(clause = "activo = 1")
+@NoArgsConstructor
+@AllArgsConstructor
+@Getter @Setter
+public class Cliente {
+ @Id
+ @GeneratedValue(strategy = GenerationType.IDENTITY)
+ @Column(name = "idCliente", updatable = false, nullable = false)
+ private int idCliente;
+
+ @Column(name = "nombreCompleto")
+ private String nombreCompleto;
+
+ @Column(name = "dni")
+ private int dni;
+
+ @Column(name = "correo")
+ private String correo;
+
+ @Column(name = "telefono")
+ private int telefono;
+}
diff --git a/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/PTG.java b/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/PTG.java
new file mode 100644
index 0000000..2a21379
--- /dev/null
+++ b/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/PTG.java
@@ -0,0 +1,40 @@
+package pe.edu.pucp.odiparback.models;
+
+import java.util.Date;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.Table;
+
+import org.hibernate.annotations.SQLDelete;
+import org.hibernate.annotations.Where;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+import lombok.Setter;
+
+@Entity
+@Table(name = "ptg")
+@SQLDelete(sql = "UPDATE ptg SET activo = 0 WHERE id = ?")
+@Where(clause = "activo = 1")
+@NoArgsConstructor
+@AllArgsConstructor
+@Getter @Setter
+public class PTG {
+
+ //Plan de transporte Generado
+ @Id
+ @GeneratedValue(strategy = GenerationType.IDENTITY)
+ @Column(name = "idPTG", updatable = false, nullable = false)
+ private int idPTG;
+
+ @Column(name = "fechaGenerada")
+ private Date fechaGenerada;
+
+ @Column(name = "esSimulacion")
+ private boolean esSimulacion;
+}
diff --git a/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Pedido.java b/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Pedido.java
new file mode 100644
index 0000000..616aea4
--- /dev/null
+++ b/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Pedido.java
@@ -0,0 +1,86 @@
+package pe.edu.pucp.odiparback.models;
+import java.util.Calendar;
+import java.util.Date;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.PrePersist;
+import javax.persistence.PreUpdate;
+import javax.persistence.Table;
+import javax.persistence.Temporal;
+import javax.persistence.TemporalType;
+
+import org.hibernate.annotations.SQLDelete;
+import org.hibernate.annotations.Where;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+import lombok.Setter;
+
+@Entity
+@Table(name = "pedido")
+@SQLDelete(sql = "UPDATE pedido SET activo = 0 WHERE id = ?")
+@Where(clause = "activo = 1")
+@NoArgsConstructor
+@AllArgsConstructor
+@Getter @Setter
+public class Pedido {
+ @Id
+ @GeneratedValue(strategy = GenerationType.IDENTITY)
+ @Column(name = "idPedido", updatable = false, nullable = false)
+ private int idPedido;
+
+ @Column(name = "cantidad")
+ private int cantidad;
+
+ @Column(name = "estado")
+ private int estado; //0: pendiente
+
+ @Column(name = "codigo")
+ private int codigo;
+
+ @ManyToOne(fetch = FetchType.EAGER)
+ @JoinColumn(name = "idAlmacen")
+ private Almacen almacen;
+
+ @ManyToOne(fetch = FetchType.EAGER)
+ @JoinColumn(name = "idCliente")
+ private Cliente cliente;
+
+ @ManyToOne(fetch = FetchType.EAGER)
+ @JoinColumn(name = "idUsuario")
+ private Usuario usuarioRegistro; //Usuario que registra
+
+ @Temporal(TemporalType.TIMESTAMP)
+ @Column(columnDefinition = "DATETIME", nullable = false)
+ protected Date fechaRegistro = new Date();
+
+ @Temporal(TemporalType.TIMESTAMP)
+ @Column(columnDefinition = "DATETIME", nullable = false)
+ protected Date fechaModificacion = new Date();
+
+ @PreUpdate
+ private void onUpdate(){
+ fechaModificacion = addHoursToJavaUtilDate(new Date(), -5);
+ }
+
+ @PrePersist
+ private void onCreate(){
+ fechaRegistro=fechaModificacion=addHoursToJavaUtilDate(new Date(), -5);
+ }
+
+ public Date addHoursToJavaUtilDate(Date date, int hours) {
+ Calendar calendar = Calendar.getInstance();
+ calendar.setTime(date);
+ calendar.add(Calendar.HOUR_OF_DAY, hours);
+ return calendar.getTime();
+ }
+
+}
diff --git a/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Region.java b/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Region.java
new file mode 100644
index 0000000..1341317
--- /dev/null
+++ b/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Region.java
@@ -0,0 +1,33 @@
+package pe.edu.pucp.odiparback.models;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.Table;
+
+import org.hibernate.annotations.SQLDelete;
+import org.hibernate.annotations.Where;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+import lombok.Setter;
+
+@Entity
+@Table(name = "region")
+@SQLDelete(sql = "UPDATE region SET activo = 0 WHERE id = ?")
+@Where(clause = "activo = 1")
+@NoArgsConstructor
+@AllArgsConstructor
+@Getter @Setter
+public class Region {
+ @Id
+ @GeneratedValue(strategy = GenerationType.IDENTITY)
+ @Column(name = "idRegion", updatable = false, nullable = false)
+ private int idRegion;
+
+ @Column(name = "nombre")
+ private String nombre;
+}
diff --git a/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Rol.java b/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Rol.java
new file mode 100644
index 0000000..a3bc5b5
--- /dev/null
+++ b/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Rol.java
@@ -0,0 +1,33 @@
+package pe.edu.pucp.odiparback.models;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.Table;
+
+import org.hibernate.annotations.SQLDelete;
+import org.hibernate.annotations.Where;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+import lombok.Setter;
+
+@Entity
+@Table(name = "rol")
+@SQLDelete(sql = "UPDATE rol SET activo = 0 WHERE id = ?")
+@Where(clause = "activo = 1")
+@NoArgsConstructor
+@AllArgsConstructor
+@Getter @Setter
+public class Rol {
+ @Id
+ @GeneratedValue(strategy = GenerationType.IDENTITY)
+ @Column(name = "idRol", updatable = false, nullable = false)
+ private int idRol;
+
+ @Column(name = "nombre")
+ private String nombre;
+}
diff --git a/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Ruta.java b/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Ruta.java
new file mode 100644
index 0000000..b1a9368
--- /dev/null
+++ b/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Ruta.java
@@ -0,0 +1,60 @@
+package pe.edu.pucp.odiparback.models;
+
+import java.util.Date;
+import java.util.List;
+
+import javax.persistence.CascadeType;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.OneToMany;
+import javax.persistence.Table;
+
+import org.hibernate.annotations.SQLDelete;
+import org.hibernate.annotations.Where;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+import lombok.Setter;
+
+@Entity
+@Table(name = "ruta")
+@SQLDelete(sql = "UPDATE ruta SET activo = 0 WHERE id = ?")
+@Where(clause = "activo = 1")
+@NoArgsConstructor
+@AllArgsConstructor
+@Getter @Setter
+public class Ruta {
+ @Id
+ @GeneratedValue(strategy = GenerationType.IDENTITY)
+ @Column(name = "idRuta", updatable = false, nullable = false)
+ private int idRuta;
+
+ @Column(name = "nombre")
+ private String nombre;
+
+ @Column(name = "fechaInicio")
+ private Date fechaInicio;
+
+ @Column(name = "fechaFinEst")
+ private Date fechaFinEst;
+
+
+ @Column(name = "fechaFinReal")
+ private Date fechaFinReal;
+
+ @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.EAGER)
+ @JoinColumn(name = "idTramoRuta")
+ private List<TramoRuta> tramoRutas;
+
+ @ManyToOne(fetch = FetchType.EAGER)
+ @JoinColumn(name = "idCamion")
+ private Camion camion;
+
+}
diff --git a/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/TipoAveria.java b/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/TipoAveria.java
new file mode 100644
index 0000000..92156fd
--- /dev/null
+++ b/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/TipoAveria.java
@@ -0,0 +1,38 @@
+package pe.edu.pucp.odiparback.models;
+
+import java.util.Date;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.Table;
+
+import org.hibernate.annotations.SQLDelete;
+import org.hibernate.annotations.Where;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+import lombok.Setter;
+
+@Entity
+@Table(name = "tipoAveria")
+@SQLDelete(sql = "UPDATE tipoAveria SET activo = 0 WHERE id = ?")
+@Where(clause = "activo = 1")
+@NoArgsConstructor
+@AllArgsConstructor
+@Getter @Setter
+public class TipoAveria {
+ @Id
+ @GeneratedValue(strategy = GenerationType.IDENTITY)
+ @Column(name = "idTipoAveria", updatable = false, nullable = false)
+ private int idTipoAveria;
+
+ @Column(name = "nombre")
+ private String nombre;
+
+ @Column(name = "duracion")
+ private Date duracion;
+}
diff --git a/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/TipoCamion.java b/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/TipoCamion.java
new file mode 100644
index 0000000..608a089
--- /dev/null
+++ b/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/TipoCamion.java
@@ -0,0 +1,37 @@
+package pe.edu.pucp.odiparback.models;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.Table;
+
+import org.hibernate.annotations.SQLDelete;
+import org.hibernate.annotations.Where;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+import lombok.Setter;
+
+@Entity
+@Table(name = "tipoCamion")
+@SQLDelete(sql = "UPDATE tipoCamion SET activo = 0 WHERE id = ?")
+@Where(clause = "activo = 1")
+@NoArgsConstructor
+@AllArgsConstructor
+@Getter @Setter
+public class TipoCamion {
+ @Id
+ @GeneratedValue(strategy = GenerationType.IDENTITY)
+ @Column(name = "idTipoCamion", updatable = false, nullable = false)
+ private int idTipoCamion;
+
+ @Column(name = "nombre")
+ private String nombre; //Tipo A, B o C
+
+ @Column(name = "velocidad")
+ private Double velocidad;
+
+} \ No newline at end of file
diff --git a/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Tramo.java b/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Tramo.java
new file mode 100644
index 0000000..1a615d0
--- /dev/null
+++ b/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Tramo.java
@@ -0,0 +1,48 @@
+package pe.edu.pucp.odiparback.models;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.Table;
+
+import org.hibernate.annotations.SQLDelete;
+import org.hibernate.annotations.Where;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+import lombok.Setter;
+
+@Entity
+@Table(name = "tramo")
+@SQLDelete(sql = "UPDATE tramo SET activo = 0 WHERE id = ?")
+@Where(clause = "activo = 1")
+@NoArgsConstructor
+@AllArgsConstructor
+@Getter @Setter
+public class Tramo {
+ @Id
+ @GeneratedValue(strategy = GenerationType.IDENTITY)
+ @Column(name = "idTramo", updatable = false, nullable = false)
+ private int idTramo;
+
+ @Column(name = "distancia")
+ private double distancia;
+
+ @Column(name = "estado")
+ private boolean estado;
+
+ @ManyToOne(fetch = FetchType.EAGER)
+ @JoinColumn(name = "idAlmacen")
+ private Almacen origen;
+
+ @ManyToOne(fetch = FetchType.EAGER)
+ @JoinColumn(name = "idAlmacen")
+ private Almacen destino;
+
+}
diff --git a/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/TramoRuta.java b/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/TramoRuta.java
new file mode 100644
index 0000000..7c55588
--- /dev/null
+++ b/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/TramoRuta.java
@@ -0,0 +1,57 @@
+package pe.edu.pucp.odiparback.models;
+
+import java.util.Date;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.Table;
+
+import org.hibernate.annotations.SQLDelete;
+import org.hibernate.annotations.Where;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+import lombok.Setter;
+
+@Entity
+@Table(name = "tramoRuta")
+@SQLDelete(sql = "UPDATE tramoRuta SET activo = 0 WHERE id = ?")
+@Where(clause = "activo = 1")
+@NoArgsConstructor
+@AllArgsConstructor
+@Getter @Setter
+public class TramoRuta {
+ @Id
+ @GeneratedValue(strategy = GenerationType.IDENTITY)
+ @Column(name = "idTramoRuta", updatable = false, nullable = false)
+ private int idTramoRuta;
+
+ @Column(name = "orden")
+ private int orden; // idk
+
+ @Column(name = "paquetesEntregar")
+ private int paquetesEntregar;
+
+ @Column(name = "horaSalidaEst")
+ private Date horaSalidaEst;
+
+ @Column(name = "horaLlegadaEst")
+ private Date horaLlegadaEst;
+
+ @Column(name = "horaSalidaReal")
+ private Date horaSalidaReal;
+
+ @Column(name = "horaLlegadaReal")
+ private Date horaLlegadaReal;
+
+ @ManyToOne(fetch = FetchType.EAGER)
+ @JoinColumn(name = "idTramo")
+ private Tramo tramo;
+}
diff --git a/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Usuario.java b/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Usuario.java
new file mode 100644
index 0000000..b7902ba
--- /dev/null
+++ b/back/odiparback/src/main/java/pe/edu/pucp/odiparback/models/Usuario.java
@@ -0,0 +1,55 @@
+package pe.edu.pucp.odiparback.models;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.Table;
+
+import org.hibernate.annotations.SQLDelete;
+import org.hibernate.annotations.Where;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+import lombok.Setter;
+
+@Entity
+@Table(name = "usuario")
+@SQLDelete(sql = "UPDATE usuario SET activo = 0 WHERE id = ?")
+@Where(clause = "activo = 1")
+@NoArgsConstructor
+@AllArgsConstructor
+@Getter @Setter
+public class Usuario {
+ @Id
+ @GeneratedValue(strategy = GenerationType.IDENTITY)
+ @Column(name = "idUsuario", updatable = false, nullable = false)
+ private int idUsuario;
+
+ @Column(name = "usuario")
+ private String usuario;
+
+ @Column(name = "clave")
+ private String clave;
+
+ @Column(name = "nombre")
+ private String nombre;
+
+ @Column(name = "apellido")
+ private String apellido;
+
+ @Column(name = "dni")
+ private int dni;
+
+ @Column(name = "correo")
+ private String correo;
+
+ @ManyToOne(fetch = FetchType.EAGER)
+ @JoinColumn(name = "idRol")
+ private Rol rol;
+}
diff --git a/back/odiparback/src/main/resources/application.properties b/back/odiparback/src/main/resources/application.properties
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/back/odiparback/src/main/resources/application.properties
@@ -0,0 +1 @@
+
diff --git a/back/odiparback/src/test/java/pe/edu/pucp/odiparback/OdiparbackApplicationTests.java b/back/odiparback/src/test/java/pe/edu/pucp/odiparback/OdiparbackApplicationTests.java
new file mode 100644
index 0000000..c75755b
--- /dev/null
+++ b/back/odiparback/src/test/java/pe/edu/pucp/odiparback/OdiparbackApplicationTests.java
@@ -0,0 +1,13 @@
+package pe.edu.pucp.odiparback;
+
+import org.junit.jupiter.api.Test;
+import org.springframework.boot.test.context.SpringBootTest;
+
+@SpringBootTest
+class OdiparbackApplicationTests {
+
+ @Test
+ void contextLoads() {
+ }
+
+}