Skip to content

Commit b8b3ac6

Browse files
authored
Merge pull request #7 from uo287568/HU03-EnviosDeEmpresa
Hu03 envios de empresa
2 parents 8c63be0 + bc359f2 commit b8b3ac6

11 files changed

+423
-41
lines changed
+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
a
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
package giis.demo.tkrun;
2+
3+
import javax.swing.JOptionPane;
4+
import giis.demo.util.SwingUtil;
5+
6+
public class EmpresaController {
7+
private EmpresaModel model;
8+
private EmpresaView view;
9+
10+
public EmpresaController(EmpresaModel empresaModel, EmpresaView empresaView) {
11+
this.model = empresaModel;
12+
this.view = empresaView;
13+
//no hay inicializacion especifica del modelo, solo de la vista
14+
this.initView();
15+
}
16+
17+
public void initController() {
18+
view.getBtCancelar().addActionListener(e -> SwingUtil.exceptionWrapper(() -> salir()));
19+
view.getBtRegistrar().addActionListener(e -> registrarEnvios());
20+
}
21+
22+
private void registrarEnvios() {
23+
if (view.comprobarCampos()) {
24+
model.crearPedidos(view.getTfNombreE().getText());
25+
view.reset();
26+
}
27+
}
28+
29+
public void initView() {
30+
view.getFrame().setVisible(true);
31+
}
32+
33+
private void salir() {
34+
int eleccion=JOptionPane.showConfirmDialog(null, "¿Está segur@ de cancelar la creación de envíos?");
35+
if(eleccion==JOptionPane.YES_OPTION)
36+
view.reset();
37+
}
38+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
package giis.demo.tkrun;
2+
3+
import java.util.ArrayList;
4+
import java.util.List;
5+
import java.util.Random;
6+
7+
import javax.swing.JOptionPane;
8+
9+
import giis.demo.util.Database;
10+
import giis.demo.util.io.FileUtil;
11+
import giis.demo.util.io.ParserEmpresa;
12+
13+
public class EmpresaModel {
14+
15+
private Database db=new Database();
16+
17+
public void crearPedidos(String nEmpresa) {
18+
String sql="insert into Envios (nref,nombreEmisor,correoEmisor,direccionEmisor,nombreReceptor,correoReceptor,direccionReceptor,largo,ancho,alto,peso,precio,instrExtra) values (?,?,?,?,?,?,?,?,?,?,?,?,?)";
19+
List<EnvioEntity> envios = cargarEnvios("src/main/java/files/" + nEmpresa + ".csv", nEmpresa);
20+
if (envios.size() > 0) {
21+
Random rd = new Random();
22+
for (EnvioEntity envio: envios) {
23+
envio.setNref(rd.nextInt(999999999));
24+
db.executeUpdate(sql,envio.getNref(),envio.getNombreEmisor(),envio.getCorreoEmisor(),envio.getDireccionEmisor(),
25+
envio.getNombreReceptor(),envio.getCorreoReceptor(),envio.getDireccionReceptor(),envio.getLargo(),envio.getAncho(),
26+
envio.getAlto(),envio.getPeso(),envio.getPrecio(),envio.getInstrExtra());
27+
}
28+
JOptionPane.showMessageDialog(null, "SE HAN REGISTRADO CORRECTAMENTE " + envios.size() + " ENVÍOS");
29+
}
30+
}
31+
32+
private List<EnvioEntity> cargarEnvios(String ruta, String nEmpresa) {
33+
try {
34+
return new ParserEmpresa().parseLines(new FileUtil().readLines(ruta));
35+
} catch (RuntimeException e) {
36+
JOptionPane.showMessageDialog(null, "No se ha encontrado el archivo para el \nregistro de envíos de la empresa: " + nEmpresa);
37+
}
38+
return new ArrayList<>();
39+
}
40+
41+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
package giis.demo.tkrun;
2+
3+
import javax.swing.JFrame;
4+
import net.miginfocom.swing.MigLayout;
5+
import javax.swing.JLabel;
6+
import javax.swing.JOptionPane;
7+
import javax.swing.JTextField;
8+
import javax.swing.JButton;
9+
10+
import javax.swing.JPanel;
11+
import java.awt.Font;
12+
import java.awt.FlowLayout;
13+
import java.awt.Color;
14+
15+
public class EmpresaView {
16+
17+
private JFrame frmRegistroEmpresa;
18+
private JLabel lbTítulo;
19+
private JTextField tfNombre;
20+
private JPanel pnEmisor;
21+
private JLabel lbNombre;
22+
private JButton btnCancelar;
23+
private JButton btRegistro;
24+
25+
/**
26+
* Create the application.
27+
*/
28+
public EmpresaView() {
29+
initialize();
30+
}
31+
32+
/**
33+
* Initialize the contents of the frame.
34+
*/
35+
private void initialize() {
36+
frmRegistroEmpresa = new JFrame();
37+
frmRegistroEmpresa.setTitle("RegistroEmpresa");
38+
frmRegistroEmpresa.setName("RegistroEmpresa");
39+
frmRegistroEmpresa.setBounds(0, 0, 301, 155);
40+
frmRegistroEmpresa.setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
41+
frmRegistroEmpresa.getContentPane().setLayout(new MigLayout("", "[grow]", "[][][][]"));
42+
43+
lbTítulo = new JLabel("Registro de envíos de empresa:");
44+
lbTítulo.setFont(new Font("Tahoma", Font.BOLD, 15));
45+
frmRegistroEmpresa.getContentPane().add(lbTítulo, "cell 0 0");
46+
47+
pnEmisor = new JPanel();
48+
FlowLayout flowLayout = (FlowLayout) pnEmisor.getLayout();
49+
flowLayout.setAlignment(FlowLayout.LEFT);
50+
frmRegistroEmpresa.getContentPane().add(pnEmisor, "cell 0 2,grow");
51+
52+
lbNombre = new JLabel("Nombre de la empresa:");
53+
lbNombre.setFont(new Font("Tahoma", Font.PLAIN, 13));
54+
pnEmisor.add(lbNombre);
55+
56+
tfNombre = new JTextField();
57+
pnEmisor.add(tfNombre);
58+
tfNombre.setColumns(10);
59+
60+
JPanel pnBotones = new JPanel();
61+
FlowLayout fl_pnBotones = (FlowLayout) pnBotones.getLayout();
62+
fl_pnBotones.setAlignment(FlowLayout.RIGHT);
63+
frmRegistroEmpresa.getContentPane().add(pnBotones, "cell 0 3,grow");
64+
65+
btnCancelar = new JButton("Cancelar");
66+
btnCancelar.setForeground(Color.WHITE);
67+
btnCancelar.setBackground(Color.RED);
68+
btnCancelar.setFont(new Font("Tahoma", Font.BOLD, 12));
69+
pnBotones.add(btnCancelar);
70+
71+
btRegistro = new JButton("Registrar envíos");
72+
btRegistro.setBackground(Color.GREEN);
73+
btRegistro.setFont(new Font("Tahoma", Font.BOLD, 12));
74+
pnBotones.add(btRegistro);
75+
}
76+
77+
public void reset() {
78+
this.tfNombre.setText("");
79+
this.getFrame().setVisible(false);
80+
81+
}
82+
83+
//Getters y Setters anyadidos para acceso desde el controlador (repersentacion compacta)
84+
public JFrame getFrame() { return this.frmRegistroEmpresa; }
85+
public JButton getBtCancelar() { return this.btnCancelar; }
86+
public JButton getBtRegistrar() { return this.btRegistro; }
87+
public JTextField getTfNombreE() { return tfNombre; }
88+
89+
public boolean comprobarCampos() {
90+
if(this.tfNombre.getText().isBlank()) {
91+
JOptionPane.showMessageDialog(null, "Rellena con el nombre de la empresa");
92+
return false;
93+
}
94+
return true;
95+
}
96+
}

src/main/java/giis/demo/tkrun/EnvioDisplayDTO.java

+21-21
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,23 @@
11
package giis.demo.tkrun;
22

33
public class EnvioDisplayDTO {
4-
private String nref;
4+
private int nref;
55
private String nombreEmisor;
66
private String correoEmisor;
77
private String direccionEmisor;
88
private String nombreReceptor;
99
private String correoReceptor;
1010
private String direccionReceptor;
11-
private Double largo;
12-
private Double ancho;
13-
private Double alto;
14-
private Double peso;
15-
private Double precio;
11+
private double largo;
12+
private double ancho;
13+
private double alto;
14+
private double peso;
15+
private double precio;
1616
private String instrExtra;
1717
public EnvioDisplayDTO() {}
18-
public EnvioDisplayDTO(String nref, String nombreEmisor, String correoEmisor, String direccionEmisor,
19-
String nombreReceptor, String correoReceptor, String direccionReceptor, Double largo, Double ancho,
20-
Double alto, Double peso, Double precio, String instrExtra) {
18+
public EnvioDisplayDTO(int nref, String nombreEmisor, String correoEmisor, String direccionEmisor,
19+
String nombreReceptor, String correoReceptor, String direccionReceptor, double largo, double ancho,
20+
double alto, double peso, double precio, String instrExtra) {
2121
super();
2222
this.nref = nref;
2323
this.nombreEmisor = nombreEmisor;
@@ -33,7 +33,7 @@ public EnvioDisplayDTO(String nref, String nombreEmisor, String correoEmisor, St
3333
this.precio = precio;
3434
this.instrExtra = instrExtra;
3535
}
36-
public String getNref() {
36+
public int getNref() {
3737
return nref;
3838
}
3939
public String getNombreEmisor() {
@@ -54,25 +54,25 @@ public String getCorreoReceptor() {
5454
public String getDireccionReceptor() {
5555
return direccionReceptor;
5656
}
57-
public Double getLargo() {
57+
public double getLargo() {
5858
return largo;
5959
}
60-
public Double getAncho() {
60+
public double getAncho() {
6161
return ancho;
6262
}
63-
public Double getAlto() {
63+
public double getAlto() {
6464
return alto;
6565
}
66-
public Double getPeso() {
66+
public double getPeso() {
6767
return peso;
6868
}
69-
public Double getPrecio() {
69+
public double getPrecio() {
7070
return precio;
7171
}
7272
public String getInstrExtra() {
7373
return instrExtra;
7474
}
75-
public void setNref(String nref) {
75+
public void setNref(int nref) {
7676
this.nref = nref;
7777
}
7878
public void setNombreEmisor(String nombreEmisor) {
@@ -93,19 +93,19 @@ public void setCorreoReceptor(String correoReceptor) {
9393
public void setDireccionReceptor(String direccionReceptor) {
9494
this.direccionReceptor = direccionReceptor;
9595
}
96-
public void setLargo(Double largo) {
96+
public void setLargo(double largo) {
9797
this.largo = largo;
9898
}
99-
public void setAncho(Double ancho) {
99+
public void setAncho(double ancho) {
100100
this.ancho = ancho;
101101
}
102-
public void setAlto(Double alto) {
102+
public void setAlto(double alto) {
103103
this.alto = alto;
104104
}
105-
public void setPeso(Double peso) {
105+
public void setPeso(double peso) {
106106
this.peso = peso;
107107
}
108-
public void setPrecio(Double precio) {
108+
public void setPrecio(double precio) {
109109
this.precio = precio;
110110
}
111111
public void setInstrExtra(String instrExtra) {

src/main/java/giis/demo/tkrun/EnvioEntity.java

+38-20
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,39 @@
11
package giis.demo.tkrun;
22

33
public class EnvioEntity {
4-
private String nref;
4+
private int nref;
55
private String nombreEmisor;
66
private String correoEmisor;
77
private String direccionEmisor;
88
private String nombreReceptor;
99
private String correoReceptor;
1010
private String direccionReceptor;
11-
private Double largo;
12-
private Double ancho;
13-
private Double alto;
14-
private Double peso;
15-
private Double precio;
11+
private double largo;
12+
private double ancho;
13+
private double alto;
14+
private double peso;
15+
private double precio;
1616
private String instrExtra;
17-
18-
public String getNref() {
17+
18+
public EnvioEntity(String nombreEmisor, String correoEmisor, String direccionEmisor, String nombreReceptor,
19+
String correoReceptor, String direccionReceptor, double largo, double ancho, double alto, double peso,
20+
double precio, String instrExtra) {
21+
super();
22+
this.nombreEmisor = nombreEmisor;
23+
this.correoEmisor = correoEmisor;
24+
this.direccionEmisor = direccionEmisor;
25+
this.nombreReceptor = nombreReceptor;
26+
this.correoReceptor = correoReceptor;
27+
this.direccionReceptor = direccionReceptor;
28+
this.largo = largo;
29+
this.ancho = ancho;
30+
this.alto = alto;
31+
this.peso = peso;
32+
this.precio = precio;
33+
this.instrExtra = instrExtra;
34+
}
35+
36+
public int getNref() {
1937
return nref;
2038
}
2139
public String getNombreEmisor() {
@@ -36,26 +54,26 @@ public String getCorreoReceptor() {
3654
public String getDireccionReceptor() {
3755
return direccionReceptor;
3856
}
39-
public Double getLargo() {
57+
public double getLargo() {
4058
return largo;
4159
}
42-
public Double getAncho() {
60+
public double getAncho() {
4361
return ancho;
4462
}
45-
public Double getAlto() {
63+
public double getAlto() {
4664
return alto;
4765
}
48-
public Double getPeso() {
66+
public double getPeso() {
4967
return peso;
5068
}
51-
public Double getPrecio() {
69+
public double getPrecio() {
5270
return precio;
5371
}
5472
public String getInstrExtra() {
5573
return instrExtra;
5674
}
57-
public void setNref(String nref) {
58-
this.nref = nref;
75+
public void setNref(int i) {
76+
this.nref = i;
5977
}
6078
public void setNombreEmisor(String nombreEmisor) {
6179
this.nombreEmisor = nombreEmisor;
@@ -75,19 +93,19 @@ public void setCorreoReceptor(String correoReceptor) {
7593
public void setDireccionReceptor(String direccionReceptor) {
7694
this.direccionReceptor = direccionReceptor;
7795
}
78-
public void setLargo(Double largo) {
96+
public void setLargo(double largo) {
7997
this.largo = largo;
8098
}
81-
public void setAncho(Double ancho) {
99+
public void setAncho(double ancho) {
82100
this.ancho = ancho;
83101
}
84-
public void setAlto(Double alto) {
102+
public void setAlto(double alto) {
85103
this.alto = alto;
86104
}
87-
public void setPeso(Double peso) {
105+
public void setPeso(double peso) {
88106
this.peso = peso;
89107
}
90-
public void setPrecio(Double precio) {
108+
public void setPrecio(double precio) {
91109
this.precio = precio;
92110
}
93111
public void setInstrExtra(String instrExtra) {

0 commit comments

Comments
 (0)