Commit 09094133 by Rafael Ortega Chica

Merge branch 'jose' into Rafael

parents ebccaa90 ec2f3bce
...@@ -31,3 +31,4 @@ build/ ...@@ -31,3 +31,4 @@ build/
### VS Code ### ### VS Code ###
.vscode/ .vscode/
/nbproject/
\ No newline at end of file
{
"1":{
"nombre":"CL Andalucía-Extremadura",
"localización":"Sevilla",
"provincias":[
"Almería",
"Cádiz",
"Córdoba",
"Granada",
"Huelva",
"Jaén",
"Málaga",
"Sevilla",
"Badajoz",
"Cáceres",
"Melilla",
"Ceuta"
],
"conexiones":[
2,
3
]
},
"2":{
"nombre":"CL Castilla La Mancha",
"localización":"Toledo",
"provincias":[
"Albacete",
"Ciudad Real",
"Cuenca",
"Guadalajara",
"Toledo"
],
"conexiones":[
1,
9,
3
]
},
"3":{
"nombre":"CL Levante",
"localización":"Valencia",
"provincias":[
"Castellón",
"Valencia",
"Alicante",
"Murcia",
"Islas Baleares"
],
"conexiones":[
2,
1,
5
]
},
"4":{
"nombre":"CL Castilla León-Rioja",
"localización":"Valladolid",
"provincias":[
"León",
"Zamora",
"Salamanca",
"Palencia",
"Valladolid",
"Avila",
"Burgos",
"Segovia",
"Soria",
"La Rioja"
],
"conexiones":[
9,
7,
8,
6
]
},
"5":{
"nombre":"CL Cataluña",
"localización":"Barcelona",
"provincias":[
"Lleida",
"Girona",
"Barcelona",
"Tarragona"
],
"conexiones":[
3,
6
]
},
"6":{
"nombre":"CL Aragón-Navarra",
"localización":"Zaragoza",
"provincias":[
"Zaragoza",
"Huesca",
"Navarra",
"Teruel"
],
"conexiones":[
9,
5,
7,
4
]
},
"7":{
"nombre":"CL Pais Vasco-Cantabria",
"localización":"Vitoria",
"provincias":[
"Vizcaya",
"Alava",
"San Sebastián",
"Cantabria"
],
"conexiones":[
6,
4,
8
]
},
"8":{
"nombre":"CL Galicia-Asturias",
"localización":"Orense",
"provincias":[
"La Coruña",
"Lugo",
"Orense",
"Pontevedra",
"Asturias"
],
"conexiones":[
7,
4
]
},
"9":{
"nombre":"CL Madrid",
"localización":"Madrid",
"provincias":[
"Madrid"
],
"conexiones":[
6,
4,
2,
10
]
},
"10":{
"nombre":"CL Canarias",
"localización":"Santa Cruz de Tenerife",
"provincias":[
"Santa Cruz de Tenerife",
"Las Palmas"
],
"conexiones":[
9
]
}
}
\ No newline at end of file
{
"1":{
"nombre":"CL Andalucia-Extremadura",
"localizacion":"Sevilla",
"provincias":[
"Almeria",
"Cadiz",
"Cordoba",
"Granada",
"Huelva",
"Jaen",
"Malaga",
"Sevilla",
"Badajoz",
"Caceres",
"Melilla",
"Ceuta"
],
"conexiones":[
2,
3
]
},
"2":{
"nombre":"CL Castilla La Mancha",
"localizacion":"Toledo",
"provincias":[
"Albacete",
"Ciudad Real",
"Cuenca",
"Guadalajara",
"Toledo"
],
"conexiones":[
1,
9,
3
]
},
"3":{
"nombre":"CL Levante",
"localizacion":"Valencia",
"provincias":[
"Castellon",
"Valencia",
"Alicante",
"Murcia",
"Islas Baleares"
],
"conexiones":[
2,
1,
5
]
},
"4":{
"nombre":"CL Castilla Leon-Rioja",
"localizacion":"Valladolid",
"provincias":[
"Leon",
"Zamora",
"Salamanca",
"Palencia",
"Valladolid",
"Avila",
"Burgos",
"Segovia",
"Soria",
"La Rioja"
],
"conexiones":[
9,
7,
8,
6
]
},
"5":{
"nombre":"CL Cataluña",
"localizacion":"Barcelona",
"provincias":[
"Lleida",
"Girona",
"Barcelona",
"Tarragona"
],
"conexiones":[
3,
6
]
},
"6":{
"nombre":"CL Aragon-Navarra",
"localizacion":"Zaragoza",
"provincias":[
"Zaragoza",
"Huesca",
"Navarra",
"Teruel"
],
"conexiones":[
9,
5,
7,
4
]
},
"7":{
"nombre":"CL Pais Vasco-Cantabria",
"localizacion":"Vitoria",
"provincias":[
"Vizcaya",
"Alava",
"San Sebastian",
"Cantabria"
],
"conexiones":[
6,
4,
8
]
},
"8":{
"nombre":"CL Galicia-Asturias",
"localizacion":"Orense",
"provincias":[
"La Coruña",
"Lugo",
"Orense",
"Pontevedra",
"Asturias"
],
"conexiones":[
7,
4
]
},
"9":{
"nombre":"CL Madrid",
"localizacion":"Madrid",
"provincias":[
"Madrid"
],
"conexiones":[
6,
4,
2,
10
]
},
"10":{
"nombre":"CL Canarias",
"localizacion":"Santa Cruz de Tenerife",
"provincias":[
"Santa Cruz de Tenerife",
"Las Palmas"
],
"conexiones":[
9
]
}
}
\ No newline at end of file
...@@ -4,7 +4,11 @@ import com.google.gson.Gson; ...@@ -4,7 +4,11 @@ import com.google.gson.Gson;
import com.google.gson.JsonArray; import com.google.gson.JsonArray;
import com.google.gson.JsonElement; import com.google.gson.JsonElement;
import com.google.gson.JsonObject; import com.google.gson.JsonObject;
import es.ujaen.dae.entidades.Envio;
import es.ujaen.dae.entidades.PuntodeControl; import es.ujaen.dae.entidades.PuntodeControl;
import es.ujaen.dae.entidades.TipoPunto;
import static es.ujaen.dae.entidades.TipoPunto.CentroLogistico;
import static es.ujaen.dae.entidades.TipoPunto.Oficina;
import java.io.BufferedReader; import java.io.BufferedReader;
import java.io.FileNotFoundException; import java.io.FileNotFoundException;
import java.io.FileReader; import java.io.FileReader;
...@@ -22,8 +26,9 @@ public class UjapackApplication { ...@@ -22,8 +26,9 @@ public class UjapackApplication {
public static void main(String[] args){ public static void main(String[] args){
SpringApplication.run(UjapackApplication.class, args); SpringApplication.run(UjapackApplication.class, args);
ArrayList<PuntodeControl> puntosdecontrol= new ArrayList<>(); ArrayList<PuntodeControl> puntosdecontrol= new ArrayList<>();
int id2=11;
String fichero=""; String fichero="";
try(BufferedReader br=new BufferedReader(new FileReader("redujapack.json"))){ try(BufferedReader br=new BufferedReader(new FileReader("redujapackPr.json"))){
String linea; String linea;
while((linea=br.readLine())!=null){ while((linea=br.readLine())!=null){
fichero+=linea; fichero+=linea;
...@@ -41,26 +46,44 @@ public class UjapackApplication { ...@@ -41,26 +46,44 @@ public class UjapackApplication {
ArrayList<String> provincias=new ArrayList<>(); ArrayList<String> provincias=new ArrayList<>();
ArrayList<Integer> conexiones=new ArrayList<>(); ArrayList<Integer> conexiones=new ArrayList<>();
JsonObject centroJson=obj.getAsJsonObject(centro); JsonObject centroJson=obj.getAsJsonObject(centro);
//int id=Integer.parseInt(centro); int id=Integer.parseInt(centro);
String nombre=centroJson.get("nombre").getAsString(); String nombre=centroJson.get("nombre").getAsString();
String localizacion=centroJson.get("localización").getAsString(); String localizacion=centroJson.get("localizacion").getAsString();
JsonArray provinciasArr=centroJson.getAsJsonArray("provincias"); JsonArray provinciasArr=centroJson.getAsJsonArray("provincias");
for(JsonElement prov : provinciasArr){ for(JsonElement prov : provinciasArr){
provincias.add(prov.getAsString()); provincias.add(prov.getAsString());
PuntodeControl cl2 = new PuntodeControl(prov.getAsString(),prov.getAsString(),id2,Oficina,null,null);
id2++;
puntosdecontrol.add(cl2);
} }
JsonArray conexionesArr=centroJson.getAsJsonArray("conexiones"); JsonArray conexionesArr=centroJson.getAsJsonArray("conexiones");
for(JsonElement con : conexionesArr){ for(JsonElement con : conexionesArr){
conexiones.add(con.getAsInt()); conexiones.add(con.getAsInt());
} }
PuntodeControl cl=new PuntodeControl(nombre, localizacion, provincias, conexiones); PuntodeControl cl=new PuntodeControl(nombre, localizacion, id, CentroLogistico, provincias, conexiones);
puntosdecontrol.add(cl); puntosdecontrol.add(cl);
System.out.println(cl.toString()); System.out.println(cl.toString());
} }
//Prueba del metodo Calcular ruta y calcular importe
Envio e = new Envio("Jose","Maria","Almeria","Almeria",0.5f,20.4f,20.4f,20.4f);
ArrayList<PuntodeControl> j = new ArrayList<>();
j = e.calcularRuta(puntosdecontrol,e);
System.out.println(j.size());
for(int i=0; i<j.size(); i++){
System.out.println(j.get(i));
}
float v = 0;
v = e.calcularImporte(e);
System.out.println(v);
//Fin de prueba del metodo calcular ruta. Esto debe pasarse a un test propio
} }
} }
...@@ -35,7 +35,7 @@ public class ServicioUjaPackImpl implements ServicioUjaPack{ ...@@ -35,7 +35,7 @@ public class ServicioUjaPackImpl implements ServicioUjaPack{
* @brief constructor de la clase ServicioUjaPack el cual inicializara la lista de Envios del sistema * @brief constructor de la clase ServicioUjaPack el cual inicializara la lista de Envios del sistema
*/ */
public ServicioUjaPackImpl(){ public ServicioUjaPackImpl(){
this.envios=new ArrayList<Envio>(); this.envios=new ArrayList<>();
} }
......
...@@ -7,6 +7,7 @@ package es.ujaen.dae.entidades; ...@@ -7,6 +7,7 @@ package es.ujaen.dae.entidades;
import java.time.LocalDate; import java.time.LocalDate;
import java.util.ArrayList; import java.util.ArrayList;
import es.ujaen.dae.Ujapack.UjapackApplication;
/** /**
* *
...@@ -31,10 +32,35 @@ public class Envio { ...@@ -31,10 +32,35 @@ public class Envio {
this.direccionDestino=direccionDestino; this.direccionDestino=direccionDestino;
this.direccionOrigen=direccionOrigen; this.direccionOrigen=direccionOrigen;
this.fechaEntegra= LocalDate.now(); this.fechaEntegra= LocalDate.now();
this.listadoPuntos=new ArrayList<PuntodeControl>(); this.listadoPuntos=new ArrayList<>();
} }
public void calcularImporte(){} //cambiar void por float
public float calcularImporte(Envio e){
float importe = 0;
importe = (e.getPeso()*e.getAlto()*e.getAncho()*e.getLargo()*((e.getListadoPuntos().size())+1)/1000);
return importe;
}
//Hecho solamente el caso donde envias y recibes dentro de la misma provincia
public ArrayList<PuntodeControl> calcularRuta(ArrayList<PuntodeControl> cl, Envio e){
if(e.getDireccionOrigen().equals(e.getDireccionDestino())){
for(int i=0; i<cl.size(); i++){
if(cl.get(i).getProvincia().equals(e.getDireccionDestino())){
listadoPuntos.add(cl.get(i));
break;
}
}
}
return listadoPuntos;
}
......
...@@ -19,15 +19,19 @@ public class PuntodeControl { ...@@ -19,15 +19,19 @@ public class PuntodeControl {
private ArrayList<String> provincias; private ArrayList<String> provincias;
private ArrayList<Integer> conexiones; private ArrayList<Integer> conexiones;
public PuntodeControl(String nombre, String provincia,ArrayList<String> provincias, ArrayList<Integer> conexiones){ //AÑADIR EL ENUM AL CONSTRUCTOR DEL PUNTO DE CONTROL
public PuntodeControl(String nombre, String provincia, int id, TipoPunto t, ArrayList<String> provincias, ArrayList<Integer> conexiones){ //AÑADIR EL ENUM AL CONSTRUCTOR DEL PUNTO DE CONTROL
this.id = id;
this.nombre=nombre; this.nombre=nombre;
this.provincia=provincia; this.provincia=provincia;
this.provincias=provincias; tipo = t;
this.conexiones=conexiones; this.conexiones = conexiones;
this.provincias = provincias;
}; };
/** /**
* @return the provincia * @return the provincia
...@@ -70,5 +74,38 @@ public class PuntodeControl { ...@@ -70,5 +74,38 @@ public class PuntodeControl {
public void setTipo(TipoPunto tipo) { public void setTipo(TipoPunto tipo) {
this.tipo = tipo; this.tipo = tipo;
} }
/**
* @return the provincias
*/
public ArrayList<String> getProvincias() {
return provincias;
}
/**
* @param provincias the provincias to set
*/
public void setProvincias(ArrayList<String> provincias) {
this.provincias = provincias;
}
/**
* @return the conexiones
*/
public ArrayList<Integer> getConexiones() {
return conexiones;
}
/**
* @param conexiones the conexiones to set
*/
public void setConexiones(ArrayList<Integer> conexiones) {
this.conexiones = conexiones;
}
@Override
public String toString(){
return nombre;
}
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment