eduardo.dicarde 2016-09-22 20:10:14 +00:00
parent baad158fce
commit 20d283efaa
1 changed files with 49 additions and 18 deletions

View File

@ -42,6 +42,8 @@ public class EditarSecuenciaController extends MyGenericForwardComposer{
private String localidadeDestino; private String localidadeDestino;
private MyListbox casetaPeajeList; private MyListbox casetaPeajeList;
private List<CasetaPeaje> lsCasetaPeaje; private List<CasetaPeaje> lsCasetaPeaje;
private List<CasetaPeaje> lsSequenciasRemovidas;
private List<CasetaPeaje> lsSequenciasIncluidas;
private List<RutaSecuencia> lsRutaSecuencia; private List<RutaSecuencia> lsRutaSecuencia;
@ -75,6 +77,8 @@ public class EditarSecuenciaController extends MyGenericForwardComposer{
// lsCasetaPeaje = new ArrayList<CasetaPeaje>(); // lsCasetaPeaje = new ArrayList<CasetaPeaje>();
lsTodasCasetasPeaje = casetaPeajeService.buscarTodosOrdenadoPorDescricao(); lsTodasCasetasPeaje = casetaPeajeService.buscarTodosOrdenadoPorDescricao();
lsSequenciasRemovidas = new ArrayList<CasetaPeaje>();
lsSequenciasIncluidas = new ArrayList<CasetaPeaje>();
} }
@ -163,39 +167,47 @@ public class EditarSecuenciaController extends MyGenericForwardComposer{
@SuppressWarnings({ "unchecked", "rawtypes" }) @SuppressWarnings({ "unchecked", "rawtypes" })
public void onClick$btnAdicionarCasetaPeaje(Event ev) throws InterruptedException { public void onClick$btnAdicionarCasetaPeaje(Event ev) throws InterruptedException {
CasetaPeaje cas = (CasetaPeaje) cmbTodasCasetasPeaje.getSelectedItem().getValue(); CasetaPeaje cas = (CasetaPeaje) cmbTodasCasetasPeaje.getSelectedItem().getValue();
lsCasetaPeaje.add(cas);
lsSequenciasIncluidas.add(cas);
// CasetaPeaje caseta = new CasetaPeaje(); // CasetaPeaje caseta = new CasetaPeaje();
// caseta.setCasetaPeajeId(1); // caseta.setCasetaPeajeId(1);
// caseta.setDesccaseta("descricao"); // caseta.setDesccaseta("descricao");
// caseta.setImporteIda(BigDecimal.valueOf(10)); // caseta.setImporteIda(BigDecimal.valueOf(10));
// caseta.setImporteVuelta(BigDecimal.valueOf(11)); // caseta.setImporteVuelta(BigDecimal.valueOf(11));
// lsCasetaPeaje.add(caseta); // lsCasetaPeaje.add(caseta);
casetaPeajeList.setData(lsCasetaPeaje); casetaPeajeList.setData(lsSequenciasIncluidas);
} }
@SuppressWarnings({ "unchecked", "rawtypes" }) @SuppressWarnings({ "unchecked", "rawtypes" })
public void onClick$btnRemoverCasetaPeaje(Event ev) throws InterruptedException { public void onClick$btnRemoverCasetaPeaje(Event ev) throws InterruptedException {
CasetaPeaje cas = (CasetaPeaje)casetaPeajeList.getSelected(); CasetaPeaje cas = (CasetaPeaje)casetaPeajeList.getSelected();
lsCasetaPeaje.remove(cas); lsSequenciasRemovidas.add(cas);
casetaPeajeList.setData(lsCasetaPeaje); lsSequenciasIncluidas.remove(cas);
casetaPeajeList.removeSelectedItem();
} }
public void onClick$btnSalvar(Event ev) throws InterruptedException { public void onClick$btnSalvar(Event ev) throws InterruptedException {
List<RutaCaseta> lsrc = new ArrayList<RutaCaseta>() ; List<RutaCaseta> lsrc = new ArrayList<RutaCaseta>() ;
for(int i = 0 ; i < lsCasetaPeaje.size() ; i ++){ for(int i = 0 ; i < lsSequenciasIncluidas.size() ; i ++){
RutaCaseta rc = new RutaCaseta(); RutaCaseta rc = new RutaCaseta();
RutaSecuencia rutaSecue = lsRutaSecuencia.get(paradaSeqOrigen.getSecuencia()-1); RutaSecuencia rutaSecue = lsRutaSecuencia.get(paradaSeqOrigen.getSecuencia()-1);
rc.setRutaSecuencia(rutaSecue); rc.setRutaSecuencia(rutaSecue);
rc.setCasetaPeaje(lsCasetaPeaje.get(i)); rc.setCasetaPeaje(lsSequenciasIncluidas.get(i));
lsrc.add(rc); lsrc.add(rc);
} }
try {
rutaCasetaService.deletarRutaCasetasFromRutaSecuenciaId(lsRutaSecuencia.get(paradaSeqOrigen.getSecuencia()-1).getRutasecuenciaId()); for (CasetaPeaje casetaPeaje: lsSequenciasRemovidas){
} catch (BusinessException e1) { try {
// TODO Auto-generated catch block RutaSecuencia rutaSecuencia = casetaPeaje.getLsRutaSecuencia().get(paradaSeqOrigen.getSecuencia()-1);
e1.printStackTrace(); rutaCasetaService.deletarRutaCasetasFromRutaSecuenciaId(rutaSecuencia.getRutasecuenciaId());
} catch (BusinessException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
return;
}
} }
RutaSecuencia rutaSecue = lsRutaSecuencia.get(paradaSeqOrigen.getSecuencia()-1); RutaSecuencia rutaSecue = lsRutaSecuencia.get(paradaSeqOrigen.getSecuencia()-1);
@ -223,11 +235,17 @@ public class EditarSecuenciaController extends MyGenericForwardComposer{
for (int i = 0; i < lsRutaSecuencia.size(); i++) { for (int i = 0; i < lsRutaSecuencia.size(); i++) {
RutaSecuencia rs = lsRutaSecuencia.get(i); RutaSecuencia rs = lsRutaSecuencia.get(i);
Tramo tramo = rs.getTramo(); Tramo tramo = rs.getTramo();
Via via = tramo.getVia(); List<RutaCaseta> lcas = rs.getLsRutaCase();
Short numsecuencia = ++numSecuencia; Short numsecuencia = ++numSecuencia;
Via via = tramo.getVia();
Parada paradaOrigem = tramo.getOrigem(); Parada paradaOrigem = tramo.getOrigem();
addTramoPardaSecuencia(paradaOrigem, via, numsecuencia, lsrc, getTempo(tramo.getTramoServicioList(), rs.getRuta()),tramo.getKmReal().toPlainString()); if (paradaSeqOrigen.getSecuencia() == numsecuencia && !lsSequenciasRemovidas.isEmpty()){
removerRutaCaseta(lcas);
}
addTramoPardaSecuencia(paradaOrigem, via, numsecuencia, lcas, getTempo(tramo.getTramoServicioList(), rs.getRuta()),tramo.getKmReal().toPlainString());
if (i == lsRutaSecuencia.size() - 1) { if (i == lsRutaSecuencia.size() - 1) {
@ -291,18 +309,16 @@ public class EditarSecuenciaController extends MyGenericForwardComposer{
} }
private void addTramoPardaSecuencia(Parada parada, Via via, Short numsecuencia, List<RutaCaseta> lCas, String tempo, String km) { private void addTramoPardaSecuencia(Parada parada, Via via, Short numsecuencia, List<RutaCaseta> lCas, String tempo, String km) {
if(!lCas.isEmpty()) {
ParadaSecuencia paradaSecuencia = new ParadaSecuencia(); ParadaSecuencia paradaSecuencia = new ParadaSecuencia();
paradaSecuencia.setParada(parada); paradaSecuencia.setParada(parada);
paradaSecuencia.setSecuencia(numsecuencia); paradaSecuencia.setSecuencia(numsecuencia);
paradaSecuencia.setVia(via); paradaSecuencia.setVia(via);
paradaSecuencia.setCasetas(lCas); if (!lCas.isEmpty()){
paradaSecuencia.setCasetas(lCas);
}
paradaSecuencia.setKmReal(km); paradaSecuencia.setKmReal(km);
paradaSecuencia.setTempoReal(tempo); paradaSecuencia.setTempoReal(tempo);
lsParadasSequencia.add(paradaSecuencia); lsParadasSequencia.add(paradaSecuencia);
} else {
addTramoPardaSecuencia(parada, via, numsecuencia);
}
} }
private String getTempo(List<TramoServicio> lsTramoServicio, Ruta rutaTempo) { private String getTempo(List<TramoServicio> lsTramoServicio, Ruta rutaTempo) {
@ -324,4 +340,19 @@ public class EditarSecuenciaController extends MyGenericForwardComposer{
return ""; return "";
} }
private void removerRutaCaseta(List<RutaCaseta> lsRutaCaseta){
List<RutaCaseta> rutaCasetasRemovidas = new ArrayList<RutaCaseta>();
for (CasetaPeaje casetaPaje: lsSequenciasRemovidas){
for (RutaCaseta rutaCaseta: lsRutaCaseta){
if (rutaCaseta.getCasetaPeaje().getCasetaPeajeId() == casetaPaje.getCasetaPeajeId()){
rutaCasetasRemovidas.add(rutaCaseta);
break;
}
}
}
lsRutaCaseta.removeAll(rutaCasetasRemovidas);
}
} }