diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/EditarCorridaController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/EditarCorridaController.java index 317b3f608..cb01a320d 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/EditarCorridaController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/EditarCorridaController.java @@ -82,1511 +82,1520 @@ import org.zkoss.zul.Checkbox; @Scope("prototype") public class EditarCorridaController extends MyGenericForwardComposer { - private static final long serialVersionUID = 1L; - @Autowired - private EsquemaCorridaService esquemaCorridaService; - @Autowired - private EsquemaAsientoService esquemaAsientoService; - @Autowired - private EsquemaTramoService esquemaTramoService; - @Autowired - private MarcaService marcaService; - @Autowired - private ClaseServicioService claseService; - @Autowired - private RutaService rutaService; - @Autowired - private RutaCombinacionService rutaCombinacionService; - @Autowired - private RutaSecuenciaService rutaSecuenciaService; - @Autowired - private EmpresaService empresaService; - @Autowired - private MarcaClaseServicioService marcaClaseServicioService; - @Autowired - private RolOperativoService rolOperativoService; - @Autowired - - private BusquedaCorridaController busquedaCorridaController; - private DivisionService divisionService; - private List lsDivision; - private List lsEmpresa; - private List lsMarca; - private List lsClase; - private List lsRuta; - private List lsRutaSecuencia; - private List lsEsquemaTramo; - private List lsRolOperativo; - private List lsTramosRutaEsquemaCorrida; - private List lsTramos; - private List lsParadaEsquema; - private Radio porBloq; - private Radio latente; - private Radio autorizada; - private Radio cancelada; - private Radio fletes; - private Radio viajesEspeciales; - private Radio transportePasajeros; - private Checkbox chkDoblePiso; - private EsquemaCorrida esquemaCorrida; - private MyListbox esquemaCorridaList; - private MyListbox esquemaTramoList; - private Datebox fecniciovigencia; - private Datebox fecfinvigencia; - private Intbox txtNumCorrida; - private Intbox txtNumCorridaPisoExtra; - private Combobox cmbClase; - private Combobox cmbClaseDoblePiso; - private Combobox cmbMarca; - private Combobox cmbRuta; - private Combobox cmbEmpresaCorrida; - private Combobox cmbEmpresaIngresso; - private Combobox cmbRolOperativo; - private Combobox cmbRolOperativoDoblePiso; - private Combobox cmbStatus; - private Combobox cmbVia; - private Combobox cmbTramo; - private Combobox cmbDivision; - private Button btnAsientos; - private Button btnAdicionarTramo; - private Button btnRemoverTramo; - private Timebox horasalida; - private Timebox de; - private Timebox hasta; - private Spinner minutos; - private Label horasalidaLabel; - private Label minutosLabel1; - private Label minutosLabel2; - private Label horaLabel1; - private Label horaLabel2; - private Label horaLabel21; - private Label horaLabel22; - private Label lbDivision; - private Label lbRolOperativoDoblePiso; - private Label lbClaseDoblePiso; - private Label lbNumCorridaPisoExtra; - private Button btnApagar; - private Textbox txtIdCorridaRebote; - private Textbox txtPlataforma; - private static Logger log = Logger.getLogger(EditarCorridaController.class); - private Button btnAbrirEsquemaCorrida; - - @Override - public void doAfterCompose(Component comp) throws Exception { - super.doAfterCompose(comp); - - - esquemaCorrida = (EsquemaCorrida) Executions.getCurrent().getArg().get("esquemaCorrida"); - esquemaCorridaList = (MyListbox) Executions.getCurrent().getArg().get("esquemaCorridaList"); - busquedaCorridaController = (BusquedaCorridaController) Executions.getCurrent().getArg().get("busquedaCorridaController"); - - lsParadaEsquema = new ArrayList(); - - lsEmpresa = empresaService.obtenerIndTipo1(); - lsClase = claseService.buscarTodosExceto(-1); - - lsRolOperativo = rolOperativoService.obtenerTodos(); - - - - if (esquemaCorrida.getEsquemacorridaId() == null) { - btnAdicionarTramo.setDisabled(true); - btnRemoverTramo.setDisabled(true); - } else { - // 01 - Não se pode mudar dados básicos da corrida. - // 02 - Segundo a Lety os campos CLASE, MARCA E EMPRESAS... - // Poderão ser editados pelo usuario. - // RUTA permanece inalterado. - cmbClase.setDisabled(Boolean.TRUE); - cmbMarca.setDisabled(Boolean.TRUE); - cmbRuta.setDisabled(Boolean.TRUE); - cmbEmpresaCorrida.setDisabled(Boolean.TRUE); - cmbEmpresaIngresso.setDisabled(Boolean.TRUE); - txtNumCorrida.setDisabled(Boolean.TRUE); - txtNumCorridaPisoExtra.setDisabled(Boolean.TRUE); - - if (esquemaCorrida.getPisoExtra() != null && esquemaCorrida.getPisoExtra()) { - chkDoblePiso.setChecked(true); - lbRolOperativoDoblePiso.setVisible(true); - lbClaseDoblePiso.setVisible(true); - lbNumCorridaPisoExtra.setVisible(Boolean.TRUE); - txtNumCorridaPisoExtra.setVisible(Boolean.TRUE); - cmbRolOperativoDoblePiso.setVisible(true); - cmbClaseDoblePiso.setVisible(true); - cmbRolOperativoDoblePiso.setConstraint("no empty"); - cmbClaseDoblePiso.setConstraint("no empty"); - - } - } - - // Llena los valores de los combos - llenarRutasPorClase(); - llenarMarcaPorClaseServicio(); - - esquemaTramoList.setItemRenderer(new RenderConfiguracionCorridaTramo()); - esquemaTramoList.addEventListener("onDoubleClick", new EventListener() { - - @Override - public void onEvent(Event event) throws Exception { - ParadaEsquema pe = (ParadaEsquema) esquemaTramoList.getSelected(); - EsquemaTramo esquemaTramo = null; - - - for (EsquemaTramo et : lsEsquemaTramo) { - Short numSec = et.getNumsecuencia(); - - if (numSec.equals(pe.getNumsecuencia())) { - esquemaTramo = et; - esquemaTramo.setPlataforma(pe.getPlataforma()); - } - //numSec++; - } - - - verTempoEstanciaTramo(esquemaTramo, pe, (short) esquemaTramoList.getItemCount()); - } - }); - - try { - lsEsquemaTramo = new ArrayList(); - - if (esquemaCorrida.getEsquemacorridaId() == null) { - EsquemaOperacional eo = new EsquemaOperacional(); - eo.setActivo(Boolean.TRUE); - eo.setFecmodif(Calendar.getInstance().getTime()); - eo.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - esquemaCorrida.setEsquemaOperacional(eo); - - // btnAsientos.setDisabled(true); - - transportePasajeros.setChecked(Boolean.TRUE); - } else { - esquemaCorridaService.obtenerID(esquemaCorrida.getEsquemacorridaId()); - - esquemaCorrida.getEsquemaOperacional(); - // Não mostra opção na edição da corrida - porBloq.setVisible(false); - - if (esquemaCorrida.getStatusCorrida() != null) { - if (esquemaCorrida.getStatusCorrida().equals("L")) { - latente.setChecked(true); - } else if (esquemaCorrida.getStatusCorrida().equals("A")) { - autorizada.setChecked(true); - } else { - cancelada.setChecked(true); - } - - if (esquemaCorrida.getTipocorrida().equals("F")) { - fletes.setChecked(true); - } else if (esquemaCorrida.getTipocorrida().equals("S")) { - viajesEspeciales.setChecked(true); - } else { - transportePasajeros.setChecked(true); - } - - } - lsEsquemaTramo = esquemaTramoService.obtenerPorEsquemaCorridaOrderNumSec(esquemaCorrida); - carregarParadaSecuencia(lsEsquemaTramo); - selecionarRutaSequenciaForaEsqCorrida(); - } - - fecniciovigencia.focus(); - - horasalida.setVisible(true); - horasalidaLabel.setVisible(true); - minutos.setVisible(false); - minutosLabel1.setVisible(false); - minutosLabel2.setVisible(false); - de.setVisible(false); - horaLabel1.setVisible(false); - horaLabel2.setVisible(false); - hasta.setVisible(false); - horaLabel21.setVisible(false); - horaLabel22.setVisible(false); - - if (esquemaCorrida.getEsquemacorridaId() == null) { - btnApagar.setVisible(Boolean.FALSE); - } - - if (esquemaCorrida.getEsquemaCorridaRebote() != null) { - txtIdCorridaRebote.setValue(esquemaCorrida.getEsquemaCorridaRebote().getEsquemacorridaId().toString()); - - } - - exibirDivision(); - - } catch (Exception ex) { - log.error("Error al editar una corrida", ex); - Messagebox.show(Labels.getLabel("MSG.Error"), - Labels.getLabel("editarConfiguracionCorridaController.window.title"), - Messagebox.OK, Messagebox.ERROR); - } - } - - private void exibirDivision() { - if (ApplicationProperties.getInstance().exibirDivisionConfiguracionCorrida()) { - - lsDivision = divisionService.obtenerTodos(); - - lbDivision.setVisible(Boolean.TRUE); - cmbDivision.setVisible(Boolean.TRUE); - - } - } - - private void addTramoPardaEsquema(Parada parada, Short numsecuencia, Date tiempoEstancia, String plataforma) { - ParadaEsquema ps = new ParadaEsquema(); - ps.setParada(parada); - ps.setNumsecuencia(numsecuencia); - ps.setTiempoEstancia(tiempoEstancia); - ps.setPlataforma(plataforma); - - lsParadaEsquema.add(ps); - } - - private void carregarParadaSecuencia(List lsEsquemaTramo) { - lsParadaEsquema.clear(); - if (!lsEsquemaTramo.isEmpty()) { - List lsEsquemaTramoTodos = new ArrayList(); - if (esquemaCorrida.getEsquemacorridaId() != null) { - lsEsquemaTramoTodos = esquemaTramoService.obtenerAtivosDesativosPorEsquemaCorrida(esquemaCorrida); - } - - Short numsecuencia = 0; - for (int i = 0; i < lsEsquemaTramo.size(); i++) { - - EsquemaTramo rs = lsEsquemaTramo.get(i); - - Tramo tramo = rs.getTramo(); - numsecuencia = rs.getNumsecuencia(); - Date tiempoEstancia = null; - - if ((i != 0) && (i != (lsEsquemaTramo.size()))) { - tiempoEstancia = lsEsquemaTramo.get(i).getTiempoEstancia(); - } - - Parada paradaOrigem = tramo.getOrigem(); - // So adicionar a parada se o EsquemaTramo estiver ativo. - if (rs.getActivo()) { - String plataforma = rs.getPlataforma(); - addTramoPardaEsquema(paradaOrigem, numsecuencia, tiempoEstancia, plataforma); - } - } - - EsquemaTramo esquemaTramoFinal = lsEsquemaTramo.get(lsEsquemaTramo.size() - 1); - - Parada paradaDestino = esquemaTramoFinal.getTramo().getDestino(); - Integer num = numsecuencia.intValue() + 1; - //String plataforma = esquemaTramoFinal.getPlataforma(); - - addTramoPardaEsquema(paradaDestino, num.shortValue(), null, null); - } - - esquemaTramoList.setData(lsParadaEsquema); - } - - - - - - - - public void onClick$btnSalvar(Event ev) throws InterruptedException { - Date dataDe = fecniciovigencia.getValue(); - Date dataAte = fecfinvigencia.getValue(); - txtNumCorrida.getValue(); - txtNumCorridaPisoExtra.getValue(); - - try { - Comboitem ciRuta = cmbRuta.getSelectedItem(); - Ruta ruta = null; - if (ciRuta != null) { - ruta = (Ruta) ciRuta.getValue(); - } - - if (ruta != null) { - dataAte.setSeconds(59); - if (dataDe.before(dataAte)) { - if (!lsEsquemaTramo.isEmpty()) { - - if (esquemaCorrida.getClaseServicio() == null) { - Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.Clase"), - Labels.getLabel("editarConfiguracionCorridaController.window.title"), - Messagebox.OK, - Messagebox.EXCLAMATION); - } else if (esquemaCorrida.getMarca() == null) { - Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.Marca"), - Labels.getLabel("editarConfiguracionCorridaController.window.title"), - Messagebox.OK, - Messagebox.EXCLAMATION); - } else if (esquemaCorrida.getRuta() == null) { - Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.Ruta"), - Labels.getLabel("editarConfiguracionCorridaController.window.title"), - Messagebox.OK, - Messagebox.EXCLAMATION); - } else if (esquemaCorrida.getEmpresa() == null) { - Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.Empresa"), - Labels.getLabel("editarConfiguracionCorridaController.window.title"), - Messagebox.OK, - Messagebox.EXCLAMATION); - } else if (esquemaCorrida.getEmpresa1() == null) { - Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.Empresa1"), - Labels.getLabel("editarConfiguracionCorridaController.window.title"), - Messagebox.OK, - Messagebox.EXCLAMATION); - } else if (esquemaCorrida.getRolOperativo() == null) { - Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.Rol"), - Labels.getLabel("editarConfiguracionCorridaController.window.title"), - Messagebox.OK, - Messagebox.EXCLAMATION); - } else if (esquemaCorrida.getPisoExtra() != null && esquemaCorrida.getPisoExtra() && esquemaCorrida.getClaseServicio2() == null) { - Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.Clase2"), - Labels.getLabel("editarConfiguracionCorridaController.window.title"), - Messagebox.OK, - Messagebox.EXCLAMATION); - } else if (esquemaCorrida.getPisoExtra() != null && esquemaCorrida.getPisoExtra() && esquemaCorrida.getRolOperativo2() == null) { - Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.Rol2"), - Labels.getLabel("editarConfiguracionCorridaController.window.title"), - Messagebox.OK, - Messagebox.EXCLAMATION); - - } else { - - if (porBloq.isChecked()) { - de.getValue(); - hasta.getValue(); - minutos.getValue(); - } else { - horasalida.getValue(); - } - - esquemaCorrida.setActivo(Boolean.TRUE); - esquemaCorrida.setFecmodif(Calendar.getInstance().getTime()); - esquemaCorrida.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - - esquemaCorrida.setDiagramaAutobusId(esquemaCorrida.getRolOperativo().getDiagramaAutobus().getDiagramaautobusId().intValue()); - - if (latente.isChecked()) { - esquemaCorrida.setStatusCorrida("L"); - } else if (autorizada.isChecked()) { - esquemaCorrida.setStatusCorrida("A"); - } else { - esquemaCorrida.setStatusCorrida("C"); - } - - if (fletes.isChecked()) { - esquemaCorrida.setTipocorrida("F"); - } else if (viajesEspeciales.isChecked()) { - esquemaCorrida.setTipocorrida("S"); - } else if (transportePasajeros.isChecked()) { - esquemaCorrida.setTipocorrida("P"); - } - - // nao gravar segundos: - GregorianCalendar gHoraSalida = new GregorianCalendar(); - if (esquemaCorrida.getHorasalida() != null) { - gHoraSalida.setTime(esquemaCorrida.getHorasalida()); - gHoraSalida.set(Calendar.SECOND, 0); - gHoraSalida.set(Calendar.MILLISECOND, 0); - gHoraSalida.set(Calendar.MONTH, 01); - gHoraSalida.set(Calendar.DAY_OF_MONTH, 01); - gHoraSalida.set(Calendar.YEAR, 1970); - esquemaCorrida.setHorasalida(gHoraSalida.getTime()); - } - - // Pesquisa se existe por todos os campos, - // menos listas EsquemaAsiento e EsquemaTramo: - // List lsEC = - // esquemaCorridaService.buscar(); - - List lsEC = Collections.EMPTY_LIST; - // List lsEC = new - // ArrayList(); - - if (esquemaCorrida.getEsquemacorridaId() == null) { - Date agora = new Date(); - agora.setHours(00); - agora.setMinutes(00); - agora.setSeconds(00); - dataDe.setSeconds(01); - if (dataDe.before(agora)) { - Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.fecha"), - Labels.getLabel("editarConfiguracionCorridaController.window.title"), - Messagebox.OK, - Messagebox.EXCLAMATION); - } else { - if (lsEC.isEmpty()) { - Boolean existeNumCorrida = esquemaCorridaService.buscarNumCorrida(esquemaCorrida.getNumCorrida(), esquemaCorrida.getNumCorridaPisoExtra()); - if ((!existeNumCorrida)&& !(esquemaCorrida.getNumCorrida().equals(esquemaCorrida.getNumCorridaPisoExtra())) ){ - if (porBloq.isChecked()) { - Date des = de.getValue(); - Date has = hasta.getValue(); - has.setSeconds(1); - EsquemaOperacional eo = new EsquemaOperacional(); - while (des.before(has)) { - EsquemaCorrida ec = new EsquemaCorrida(); - eo.setActivo(Boolean.TRUE); - eo.setFecmodif(Calendar.getInstance().getTime()); - eo.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - - Date horaSalida = new Date(); - horaSalida.setHours(des.getHours()); - horaSalida.setMinutes(des.getMinutes()); - horaSalida.setSeconds(0); - - ec.setActivo(Boolean.TRUE); - ec.setFecmodif(Calendar.getInstance().getTime()); - ec.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - ec.setClaseServicio(esquemaCorrida.getClaseServicio()); - ec.setEmpresa(esquemaCorrida.getEmpresa()); - ec.setEmpresa1(esquemaCorrida.getEmpresa1()); - - eo.setFecniciovigencia(esquemaCorrida.getEsquemaOperacional().getFecniciovigencia()); - eo.setFecfinvigencia(esquemaCorrida.getEsquemaOperacional().getFecfinvigencia()); - - ec.setEsquemaOperacional(eo); - ec.setMarca(esquemaCorrida.getMarca()); - ec.setRolOperativo(esquemaCorrida.getRolOperativo()); - ec.setDiagramaAutobusId(esquemaCorrida.getRolOperativo().getDiagramaAutobus().getDiagramaautobusId().intValue()); - ec.setRuta(esquemaCorrida.getRuta()); - ec.setInddomingo(esquemaCorrida.getInddomingo()); - ec.setIndjueves(esquemaCorrida.getIndjueves()); - ec.setIndlunes(esquemaCorrida.getIndlunes()); - ec.setIndmartes(esquemaCorrida.getIndmartes()); - ec.setIndmiercoles(esquemaCorrida.getIndmiercoles()); - ec.setIndsabado(esquemaCorrida.getIndsabado()); - ec.setIndviernes(esquemaCorrida.getIndviernes()); - ec.setStatusCorrida(esquemaCorrida.getStatusCorrida()); - ec.setTipocorrida(esquemaCorrida.getTipocorrida()); - ec.setCantparados(esquemaCorrida.getCantparados()); - ec.setHorasalida(horaSalida); - - ec.setPisoExtra(esquemaCorrida.getPisoExtra()); - ec.setRolOperativo2(esquemaCorrida.getRolOperativo2()); - ec.setClaseServicio2(esquemaCorrida.getClaseServicio2()); - - // Salva - ec = esquemaCorridaService.suscribir(ec); - esquemaCorridaService.actualizaEsquemaTramo(lsParadaEsquema, ec); - - // Acrescenta Minutos na Hora - des.setMinutes(des.getMinutes() + minutos.getValue()); - } - } else { - EsquemaOperacional eo = esquemaCorrida.getEsquemaOperacional(); - eo.setFecniciovigencia(fecniciovigencia.getValue()); - eo.setFecfinvigencia(fecfinvigencia.getValue()); - esquemaCorrida.setEsquemaOperacional(eo); - esquemaCorridaService.suscribir(esquemaCorrida); - esquemaCorridaService.actualizaEsquemaTramo(lsParadaEsquema, esquemaCorrida); - } - Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.suscribirOK"), - Labels.getLabel("editarConfiguracionCorridaController.window.title"), - Messagebox.OK, - Messagebox.INFORMATION); - busquedaCorridaController.refreshLista(); - closeWindow(); - }else{ - Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.NumCorrida"), - Labels.getLabel("editarConfiguracionCorridaController.window.title"), - Messagebox.OK, Messagebox.EXCLAMATION); - } - }else { - Messagebox.show(Labels.getLabel("MSG.Registro.Existe"), - Labels.getLabel("editarConfiguracionCorridaController.window.title"), - Messagebox.OK, - Messagebox.EXCLAMATION); - } - } - } else { - boolean podeSalvar = false; - if ((lsEC.isEmpty())) { - podeSalvar = true; - } else { - for (EsquemaCorrida ec : lsEC) { - if (ec.getEsquemacorridaId().equals(esquemaCorrida.getEsquemacorridaId())) { - podeSalvar = true; - } - } - } - if (podeSalvar) { - esquemaCorridaService.actualizacion(esquemaCorrida); - esquemaCorridaService.actualizaEsquemaTramo(lsParadaEsquema, esquemaCorrida); - - - esquemaCorridaList.updateItem(esquemaCorrida); - - } else { - Messagebox.show(Labels.getLabel("MSG.Registro.Existe"), - Labels.getLabel("editarConfiguracionCorridaController.window.title"), - Messagebox.OK, - Messagebox.EXCLAMATION); - } - - // Atualiza todos os assentos se a corrida foi - // por bloque. - List lsEQ = esquemaCorridaService.buscar(esquemaCorrida); - for (EsquemaCorrida ec : lsEQ) { - - List lsEAsientoBorar = esquemaAsientoService.obtenerPorCorrida(ec); - List lsEAsientoNovo = esquemaAsientoService.obtenerPorCorrida(esquemaCorrida); - - for (EsquemaAsiento ea : lsEAsientoBorar) { - esquemaAsientoService.borrar(ea); - } - for (EsquemaAsiento ea : lsEAsientoNovo) { - EsquemaAsiento esquemaAsiento = new EsquemaAsiento(); - esquemaAsiento.setActivo(ea.getActivo()); - esquemaAsiento.setEsquemaCorrida(ec); - esquemaAsiento.setIndvendible(ea.getIndvendible()); - esquemaAsiento.setNumasiento(ea.getNumasiento()); - esquemaAsiento.setParada(ea.getParada()); - esquemaAsiento.setUsuarioId(ea.getUsuarioId()); - - esquemaAsientoService.suscribir(esquemaAsiento); - } - } - - Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.suscribirOK"), - Labels.getLabel("editarConfiguracionCorridaController.window.title"), - Messagebox.OK, - Messagebox.INFORMATION); - - - closeWindow(); - } - } - } else { - Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.RutaSemTramos"), - Labels.getLabel("editarConfiguracionCorridaController.window.title"), - Messagebox.OK, Messagebox.EXCLAMATION); - } - } else { - Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.busquedaPeriodo"), - Labels.getLabel("editarConfiguracionCorridaController.window.title"), - Messagebox.OK, Messagebox.EXCLAMATION); - } - } else { - Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.RutaVazia"), - Labels.getLabel("editarConfiguracionCorridaController.window.title"), - Messagebox.OK, Messagebox.EXCLAMATION); - } - } catch (WrongValueException ex) { - throw (WrongValueException) ex; - } catch (Exception ex) { - log.error(ex); - Messagebox.show(Labels.getLabel("MSG.Error").concat(" - ").concat(ex.toString()), - Labels.getLabel("editarConfiguracionCorridaController.window.title"), - Messagebox.OK, Messagebox.ERROR); - } - } - - public void onClick$btnApagar(Event ev) { - try { - int resp = Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.borrarPergunta"), - Labels.getLabel("editarConfiguracionCorridaController.window.title"), - Messagebox.YES | Messagebox.NO, Messagebox.QUESTION); - - if (resp == Messagebox.YES) { - esquemaCorridaService.borrar(esquemaCorrida); - Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.borrarOK"), - Labels.getLabel("editarConfiguracionCorridaController.window.title"), - Messagebox.OK, Messagebox.INFORMATION); - - esquemaCorridaList.removeItem(esquemaCorrida); - - closeWindow(); - } - } catch (Exception ex) { - log.error(ex); - } - } - - public void onClick$btnAdicionarTramo(Event ev) { - try { - if (cmbTramo.getSelectedItem() != null) { - String plataforma = txtPlataforma.getValue(); - // Ruta Secuencia - lsEsquemaTramo = adicionarParadaEsquemaTramo(lsParadaEsquema, (Parada) cmbTramo.getSelectedItem().getValue(), esquemaCorrida, (Ruta) cmbRuta.getSelectedItem().getValue(), plataforma); - esquemaCorrida.setEsquemaTramoList(lsEsquemaTramo); - carregarParadaSecuencia(lsEsquemaTramo); - cmbTramo.setSelectedItem(null); - selecionarRutaSequenciaForaEsqCorrida(); - - txtPlataforma.setValue(""); - } - } catch (Exception e) { - log.error("ESQ CORRIDA - Erro ao adicionar tramo: " + e); - onClick$btnAdicionarTramo(null); - } - } - - /** - * Selecciona las paradas que no estan en la secuencia de la ruta - */ - private void selecionarRutaSequenciaForaEsqCorrida() { - if (lsTramosRutaEsquemaCorrida == null) { - lsTramosRutaEsquemaCorrida = new ArrayList(); - } - lsTramosRutaEsquemaCorrida.clear(); - - // Ruta Secuencia - Ruta ruta = esquemaCorrida.getRuta(); - ruta = rutaService.obtenerID(ruta.getRutaId()); - lsRutaSecuencia = rutaSecuenciaService.buscarSecuenciaOrdenado(ruta); - - // Selecciona solamente la secuencia de paradas de los tramos de la - // secuencia de la ruta - List lstPardasRuta = new ArrayList(); - for (RutaSecuencia rs : lsRutaSecuencia) { - Tramo tramoRS = rs.getTramo(); - lstPardasRuta.add(tramoRS.getOrigem()); - } - if (!lsRutaSecuencia.isEmpty()) { - lstPardasRuta.add(lsRutaSecuencia.get(lsRutaSecuencia.size() - 1).getTramo().getDestino()); - } - - // Selecciona solamente la secuencia de paradas de lo esquemTramo - List lstPardasTramos = new ArrayList(); - for (EsquemaTramo et : lsEsquemaTramo) { - if (et.getTramo() != null) { - Tramo tramoET = et.getTramo(); - lstPardasTramos.add(tramoET.getOrigem()); - } - } - - if (!lsEsquemaTramo.isEmpty()) { - lstPardasTramos.add(lsEsquemaTramo.get(lsEsquemaTramo.size() - 1).getTramo().getDestino()); - } - - if (lsTramos == null) { - lsTramos = new ArrayList(); - } - lsTramos.clear(); - - lsTramos.addAll(CollectionUtils.subtract(lstPardasRuta, lstPardasTramos)); - BindingListModelList listModelTramo = new BindingListModelList( - lsTramos, true); - cmbTramo.setModel(listModelTramo); - } - - private void selecionarRuta() { - // Ruta Secuencia - Comboitem ciRuta = cmbRuta.getSelectedItem(); - Ruta ruta = null; - if (ciRuta != null) { - ruta = (Ruta) ciRuta.getValue(); - } - - try { - if (ruta != null) { - ruta = rutaService.obtenerID(ruta.getRutaId()); - lsRutaSecuencia = rutaSecuenciaService.buscarSecuenciaOrdenado(ruta); - - lsEsquemaTramo = new ArrayList(); - esquemaTramoList.setData(lsParadaEsquema); - - for (RutaSecuencia rs : lsRutaSecuencia) { - EsquemaTramo et = new EsquemaTramo(); - et.setActivo(Boolean.TRUE); - et.setFecmodif(Calendar.getInstance().getTime()); - et.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - et.setNumsecuencia(rs.getNumsecuencia()); - et.setTramo(rs.getTramo()); - et.setEsquemaCorrida(esquemaCorrida); - - // Somente quando muda a seleção da Ruta. - lsEsquemaTramo.add(et); - } - - esquemaCorrida.setEsquemaTramoList(lsEsquemaTramo); - carregarParadaSecuencia(lsEsquemaTramo); - selecionarRutaSequenciaForaEsqCorrida(); - esquemaTramoList.setData(lsParadaEsquema); - } else { - Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.RutaVazia"), - Labels.getLabel("editarConfiguracionCorridaController.window.title"), - Messagebox.OK, Messagebox.EXCLAMATION); - } - } catch (Exception ex) { - log.error(ex); - } - } - - @SuppressWarnings({ "rawtypes", "unchecked" }) - private void verTempoEstanciaTramo(EsquemaTramo et, ParadaEsquema pe, Short sequenciaSize) { - if(et == null){ - return; - } - - Map args = new HashMap(); - args.put("esquemaTramo", et); - args.put("paradaEsquema", pe); - args.put("esquemaTramoList", esquemaTramoList); - args.put("sequenciaSize", sequenciaSize); - - openWindow("/gui/esquema_operacional/tiempoEstanciaTramo.zul", - Labels.getLabel("editarCatalogoDeRutaController.lhTiempoEstancia"), args, MODAL); - } - - public void onChange$cmbRuta(Event ev) { - selecionarRuta(); - } - - public void onClick$btnRemoverTramo(Event ev) { - try { - ParadaEsquema pe = new ParadaEsquema(); - try { - pe = (ParadaEsquema) esquemaTramoList.getSelected(); - } catch (Exception e) { - log.error("Erro ao aliminar ruta do esquemaTramo: " + e); - Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.selectItem"), - Labels.getLabel("editarConfiguracionCorridaController.window.title"), - Messagebox.OK, Messagebox.EXCLAMATION); - } - if (pe != null) { - boolean podeExcluir = false; - for (int i = 0; i < lsParadaEsquema.size(); i++) { - if (lsParadaEsquema.get(i).getParada().equals(pe.getParada())) { - if (i > 0 && i < lsParadaEsquema.size() - 1) {// condição - // para - // não - // poder - // remover - // o - // inicial - // nem o - // final - ParadaEsquema paradaEsquema = lsParadaEsquema.get(i); - lsParadaEsquema.remove(paradaEsquema); - - log.debug("Esquema Tramo Removida: " + lsParadaEsquema.get(i).getNumsecuencia() + " - " + lsParadaEsquema.get(i).getParada().getCveparada()); - - esquemaTramoList.setData(lsParadaEsquema); - // paradaEsquema.setActivo(Boolean.FALSE); - // lsParadaEsquema.add(paradaEsquema); - - podeExcluir = true; - - break; - } else if (i == 0 || i == lsParadaEsquema.size() - 1) { - Messagebox.show(Labels.getLabel("editarCatalogoDeRutaController.MSG.removerSecuencia"), - Labels.getLabel("editarConfiguracionCorridaController.window.title"), - Messagebox.OK, - Messagebox.EXCLAMATION); - } - } - } - - if (podeExcluir) { - String ok = esquemaTramoCorrecto(lsParadaEsquema); - if (ok != null) { - Messagebox.show(ok, - Labels.getLabel("editarConfiguracionCorridaController.window.title"), - Messagebox.OK, Messagebox.EXCLAMATION); - return; - } - } - } else { - Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.selectItem"), - Labels.getLabel("editarConfiguracionCorridaController.window.title"), - Messagebox.OK, Messagebox.EXCLAMATION); - } - lsEsquemaTramo = generaEsquemaTramoCorrecto(lsParadaEsquema, esquemaCorrida); - selecionarRutaSequenciaForaEsqCorrida(); - - } catch (Exception e) { - log.error("Erro ao remover secuencia da ruta " + e.getMessage()); - } - } - - /** - * Checo se el nuevo reajuste de secuencia quedo valido. O sea, checo se - * existe en tramo en la tabla ruta_combinacion - * - * @param lsParadaEsquema - * - La nueva lista de secuecia (ya con el cambio hecho) - * @return - True se esta correcto False se no esta correcto - */ - private String esquemaTramoCorrecto(List lsParadaEsquema) { - boolean hayTramo = true; - - Parada paradaOrigen = null; - Parada paradaDestino = null; - - for (int i = 0; (i < lsParadaEsquema.size() - 1) && hayTramo; i++) { - paradaOrigen = lsParadaEsquema.get(i).getParada(); - paradaDestino = lsParadaEsquema.get(i + 1).getParada(); - - Tramo t = rutaCombinacionService.busqueda((Ruta) cmbRuta.getSelectedItem().getValue(), paradaOrigen, paradaDestino); - - hayTramo = (t == null) ? false : true; - } - - return (hayTramo) ? null : "No existe el tramo: " - + paradaOrigen.getDescparada() + " - " - + paradaDestino.getDescparada(); - } - - /** - * Hago la combinacion correcta en esquemacorrida asi como esta en la lista - * de parada - * - * @param listParadaEsquema - * @param ec - */ - private List generaEsquemaTramoCorrecto( - List listParadaEsquema, EsquemaCorrida ec) { - List result = new ArrayList(); - - for (int i = 0; (i < listParadaEsquema.size() - 1); i++) { - Parada paradaOrigen = listParadaEsquema.get(i).getParada(); - Parada paradaDestino = listParadaEsquema.get(i + 1).getParada(); - - Tramo t = rutaCombinacionService.busqueda((Ruta) cmbRuta.getSelectedItem().getValue(), paradaOrigen, paradaDestino); - - EsquemaTramo et = new EsquemaTramo(); - et.setActivo(Boolean.TRUE); - et.setEsquemaCorrida(ec); - et.setFecmodif(Calendar.getInstance().getTime()); - et.setNumsecuencia((short) (i + 1)); - et.setTiempoEstancia(listParadaEsquema.get(i + 1).getTiempoEstancia()); - et.setTramo(t); - et.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - - result.add(et); - } - - return result; - } - - private List adicionarParadaEsquemaTramo( - List listParadaEsquema, Parada novaParada, - EsquemaCorrida ec, Ruta ruta, String plataforma) { - List result = new ArrayList(); - - lsRutaSecuencia = rutaSecuenciaService.buscarSecuenciaOrdenado(ruta); - - List listParadaEsquemaComNovaParada = new ArrayList(); - - Short secuencia = 0; - boolean nuevoAgregado = false; - boolean noExisteTramoAsociado = listParadaEsquema.isEmpty();// es la - // primera - // vez - Integer indiceSecuencia = null; - for (int i = 0; i < lsRutaSecuencia.size(); i++) { - RutaSecuencia rutaSecuencia = lsRutaSecuencia.get(i); - if (rutaSecuencia.getTramo().getOrigem().equals(novaParada)) { - ParadaEsquema paradaEsquema = new ParadaEsquema(); - paradaEsquema.setActivo(Boolean.TRUE); - secuencia++; - paradaEsquema.setNumsecuencia(secuencia); - paradaEsquema.setParada(novaParada); - paradaEsquema.setPlataforma(plataforma); - - listParadaEsquemaComNovaParada.add(paradaEsquema); - nuevoAgregado = true; - indiceSecuencia = i; - } else { - if (!listParadaEsquema.isEmpty()) { - if (rutaSecuencia.getTramo().getOrigem().equals(listParadaEsquema.get(0).getParada())) { - secuencia++; - listParadaEsquema.get(0).setNumsecuencia(secuencia); - listParadaEsquemaComNovaParada.add(listParadaEsquema.get(0)); - listParadaEsquema.remove(0); - - } - } - } - } - if (noExisteTramoAsociado) { - if (indiceSecuencia != null) { - if ((lsRutaSecuencia.size() - 1) > indiceSecuencia) { - RutaSecuencia rutaSecuencia = lsRutaSecuencia.get(indiceSecuencia); - ParadaEsquema paradaEsquema = new ParadaEsquema(); - paradaEsquema.setActivo(Boolean.TRUE); - secuencia++; - paradaEsquema.setNumsecuencia(secuencia); - paradaEsquema.setParada(rutaSecuencia.getTramo().getDestino()); - paradaEsquema.setPlataforma(plataforma); - - listParadaEsquemaComNovaParada.add(paradaEsquema); - } - } - } - if (!nuevoAgregado) { - ParadaEsquema paradaEsquema = new ParadaEsquema(); - paradaEsquema.setActivo(Boolean.TRUE); - secuencia++; - paradaEsquema.setNumsecuencia(secuencia); - paradaEsquema.setParada(novaParada); - paradaEsquema.setPlataforma(plataforma); - - listParadaEsquemaComNovaParada.add(paradaEsquema); - } - if (!listParadaEsquema.isEmpty()) { - secuencia++; - listParadaEsquema.get(0).setNumsecuencia(secuencia); - listParadaEsquemaComNovaParada.add(listParadaEsquema.get(0)); - listParadaEsquema.remove(0); - } - - for (int i = 0; (i < listParadaEsquemaComNovaParada.size() - 1); i++) { - Parada paradaOrigen = listParadaEsquemaComNovaParada.get(i).getParada(); - Parada paradaDestino = listParadaEsquemaComNovaParada.get(i + 1).getParada(); - - Tramo t = rutaCombinacionService.busqueda((Ruta) cmbRuta.getSelectedItem().getValue(), paradaOrigen, paradaDestino); - - EsquemaTramo et = new EsquemaTramo(); - et.setActivo(Boolean.TRUE); - et.setEsquemaCorrida(ec); - et.setFecmodif(Calendar.getInstance().getTime()); - et.setNumsecuencia((short) (i + 1)); - et.setTiempoEstancia(listParadaEsquemaComNovaParada.get(i + 1).getTiempoEstancia()); - et.setTramo(t); - et.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - et.setPlataforma(plataforma); - - result.add(et); - } - - return result; - } - - public void onChange$cmbClase(InputEvent ev) { - - if (ev.isChangingBySelectBack()) { - return; - } - - llenarRutasPorClase(); - llenarMarcaPorClaseServicio(); - } - - private void llenarRutasPorClase() { - if (esquemaCorrida.getClaseServicio() == null) { - return; - } - lsRuta = rutaService.buscarPorClaseServicio(esquemaCorrida.getClaseServicio()); - BindingListModelList l = new BindingListModelList(lsRuta, true); - cmbRuta.setModel(l); - } - - private void llenarMarcaPorClaseServicio() { - if (esquemaCorrida.getClaseServicio() == null) { - return; - } - lsMarca = marcaClaseServicioService.buscar(esquemaCorrida.getClaseServicio()); - BindingListModelList l = new BindingListModelList(lsMarca, true); - cmbMarca.setModel(l); - } - - public void onClick$porBloq(Event ev) { - horasalida.setVisible(false); - horasalidaLabel.setVisible(false); - minutos.setVisible(true); - minutosLabel1.setVisible(true); - minutosLabel2.setVisible(true); - de.setVisible(true); - horaLabel1.setVisible(true); - horaLabel2.setVisible(true); - hasta.setVisible(true); - horaLabel21.setVisible(true); - horaLabel22.setVisible(true); - } - - public void onClick$porHora(Event ev) { - horasalida.setVisible(true); - horasalidaLabel.setVisible(true); - minutos.setVisible(false); - minutosLabel1.setVisible(false); - minutosLabel2.setVisible(false); - de.setVisible(false); - horaLabel1.setVisible(false); - horaLabel2.setVisible(false); - hasta.setVisible(false); - horaLabel21.setVisible(false); - horaLabel22.setVisible(false); - } - - public void onClick$btnAsientos(Event ev) { - Map args = new HashMap(); - args.put("esquemaCorrida", esquemaCorrida); - - if (esquemaCorrida.getEsquemacorridaId() == null) { - List lsEsquemaAsiento = new ArrayList(); - args.put("lsEsquemaAsiento", lsEsquemaAsiento); - } else { - esquemaCorrida = esquemaCorridaService.obtenerID(esquemaCorrida.getEsquemacorridaId()); - List lsEsquemaAsiento = esquemaCorrida.getEsquemaAsientoList(); - args.put("lsEsquemaAsiento", lsEsquemaAsiento); - } - - openWindow( - "/gui/esquema_operacional/editarCorridaAsiento.zul", - Labels.getLabel("editarConfiguracionCorridaAsientoController.window.title"), - args, MODAL); - } - - public void onClick$chkDoblePiso(Event ev) { - if (chkDoblePiso.isChecked()) { - esquemaCorrida.setPisoExtra(Boolean.TRUE); - lbNumCorridaPisoExtra.setVisible(Boolean.TRUE); - txtNumCorridaPisoExtra.setVisible(Boolean.TRUE); - lbRolOperativoDoblePiso.setVisible(true); - lbClaseDoblePiso.setVisible(true); - cmbRolOperativoDoblePiso.setVisible(true); - cmbClaseDoblePiso.setVisible(true); - cmbRolOperativoDoblePiso.setConstraint("no empty"); - cmbClaseDoblePiso.setConstraint("no empty"); - } else { - esquemaCorrida.setPisoExtra(Boolean.FALSE); - esquemaCorrida.setClaseServicio2(null); - esquemaCorrida.setRolOperativo2(null); - lbNumCorridaPisoExtra.setVisible(Boolean.FALSE); - txtNumCorridaPisoExtra.setVisible(Boolean.FALSE); - lbRolOperativoDoblePiso.setVisible(false); - lbClaseDoblePiso.setVisible(false); - cmbRolOperativoDoblePiso.setVisible(false); - cmbClaseDoblePiso.setVisible(false); - cmbRolOperativoDoblePiso.setConstraint(""); - cmbClaseDoblePiso.setConstraint(""); - } - } - - public ClaseServicioService getClaseService() { - return claseService; - } - - public void setClaseService(ClaseServicioService claseService) { - this.claseService = claseService; - } - - public EsquemaCorridaService getEsquemaCorridaService() { - return esquemaCorridaService; - } - - public void setEsquemaCorridaService( - EsquemaCorridaService esquemaCorridaService) { - this.esquemaCorridaService = esquemaCorridaService; - } - - public EsquemaCorrida getEsquemaCorrida() { - return esquemaCorrida; - } - - public void setEsquemaCorrida(EsquemaCorrida esquemaCorrida) { - this.esquemaCorrida = esquemaCorrida; - } - - public MyListbox getEsquemaCorridaList() { - return esquemaCorridaList; - } - - public void setEsquemaCorridaList(MyListbox esquemaCorridaList) { - this.esquemaCorridaList = esquemaCorridaList; - } - - public List getLsClase() { - return lsClase; - } - - public void setLsClase(List lsClase) { - this.lsClase = lsClase; - } - - public List getLsMarca() { - return lsMarca; - } - - public void setLsMarca(List lsMarca) { - this.lsMarca = lsMarca; - } - - public List getLsRuta() { - return lsRuta; - } - - public void setLsRuta(List lsRuta) { - this.lsRuta = lsRuta; - } - - public MarcaService getMarcaService() { - return marcaService; - } - - public void setMarcaService(MarcaService marcaService) { - this.marcaService = marcaService; - } - - public RutaService getRutaService() { - return rutaService; - } - - public void setRutaService(RutaService rutaService) { - this.rutaService = rutaService; - } - - public Combobox getCmbClase() { - return cmbClase; - } - - public void setCmbClase(Combobox cmbClase) { - this.cmbClase = cmbClase; - } - - public Combobox getCmbMarca() { - return cmbMarca; - } - - public void setCmbMarca(Combobox cmbMarca) { - this.cmbMarca = cmbMarca; - } - - public Combobox getCmbRuta() { - return cmbRuta; - } - - public void setCmbRuta(Combobox cmbRuta) { - this.cmbRuta = cmbRuta; - } + private static final long serialVersionUID = 1L; + @Autowired + private EsquemaCorridaService esquemaCorridaService; + @Autowired + private EsquemaAsientoService esquemaAsientoService; + @Autowired + private EsquemaTramoService esquemaTramoService; + @Autowired + private MarcaService marcaService; + @Autowired + private ClaseServicioService claseService; + @Autowired + private RutaService rutaService; + @Autowired + private RutaCombinacionService rutaCombinacionService; + @Autowired + private RutaSecuenciaService rutaSecuenciaService; + @Autowired + private EmpresaService empresaService; + @Autowired + private MarcaClaseServicioService marcaClaseServicioService; + @Autowired + private RolOperativoService rolOperativoService; + @Autowired + private BusquedaCorridaController busquedaCorridaController; + private DivisionService divisionService; + private List lsDivision; + private List lsEmpresa; + private List lsMarca; + private List lsClase; + private List lsRuta; + private List lsRutaSecuencia; + private List lsEsquemaTramo; + private List lsRolOperativo; + private List lsTramosRutaEsquemaCorrida; + private List lsTramos; + private List lsParadaEsquema; + private Radio porBloq; + private Radio latente; + private Radio autorizada; + private Radio cancelada; + private Radio fletes; + private Radio viajesEspeciales; + private Radio transportePasajeros; + private Checkbox chkDoblePiso; + private EsquemaCorrida esquemaCorrida; + private MyListbox esquemaCorridaList; + private MyListbox esquemaTramoList; + private Datebox fecniciovigencia; + private Datebox fecfinvigencia; + private Intbox txtNumCorrida; + private Intbox txtNumCorridaPisoExtra; + private Combobox cmbClase; + private Combobox cmbClaseDoblePiso; + private Combobox cmbMarca; + private Combobox cmbRuta; + private Combobox cmbEmpresaCorrida; + private Combobox cmbEmpresaIngresso; + private Combobox cmbRolOperativo; + private Combobox cmbRolOperativoDoblePiso; + private Combobox cmbStatus; + private Combobox cmbVia; + private Combobox cmbTramo; + private Combobox cmbDivision; + private Button btnAsientos; + private Button btnAdicionarTramo; + private Button btnRemoverTramo; + private Timebox horasalida; + private Timebox de; + private Timebox hasta; + private Spinner minutos; + private Label horasalidaLabel; + private Label minutosLabel1; + private Label minutosLabel2; + private Label horaLabel1; + private Label horaLabel2; + private Label horaLabel21; + private Label horaLabel22; + private Label lbDivision; + private Label lbRolOperativoDoblePiso; + private Label lbClaseDoblePiso; + private Label lbNumCorridaPisoExtra; + private Button btnApagar; + private Textbox txtIdCorridaRebote; + private Textbox txtPlataforma; + private static Logger log = Logger.getLogger(EditarCorridaController.class); + private Button btnAbrirEsquemaCorrida; + + @Override + public void doAfterCompose(Component comp) throws Exception { + super.doAfterCompose(comp); + + + esquemaCorrida = (EsquemaCorrida) Executions.getCurrent().getArg().get("esquemaCorrida"); + esquemaCorridaList = (MyListbox) Executions.getCurrent().getArg().get("esquemaCorridaList"); + busquedaCorridaController = (BusquedaCorridaController) Executions.getCurrent().getArg().get("busquedaCorridaController"); + + lsParadaEsquema = new ArrayList(); + + lsEmpresa = empresaService.obtenerIndTipo1(); + lsClase = claseService.buscarTodosExceto(-1); + + lsRolOperativo = rolOperativoService.obtenerTodos(); + + + + if (esquemaCorrida.getEsquemacorridaId() == null) { + btnAdicionarTramo.setDisabled(true); + btnRemoverTramo.setDisabled(true); + } else { + // 01 - Não se pode mudar dados básicos da corrida. + // 02 - Segundo a Lety os campos CLASE, MARCA E EMPRESAS... + // Poderão ser editados pelo usuario. + // RUTA permanece inalterado. + cmbClase.setDisabled(Boolean.TRUE); + cmbMarca.setDisabled(Boolean.TRUE); + cmbRuta.setDisabled(Boolean.TRUE); + cmbEmpresaCorrida.setDisabled(Boolean.TRUE); + cmbEmpresaIngresso.setDisabled(Boolean.TRUE); + txtNumCorrida.setDisabled(Boolean.TRUE); + + + if (esquemaCorrida.getPisoExtra() != null && esquemaCorrida.getPisoExtra()) { + chkDoblePiso.setChecked(true); + lbRolOperativoDoblePiso.setVisible(true); + lbClaseDoblePiso.setVisible(true); + lbNumCorridaPisoExtra.setVisible(Boolean.TRUE); + txtNumCorridaPisoExtra.setVisible(Boolean.TRUE); + cmbRolOperativoDoblePiso.setVisible(true); + cmbClaseDoblePiso.setVisible(true); + cmbRolOperativoDoblePiso.setConstraint("no empty"); + cmbClaseDoblePiso.setConstraint("no empty"); + txtNumCorridaPisoExtra.setDisabled(Boolean.TRUE); + } + } + + // Llena los valores de los combos + llenarRutasPorClase(); + llenarMarcaPorClaseServicio(); + + esquemaTramoList.setItemRenderer(new RenderConfiguracionCorridaTramo()); + esquemaTramoList.addEventListener("onDoubleClick", new EventListener() { + + @Override + public void onEvent(Event event) throws Exception { + ParadaEsquema pe = (ParadaEsquema) esquemaTramoList.getSelected(); + EsquemaTramo esquemaTramo = null; + + + for (EsquemaTramo et : lsEsquemaTramo) { + Short numSec = et.getNumsecuencia(); + + if (numSec.equals(pe.getNumsecuencia())) { + esquemaTramo = et; + esquemaTramo.setPlataforma(pe.getPlataforma()); + } + //numSec++; + } + + + verTempoEstanciaTramo(esquemaTramo, pe, (short) esquemaTramoList.getItemCount()); + } + }); + + try { + lsEsquemaTramo = new ArrayList(); + + if (esquemaCorrida.getEsquemacorridaId() == null) { + EsquemaOperacional eo = new EsquemaOperacional(); + eo.setActivo(Boolean.TRUE); + eo.setFecmodif(Calendar.getInstance().getTime()); + eo.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + esquemaCorrida.setEsquemaOperacional(eo); + + // btnAsientos.setDisabled(true); + + transportePasajeros.setChecked(Boolean.TRUE); + } else { + esquemaCorridaService.obtenerID(esquemaCorrida.getEsquemacorridaId()); + + esquemaCorrida.getEsquemaOperacional(); + // Não mostra opção na edição da corrida + porBloq.setVisible(false); + + if (esquemaCorrida.getStatusCorrida() != null) { + if (esquemaCorrida.getStatusCorrida().equals("L")) { + latente.setChecked(true); + } else if (esquemaCorrida.getStatusCorrida().equals("A")) { + autorizada.setChecked(true); + } else { + cancelada.setChecked(true); + } + + if (esquemaCorrida.getTipocorrida().equals("F")) { + fletes.setChecked(true); + } else if (esquemaCorrida.getTipocorrida().equals("S")) { + viajesEspeciales.setChecked(true); + } else { + transportePasajeros.setChecked(true); + } + + } + lsEsquemaTramo = esquemaTramoService.obtenerPorEsquemaCorridaOrderNumSec(esquemaCorrida); + carregarParadaSecuencia(lsEsquemaTramo); + selecionarRutaSequenciaForaEsqCorrida(); + } + + fecniciovigencia.focus(); + + horasalida.setVisible(true); + horasalidaLabel.setVisible(true); + minutos.setVisible(false); + minutosLabel1.setVisible(false); + minutosLabel2.setVisible(false); + de.setVisible(false); + horaLabel1.setVisible(false); + horaLabel2.setVisible(false); + hasta.setVisible(false); + horaLabel21.setVisible(false); + horaLabel22.setVisible(false); + + if (esquemaCorrida.getEsquemacorridaId() == null) { + btnApagar.setVisible(Boolean.FALSE); + } + + if (esquemaCorrida.getEsquemaCorridaRebote() != null) { + txtIdCorridaRebote.setValue(esquemaCorrida.getEsquemaCorridaRebote().getEsquemacorridaId().toString()); + + } + + exibirDivision(); + + } catch (Exception ex) { + log.error("Error al editar una corrida", ex); + Messagebox.show(Labels.getLabel("MSG.Error"), + Labels.getLabel("editarConfiguracionCorridaController.window.title"), + Messagebox.OK, Messagebox.ERROR); + } + } + + private void exibirDivision() { + if (ApplicationProperties.getInstance().exibirDivisionConfiguracionCorrida()) { + + lsDivision = divisionService.obtenerTodos(); + + lbDivision.setVisible(Boolean.TRUE); + cmbDivision.setVisible(Boolean.TRUE); + + } + } + + private void addTramoPardaEsquema(Parada parada, Short numsecuencia, Date tiempoEstancia, String plataforma) { + ParadaEsquema ps = new ParadaEsquema(); + ps.setParada(parada); + ps.setNumsecuencia(numsecuencia); + ps.setTiempoEstancia(tiempoEstancia); + ps.setPlataforma(plataforma); + + lsParadaEsquema.add(ps); + } + + private void carregarParadaSecuencia(List lsEsquemaTramo) { + lsParadaEsquema.clear(); + if (!lsEsquemaTramo.isEmpty()) { + List lsEsquemaTramoTodos = new ArrayList(); + if (esquemaCorrida.getEsquemacorridaId() != null) { + lsEsquemaTramoTodos = esquemaTramoService.obtenerAtivosDesativosPorEsquemaCorrida(esquemaCorrida); + } + + Short numsecuencia = 0; + for (int i = 0; i < lsEsquemaTramo.size(); i++) { + + EsquemaTramo rs = lsEsquemaTramo.get(i); + + Tramo tramo = rs.getTramo(); + numsecuencia = rs.getNumsecuencia(); + Date tiempoEstancia = null; + + if ((i != 0) && (i != (lsEsquemaTramo.size()))) { + tiempoEstancia = lsEsquemaTramo.get(i).getTiempoEstancia(); + } + + Parada paradaOrigem = tramo.getOrigem(); + // So adicionar a parada se o EsquemaTramo estiver ativo. + if (rs.getActivo()) { + String plataforma = rs.getPlataforma(); + addTramoPardaEsquema(paradaOrigem, numsecuencia, tiempoEstancia, plataforma); + } + } + + EsquemaTramo esquemaTramoFinal = lsEsquemaTramo.get(lsEsquemaTramo.size() - 1); + + Parada paradaDestino = esquemaTramoFinal.getTramo().getDestino(); + Integer num = numsecuencia.intValue() + 1; + //String plataforma = esquemaTramoFinal.getPlataforma(); + + addTramoPardaEsquema(paradaDestino, num.shortValue(), null, null); + } + + esquemaTramoList.setData(lsParadaEsquema); + } + + public void onClick$btnSalvar(Event ev) throws InterruptedException { + Date dataDe = fecniciovigencia.getValue(); + Date dataAte = fecfinvigencia.getValue(); + txtNumCorrida.getValue(); + if (chkDoblePiso.isChecked()) { + txtNumCorridaPisoExtra.getValue(); + } + + try { + Comboitem ciRuta = cmbRuta.getSelectedItem(); + Ruta ruta = null; + if (ciRuta != null) { + ruta = (Ruta) ciRuta.getValue(); + } + + if (ruta != null) { + dataAte.setSeconds(59); + if (dataDe.before(dataAte)) { + if (!lsEsquemaTramo.isEmpty()) { + + if (esquemaCorrida.getClaseServicio() == null) { + Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.Clase"), + Labels.getLabel("editarConfiguracionCorridaController.window.title"), + Messagebox.OK, + Messagebox.EXCLAMATION); + } else if (esquemaCorrida.getMarca() == null) { + Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.Marca"), + Labels.getLabel("editarConfiguracionCorridaController.window.title"), + Messagebox.OK, + Messagebox.EXCLAMATION); + } else if (esquemaCorrida.getRuta() == null) { + Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.Ruta"), + Labels.getLabel("editarConfiguracionCorridaController.window.title"), + Messagebox.OK, + Messagebox.EXCLAMATION); + } else if (esquemaCorrida.getEmpresa() == null) { + Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.Empresa"), + Labels.getLabel("editarConfiguracionCorridaController.window.title"), + Messagebox.OK, + Messagebox.EXCLAMATION); + } else if (esquemaCorrida.getEmpresa1() == null) { + Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.Empresa1"), + Labels.getLabel("editarConfiguracionCorridaController.window.title"), + Messagebox.OK, + Messagebox.EXCLAMATION); + } else if (esquemaCorrida.getRolOperativo() == null) { + Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.Rol"), + Labels.getLabel("editarConfiguracionCorridaController.window.title"), + Messagebox.OK, + Messagebox.EXCLAMATION); + } else if (esquemaCorrida.getPisoExtra() != null && esquemaCorrida.getPisoExtra() && esquemaCorrida.getClaseServicio2() == null) { + Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.Clase2"), + Labels.getLabel("editarConfiguracionCorridaController.window.title"), + Messagebox.OK, + Messagebox.EXCLAMATION); + } else if (esquemaCorrida.getPisoExtra() != null && esquemaCorrida.getPisoExtra() && esquemaCorrida.getRolOperativo2() == null) { + Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.Rol2"), + Labels.getLabel("editarConfiguracionCorridaController.window.title"), + Messagebox.OK, + Messagebox.EXCLAMATION); + + } else { + + if (porBloq.isChecked()) { + de.getValue(); + hasta.getValue(); + minutos.getValue(); + } else { + horasalida.getValue(); + } + + esquemaCorrida.setNumCorrida(txtNumCorrida.getValue()); + esquemaCorrida.setActivo(Boolean.TRUE); + esquemaCorrida.setFecmodif(Calendar.getInstance().getTime()); + esquemaCorrida.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + + esquemaCorrida.setDiagramaAutobusId(esquemaCorrida.getRolOperativo().getDiagramaAutobus().getDiagramaautobusId().intValue()); + + if (latente.isChecked()) { + esquemaCorrida.setStatusCorrida("L"); + } else if (autorizada.isChecked()) { + esquemaCorrida.setStatusCorrida("A"); + } else { + esquemaCorrida.setStatusCorrida("C"); + } + + if (fletes.isChecked()) { + esquemaCorrida.setTipocorrida("F"); + } else if (viajesEspeciales.isChecked()) { + esquemaCorrida.setTipocorrida("S"); + } else if (transportePasajeros.isChecked()) { + esquemaCorrida.setTipocorrida("P"); + } + + // nao gravar segundos: + GregorianCalendar gHoraSalida = new GregorianCalendar(); + if (esquemaCorrida.getHorasalida() != null) { + gHoraSalida.setTime(esquemaCorrida.getHorasalida()); + gHoraSalida.set(Calendar.SECOND, 0); + gHoraSalida.set(Calendar.MILLISECOND, 0); + gHoraSalida.set(Calendar.MONTH, 01); + gHoraSalida.set(Calendar.DAY_OF_MONTH, 01); + gHoraSalida.set(Calendar.YEAR, 1970); + esquemaCorrida.setHorasalida(gHoraSalida.getTime()); + } + + // Pesquisa se existe por todos os campos, + // menos listas EsquemaAsiento e EsquemaTramo: + // List lsEC = + // esquemaCorridaService.buscar(); + + List lsEC = Collections.EMPTY_LIST; + // List lsEC = new + // ArrayList(); + + if (esquemaCorrida.getEsquemacorridaId() == null) { + Date agora = new Date(); + agora.setHours(00); + agora.setMinutes(00); + agora.setSeconds(00); + dataDe.setSeconds(01); + if (dataDe.before(agora)) { + Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.fecha"), + Labels.getLabel("editarConfiguracionCorridaController.window.title"), + Messagebox.OK, + Messagebox.EXCLAMATION); + } else { + if (lsEC.isEmpty()) { + Boolean existeNumCorrida = true; + if (chkDoblePiso.isChecked()) { + existeNumCorrida = esquemaCorridaService.buscarNumCorrida(esquemaCorrida.getNumCorrida(), esquemaCorrida.getNumCorridaPisoExtra()); + } else { + existeNumCorrida = esquemaCorridaService.buscarNumCorrida(esquemaCorrida.getNumCorrida(), 9999); + } + + if ((!existeNumCorrida) && !(esquemaCorrida.getNumCorrida().equals(esquemaCorrida.getNumCorridaPisoExtra()))) { + if (porBloq.isChecked()) { + Date des = de.getValue(); + Date has = hasta.getValue(); + has.setSeconds(1); + EsquemaOperacional eo = new EsquemaOperacional(); + Integer numCorrida = esquemaCorrida.getNumCorrida(); + while (des.before(has)) { + EsquemaCorrida ec = new EsquemaCorrida(); + eo.setActivo(Boolean.TRUE); + eo.setFecmodif(Calendar.getInstance().getTime()); + eo.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + + Date horaSalida = new Date(); + horaSalida.setHours(des.getHours()); + horaSalida.setMinutes(des.getMinutes()); + horaSalida.setSeconds(0); + + ec.setActivo(Boolean.TRUE); + ec.setFecmodif(Calendar.getInstance().getTime()); + ec.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + ec.setClaseServicio(esquemaCorrida.getClaseServicio()); + ec.setEmpresa(esquemaCorrida.getEmpresa()); + ec.setEmpresa1(esquemaCorrida.getEmpresa1()); + + eo.setFecniciovigencia(esquemaCorrida.getEsquemaOperacional().getFecniciovigencia()); + eo.setFecfinvigencia(esquemaCorrida.getEsquemaOperacional().getFecfinvigencia()); + + ec.setEsquemaOperacional(eo); + ec.setMarca(esquemaCorrida.getMarca()); + ec.setRolOperativo(esquemaCorrida.getRolOperativo()); + ec.setDiagramaAutobusId(esquemaCorrida.getRolOperativo().getDiagramaAutobus().getDiagramaautobusId().intValue()); + ec.setRuta(esquemaCorrida.getRuta()); + ec.setInddomingo(esquemaCorrida.getInddomingo()); + ec.setIndjueves(esquemaCorrida.getIndjueves()); + ec.setIndlunes(esquemaCorrida.getIndlunes()); + ec.setIndmartes(esquemaCorrida.getIndmartes()); + ec.setIndmiercoles(esquemaCorrida.getIndmiercoles()); + ec.setIndsabado(esquemaCorrida.getIndsabado()); + ec.setIndviernes(esquemaCorrida.getIndviernes()); + ec.setStatusCorrida(esquemaCorrida.getStatusCorrida()); + ec.setTipocorrida(esquemaCorrida.getTipocorrida()); + ec.setCantparados(esquemaCorrida.getCantparados()); + ec.setHorasalida(horaSalida); + + ec.setPisoExtra(esquemaCorrida.getPisoExtra()); + ec.setRolOperativo2(esquemaCorrida.getRolOperativo2()); + ec.setClaseServicio2(esquemaCorrida.getClaseServicio2()); + + // Salva + Boolean existeNumCorridaBloco = true; + while (existeNumCorridaBloco) { + existeNumCorridaBloco = esquemaCorridaService.buscarNumCorrida(numCorrida, 9999); + ec.setNumCorrida(numCorrida); + numCorrida = numCorrida + 1; + } + ec = esquemaCorridaService.suscribir(ec); + esquemaCorridaService.actualizaEsquemaTramo(lsParadaEsquema, ec); + + // Acrescenta Minutos na Hora + des.setMinutes(des.getMinutes() + minutos.getValue()); + } + } else { + EsquemaOperacional eo = esquemaCorrida.getEsquemaOperacional(); + eo.setFecniciovigencia(fecniciovigencia.getValue()); + eo.setFecfinvigencia(fecfinvigencia.getValue()); + esquemaCorrida.setEsquemaOperacional(eo); + esquemaCorridaService.suscribir(esquemaCorrida); + esquemaCorridaService.actualizaEsquemaTramo(lsParadaEsquema, esquemaCorrida); + } + Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.suscribirOK"), + Labels.getLabel("editarConfiguracionCorridaController.window.title"), + Messagebox.OK, + Messagebox.INFORMATION); + busquedaCorridaController.refreshLista(); + closeWindow(); + } else { + Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.NumCorrida"), + Labels.getLabel("editarConfiguracionCorridaController.window.title"), + Messagebox.OK, Messagebox.EXCLAMATION); + } + } else { + Messagebox.show(Labels.getLabel("MSG.Registro.Existe"), + Labels.getLabel("editarConfiguracionCorridaController.window.title"), + Messagebox.OK, + Messagebox.EXCLAMATION); + } + } + } else { + boolean podeSalvar = false; + if ((lsEC.isEmpty())) { + podeSalvar = true; + } else { + for (EsquemaCorrida ec : lsEC) { + if (ec.getEsquemacorridaId().equals(esquemaCorrida.getEsquemacorridaId())) { + podeSalvar = true; + } + } + } + if (podeSalvar) { + esquemaCorridaService.actualizacion(esquemaCorrida); + esquemaCorridaService.actualizaEsquemaTramo(lsParadaEsquema, esquemaCorrida); + + + esquemaCorridaList.updateItem(esquemaCorrida); + + } else { + Messagebox.show(Labels.getLabel("MSG.Registro.Existe"), + Labels.getLabel("editarConfiguracionCorridaController.window.title"), + Messagebox.OK, + Messagebox.EXCLAMATION); + } + + // Atualiza todos os assentos se a corrida foi + // por bloque. + List lsEQ = esquemaCorridaService.buscar(esquemaCorrida); + for (EsquemaCorrida ec : lsEQ) { + + List lsEAsientoBorar = esquemaAsientoService.obtenerPorCorrida(ec); + List lsEAsientoNovo = esquemaAsientoService.obtenerPorCorrida(esquemaCorrida); + + for (EsquemaAsiento ea : lsEAsientoBorar) { + esquemaAsientoService.borrar(ea); + } + for (EsquemaAsiento ea : lsEAsientoNovo) { + EsquemaAsiento esquemaAsiento = new EsquemaAsiento(); + esquemaAsiento.setActivo(ea.getActivo()); + esquemaAsiento.setEsquemaCorrida(ec); + esquemaAsiento.setIndvendible(ea.getIndvendible()); + esquemaAsiento.setNumasiento(ea.getNumasiento()); + esquemaAsiento.setParada(ea.getParada()); + esquemaAsiento.setUsuarioId(ea.getUsuarioId()); + + esquemaAsientoService.suscribir(esquemaAsiento); + } + } + + Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.suscribirOK"), + Labels.getLabel("editarConfiguracionCorridaController.window.title"), + Messagebox.OK, + Messagebox.INFORMATION); + + + closeWindow(); + } + } + } else { + Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.RutaSemTramos"), + Labels.getLabel("editarConfiguracionCorridaController.window.title"), + Messagebox.OK, Messagebox.EXCLAMATION); + } + } else { + Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.busquedaPeriodo"), + Labels.getLabel("editarConfiguracionCorridaController.window.title"), + Messagebox.OK, Messagebox.EXCLAMATION); + } + } else { + Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.RutaVazia"), + Labels.getLabel("editarConfiguracionCorridaController.window.title"), + Messagebox.OK, Messagebox.EXCLAMATION); + } + } catch (WrongValueException ex) { + throw (WrongValueException) ex; + } catch (Exception ex) { + log.error(ex); + Messagebox.show(Labels.getLabel("MSG.Error").concat(" - ").concat(ex.toString()), + Labels.getLabel("editarConfiguracionCorridaController.window.title"), + Messagebox.OK, Messagebox.ERROR); + } + } + + public void onClick$btnApagar(Event ev) { + try { + int resp = Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.borrarPergunta"), + Labels.getLabel("editarConfiguracionCorridaController.window.title"), + Messagebox.YES | Messagebox.NO, Messagebox.QUESTION); + + if (resp == Messagebox.YES) { + esquemaCorridaService.borrar(esquemaCorrida); + Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.borrarOK"), + Labels.getLabel("editarConfiguracionCorridaController.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + + esquemaCorridaList.removeItem(esquemaCorrida); + + closeWindow(); + } + } catch (Exception ex) { + log.error(ex); + } + } + + public void onClick$btnAdicionarTramo(Event ev) { + try { + if (cmbTramo.getSelectedItem() != null) { + String plataforma = txtPlataforma.getValue(); + // Ruta Secuencia + lsEsquemaTramo = adicionarParadaEsquemaTramo(lsParadaEsquema, (Parada) cmbTramo.getSelectedItem().getValue(), esquemaCorrida, (Ruta) cmbRuta.getSelectedItem().getValue(), plataforma); + esquemaCorrida.setEsquemaTramoList(lsEsquemaTramo); + carregarParadaSecuencia(lsEsquemaTramo); + cmbTramo.setSelectedItem(null); + selecionarRutaSequenciaForaEsqCorrida(); + + txtPlataforma.setValue(""); + } + } catch (Exception e) { + log.error("ESQ CORRIDA - Erro ao adicionar tramo: " + e); + onClick$btnAdicionarTramo(null); + } + } + + /** + * Selecciona las paradas que no estan en la secuencia de la ruta + */ + private void selecionarRutaSequenciaForaEsqCorrida() { + if (lsTramosRutaEsquemaCorrida == null) { + lsTramosRutaEsquemaCorrida = new ArrayList(); + } + lsTramosRutaEsquemaCorrida.clear(); + + // Ruta Secuencia + Ruta ruta = esquemaCorrida.getRuta(); + ruta = rutaService.obtenerID(ruta.getRutaId()); + lsRutaSecuencia = rutaSecuenciaService.buscarSecuenciaOrdenado(ruta); + + // Selecciona solamente la secuencia de paradas de los tramos de la + // secuencia de la ruta + List lstPardasRuta = new ArrayList(); + for (RutaSecuencia rs : lsRutaSecuencia) { + Tramo tramoRS = rs.getTramo(); + lstPardasRuta.add(tramoRS.getOrigem()); + } + if (!lsRutaSecuencia.isEmpty()) { + lstPardasRuta.add(lsRutaSecuencia.get(lsRutaSecuencia.size() - 1).getTramo().getDestino()); + } + + // Selecciona solamente la secuencia de paradas de lo esquemTramo + List lstPardasTramos = new ArrayList(); + for (EsquemaTramo et : lsEsquemaTramo) { + if (et.getTramo() != null) { + Tramo tramoET = et.getTramo(); + lstPardasTramos.add(tramoET.getOrigem()); + } + } + + if (!lsEsquemaTramo.isEmpty()) { + lstPardasTramos.add(lsEsquemaTramo.get(lsEsquemaTramo.size() - 1).getTramo().getDestino()); + } + + if (lsTramos == null) { + lsTramos = new ArrayList(); + } + lsTramos.clear(); + + lsTramos.addAll(CollectionUtils.subtract(lstPardasRuta, lstPardasTramos)); + BindingListModelList listModelTramo = new BindingListModelList( + lsTramos, true); + cmbTramo.setModel(listModelTramo); + } + + private void selecionarRuta() { + // Ruta Secuencia + Comboitem ciRuta = cmbRuta.getSelectedItem(); + Ruta ruta = null; + if (ciRuta != null) { + ruta = (Ruta) ciRuta.getValue(); + } + + try { + if (ruta != null) { + ruta = rutaService.obtenerID(ruta.getRutaId()); + lsRutaSecuencia = rutaSecuenciaService.buscarSecuenciaOrdenado(ruta); + + lsEsquemaTramo = new ArrayList(); + esquemaTramoList.setData(lsParadaEsquema); + + for (RutaSecuencia rs : lsRutaSecuencia) { + EsquemaTramo et = new EsquemaTramo(); + et.setActivo(Boolean.TRUE); + et.setFecmodif(Calendar.getInstance().getTime()); + et.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + et.setNumsecuencia(rs.getNumsecuencia()); + et.setTramo(rs.getTramo()); + et.setEsquemaCorrida(esquemaCorrida); + + // Somente quando muda a seleção da Ruta. + lsEsquemaTramo.add(et); + } + + esquemaCorrida.setEsquemaTramoList(lsEsquemaTramo); + carregarParadaSecuencia(lsEsquemaTramo); + selecionarRutaSequenciaForaEsqCorrida(); + esquemaTramoList.setData(lsParadaEsquema); + } else { + Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.RutaVazia"), + Labels.getLabel("editarConfiguracionCorridaController.window.title"), + Messagebox.OK, Messagebox.EXCLAMATION); + } + } catch (Exception ex) { + log.error(ex); + } + } + + @SuppressWarnings({"rawtypes", "unchecked"}) + private void verTempoEstanciaTramo(EsquemaTramo et, ParadaEsquema pe, Short sequenciaSize) { + if (et == null) { + return; + } + + Map args = new HashMap(); + args.put("esquemaTramo", et); + args.put("paradaEsquema", pe); + args.put("esquemaTramoList", esquemaTramoList); + args.put("sequenciaSize", sequenciaSize); + + openWindow("/gui/esquema_operacional/tiempoEstanciaTramo.zul", + Labels.getLabel("editarCatalogoDeRutaController.lhTiempoEstancia"), args, MODAL); + } + + public void onChange$cmbRuta(Event ev) { + selecionarRuta(); + } + + public void onClick$btnRemoverTramo(Event ev) { + try { + ParadaEsquema pe = new ParadaEsquema(); + try { + pe = (ParadaEsquema) esquemaTramoList.getSelected(); + } catch (Exception e) { + log.error("Erro ao aliminar ruta do esquemaTramo: " + e); + Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.selectItem"), + Labels.getLabel("editarConfiguracionCorridaController.window.title"), + Messagebox.OK, Messagebox.EXCLAMATION); + } + if (pe != null) { + boolean podeExcluir = false; + for (int i = 0; i < lsParadaEsquema.size(); i++) { + if (lsParadaEsquema.get(i).getParada().equals(pe.getParada())) { + if (i > 0 && i < lsParadaEsquema.size() - 1) {// condi��o + // para + // n�o + // poder + // remover + // o + // inicial + // nem o + // final + ParadaEsquema paradaEsquema = lsParadaEsquema.get(i); + lsParadaEsquema.remove(paradaEsquema); + + log.debug("Esquema Tramo Removida: " + lsParadaEsquema.get(i).getNumsecuencia() + " - " + lsParadaEsquema.get(i).getParada().getCveparada()); + + esquemaTramoList.setData(lsParadaEsquema); + // paradaEsquema.setActivo(Boolean.FALSE); + // lsParadaEsquema.add(paradaEsquema); + + podeExcluir = true; + + break; + } else if (i == 0 || i == lsParadaEsquema.size() - 1) { + Messagebox.show(Labels.getLabel("editarCatalogoDeRutaController.MSG.removerSecuencia"), + Labels.getLabel("editarConfiguracionCorridaController.window.title"), + Messagebox.OK, + Messagebox.EXCLAMATION); + } + } + } + + if (podeExcluir) { + String ok = esquemaTramoCorrecto(lsParadaEsquema); + if (ok != null) { + Messagebox.show(ok, + Labels.getLabel("editarConfiguracionCorridaController.window.title"), + Messagebox.OK, Messagebox.EXCLAMATION); + return; + } + } + } else { + Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.selectItem"), + Labels.getLabel("editarConfiguracionCorridaController.window.title"), + Messagebox.OK, Messagebox.EXCLAMATION); + } + lsEsquemaTramo = generaEsquemaTramoCorrecto(lsParadaEsquema, esquemaCorrida); + selecionarRutaSequenciaForaEsqCorrida(); + + } catch (Exception e) { + log.error("Erro ao remover secuencia da ruta " + e.getMessage()); + } + } + + /** + * Checo se el nuevo reajuste de secuencia quedo valido. O sea, checo se + * existe en tramo en la tabla ruta_combinacion + * + * @param lsParadaEsquema + * - La nueva lista de secuecia (ya con el cambio hecho) + * @return - True se esta correcto False se no esta correcto + */ + private String esquemaTramoCorrecto(List lsParadaEsquema) { + boolean hayTramo = true; + + Parada paradaOrigen = null; + Parada paradaDestino = null; + + for (int i = 0; (i < lsParadaEsquema.size() - 1) && hayTramo; i++) { + paradaOrigen = lsParadaEsquema.get(i).getParada(); + paradaDestino = lsParadaEsquema.get(i + 1).getParada(); + + Tramo t = rutaCombinacionService.busqueda((Ruta) cmbRuta.getSelectedItem().getValue(), paradaOrigen, paradaDestino); + + hayTramo = (t == null) ? false : true; + } + + return (hayTramo) ? null : "No existe el tramo: " + + paradaOrigen.getDescparada() + " - " + + paradaDestino.getDescparada(); + } + + /** + * Hago la combinacion correcta en esquemacorrida asi como esta en la lista + * de parada + * + * @param listParadaEsquema + * @param ec + */ + private List generaEsquemaTramoCorrecto( + List listParadaEsquema, EsquemaCorrida ec) { + List result = new ArrayList(); + + for (int i = 0; (i < listParadaEsquema.size() - 1); i++) { + Parada paradaOrigen = listParadaEsquema.get(i).getParada(); + Parada paradaDestino = listParadaEsquema.get(i + 1).getParada(); + + Tramo t = rutaCombinacionService.busqueda((Ruta) cmbRuta.getSelectedItem().getValue(), paradaOrigen, paradaDestino); + + EsquemaTramo et = new EsquemaTramo(); + et.setActivo(Boolean.TRUE); + et.setEsquemaCorrida(ec); + et.setFecmodif(Calendar.getInstance().getTime()); + et.setNumsecuencia((short) (i + 1)); + et.setTiempoEstancia(listParadaEsquema.get(i + 1).getTiempoEstancia()); + et.setTramo(t); + et.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + + result.add(et); + } + + return result; + } + + private List adicionarParadaEsquemaTramo( + List listParadaEsquema, Parada novaParada, + EsquemaCorrida ec, Ruta ruta, String plataforma) { + List result = new ArrayList(); + + lsRutaSecuencia = rutaSecuenciaService.buscarSecuenciaOrdenado(ruta); + + List listParadaEsquemaComNovaParada = new ArrayList(); + + Short secuencia = 0; + boolean nuevoAgregado = false; + boolean noExisteTramoAsociado = listParadaEsquema.isEmpty();// es la + // primera + // vez + Integer indiceSecuencia = null; + for (int i = 0; i < lsRutaSecuencia.size(); i++) { + RutaSecuencia rutaSecuencia = lsRutaSecuencia.get(i); + if (rutaSecuencia.getTramo().getOrigem().equals(novaParada)) { + ParadaEsquema paradaEsquema = new ParadaEsquema(); + paradaEsquema.setActivo(Boolean.TRUE); + secuencia++; + paradaEsquema.setNumsecuencia(secuencia); + paradaEsquema.setParada(novaParada); + paradaEsquema.setPlataforma(plataforma); + + listParadaEsquemaComNovaParada.add(paradaEsquema); + nuevoAgregado = true; + indiceSecuencia = i; + } else { + if (!listParadaEsquema.isEmpty()) { + if (rutaSecuencia.getTramo().getOrigem().equals(listParadaEsquema.get(0).getParada())) { + secuencia++; + listParadaEsquema.get(0).setNumsecuencia(secuencia); + listParadaEsquemaComNovaParada.add(listParadaEsquema.get(0)); + listParadaEsquema.remove(0); + + } + } + } + } + if (noExisteTramoAsociado) { + if (indiceSecuencia != null) { + if ((lsRutaSecuencia.size() - 1) > indiceSecuencia) { + RutaSecuencia rutaSecuencia = lsRutaSecuencia.get(indiceSecuencia); + ParadaEsquema paradaEsquema = new ParadaEsquema(); + paradaEsquema.setActivo(Boolean.TRUE); + secuencia++; + paradaEsquema.setNumsecuencia(secuencia); + paradaEsquema.setParada(rutaSecuencia.getTramo().getDestino()); + paradaEsquema.setPlataforma(plataforma); + + listParadaEsquemaComNovaParada.add(paradaEsquema); + } + } + } + if (!nuevoAgregado) { + ParadaEsquema paradaEsquema = new ParadaEsquema(); + paradaEsquema.setActivo(Boolean.TRUE); + secuencia++; + paradaEsquema.setNumsecuencia(secuencia); + paradaEsquema.setParada(novaParada); + paradaEsquema.setPlataforma(plataforma); + + listParadaEsquemaComNovaParada.add(paradaEsquema); + } + if (!listParadaEsquema.isEmpty()) { + secuencia++; + listParadaEsquema.get(0).setNumsecuencia(secuencia); + listParadaEsquemaComNovaParada.add(listParadaEsquema.get(0)); + listParadaEsquema.remove(0); + } + + for (int i = 0; (i < listParadaEsquemaComNovaParada.size() - 1); i++) { + Parada paradaOrigen = listParadaEsquemaComNovaParada.get(i).getParada(); + Parada paradaDestino = listParadaEsquemaComNovaParada.get(i + 1).getParada(); + + Tramo t = rutaCombinacionService.busqueda((Ruta) cmbRuta.getSelectedItem().getValue(), paradaOrigen, paradaDestino); + + EsquemaTramo et = new EsquemaTramo(); + et.setActivo(Boolean.TRUE); + et.setEsquemaCorrida(ec); + et.setFecmodif(Calendar.getInstance().getTime()); + et.setNumsecuencia((short) (i + 1)); + et.setTiempoEstancia(listParadaEsquemaComNovaParada.get(i + 1).getTiempoEstancia()); + et.setTramo(t); + et.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + et.setPlataforma(plataforma); + + result.add(et); + } + + return result; + } + + public void onChange$cmbClase(InputEvent ev) { + + if (ev.isChangingBySelectBack()) { + return; + } + + llenarRutasPorClase(); + llenarMarcaPorClaseServicio(); + } + + private void llenarRutasPorClase() { + if (esquemaCorrida.getClaseServicio() == null) { + return; + } + lsRuta = rutaService.buscarPorClaseServicio(esquemaCorrida.getClaseServicio()); + BindingListModelList l = new BindingListModelList(lsRuta, true); + cmbRuta.setModel(l); + } + + private void llenarMarcaPorClaseServicio() { + if (esquemaCorrida.getClaseServicio() == null) { + return; + } + lsMarca = marcaClaseServicioService.buscar(esquemaCorrida.getClaseServicio()); + BindingListModelList l = new BindingListModelList(lsMarca, true); + cmbMarca.setModel(l); + } + + public void onClick$porBloq(Event ev) { + horasalida.setVisible(false); + horasalidaLabel.setVisible(false); + minutos.setVisible(true); + minutosLabel1.setVisible(true); + minutosLabel2.setVisible(true); + de.setVisible(true); + horaLabel1.setVisible(true); + horaLabel2.setVisible(true); + hasta.setVisible(true); + horaLabel21.setVisible(true); + horaLabel22.setVisible(true); + } + + public void onClick$porHora(Event ev) { + horasalida.setVisible(true); + horasalidaLabel.setVisible(true); + minutos.setVisible(false); + minutosLabel1.setVisible(false); + minutosLabel2.setVisible(false); + de.setVisible(false); + horaLabel1.setVisible(false); + horaLabel2.setVisible(false); + hasta.setVisible(false); + horaLabel21.setVisible(false); + horaLabel22.setVisible(false); + } + + public void onClick$btnAsientos(Event ev) { + Map args = new HashMap(); + args.put("esquemaCorrida", esquemaCorrida); + + if (esquemaCorrida.getEsquemacorridaId() == null) { + List lsEsquemaAsiento = new ArrayList(); + args.put("lsEsquemaAsiento", lsEsquemaAsiento); + } else { + esquemaCorrida = esquemaCorridaService.obtenerID(esquemaCorrida.getEsquemacorridaId()); + List lsEsquemaAsiento = esquemaCorrida.getEsquemaAsientoList(); + args.put("lsEsquemaAsiento", lsEsquemaAsiento); + } + + openWindow( + "/gui/esquema_operacional/editarCorridaAsiento.zul", + Labels.getLabel("editarConfiguracionCorridaAsientoController.window.title"), + args, MODAL); + } + + public void onClick$chkDoblePiso(Event ev) { + if (chkDoblePiso.isChecked()) { + esquemaCorrida.setPisoExtra(Boolean.TRUE); + lbNumCorridaPisoExtra.setVisible(Boolean.TRUE); + txtNumCorridaPisoExtra.setVisible(Boolean.TRUE); + lbRolOperativoDoblePiso.setVisible(true); + lbClaseDoblePiso.setVisible(true); + cmbRolOperativoDoblePiso.setVisible(true); + cmbClaseDoblePiso.setVisible(true); + cmbRolOperativoDoblePiso.setConstraint("no empty"); + cmbClaseDoblePiso.setConstraint("no empty"); + } else { + esquemaCorrida.setPisoExtra(Boolean.FALSE); + esquemaCorrida.setClaseServicio2(null); + esquemaCorrida.setRolOperativo2(null); + lbNumCorridaPisoExtra.setVisible(Boolean.FALSE); + txtNumCorridaPisoExtra.setVisible(Boolean.FALSE); + lbRolOperativoDoblePiso.setVisible(false); + lbClaseDoblePiso.setVisible(false); + cmbRolOperativoDoblePiso.setVisible(false); + cmbClaseDoblePiso.setVisible(false); + cmbRolOperativoDoblePiso.setConstraint(""); + cmbClaseDoblePiso.setConstraint(""); + } + } + + public ClaseServicioService getClaseService() { + return claseService; + } + + public void setClaseService(ClaseServicioService claseService) { + this.claseService = claseService; + } + + public EsquemaCorridaService getEsquemaCorridaService() { + return esquemaCorridaService; + } + + public void setEsquemaCorridaService( + EsquemaCorridaService esquemaCorridaService) { + this.esquemaCorridaService = esquemaCorridaService; + } + + public EsquemaCorrida getEsquemaCorrida() { + return esquemaCorrida; + } + + public void setEsquemaCorrida(EsquemaCorrida esquemaCorrida) { + this.esquemaCorrida = esquemaCorrida; + } + + public MyListbox getEsquemaCorridaList() { + return esquemaCorridaList; + } + + public void setEsquemaCorridaList(MyListbox esquemaCorridaList) { + this.esquemaCorridaList = esquemaCorridaList; + } + + public List getLsClase() { + return lsClase; + } + + public void setLsClase(List lsClase) { + this.lsClase = lsClase; + } + + public List getLsMarca() { + return lsMarca; + } + + public void setLsMarca(List lsMarca) { + this.lsMarca = lsMarca; + } + + public List getLsRuta() { + return lsRuta; + } + + public void setLsRuta(List lsRuta) { + this.lsRuta = lsRuta; + } + + public MarcaService getMarcaService() { + return marcaService; + } + + public void setMarcaService(MarcaService marcaService) { + this.marcaService = marcaService; + } + + public RutaService getRutaService() { + return rutaService; + } + + public void setRutaService(RutaService rutaService) { + this.rutaService = rutaService; + } + + public Combobox getCmbClase() { + return cmbClase; + } + + public void setCmbClase(Combobox cmbClase) { + this.cmbClase = cmbClase; + } + + public Combobox getCmbMarca() { + return cmbMarca; + } + + public void setCmbMarca(Combobox cmbMarca) { + this.cmbMarca = cmbMarca; + } + + public Combobox getCmbRuta() { + return cmbRuta; + } + + public void setCmbRuta(Combobox cmbRuta) { + this.cmbRuta = cmbRuta; + } - public Datebox getFecfinvigencia() { - return fecfinvigencia; - } + public Datebox getFecfinvigencia() { + return fecfinvigencia; + } - public void setFecfinvigencia(Datebox fecfinvigencia) { - this.fecfinvigencia = fecfinvigencia; - } + public void setFecfinvigencia(Datebox fecfinvigencia) { + this.fecfinvigencia = fecfinvigencia; + } - public Datebox getFecniciovigencia() { - return fecniciovigencia; - } + public Datebox getFecniciovigencia() { + return fecniciovigencia; + } - public void setFecniciovigencia(Datebox fecniciovigencia) { - this.fecniciovigencia = fecniciovigencia; - } + public void setFecniciovigencia(Datebox fecniciovigencia) { + this.fecniciovigencia = fecniciovigencia; + } - public Timebox getHora() { - return de; - } + public Timebox getHora() { + return de; + } - public void setHora(Timebox hora) { - this.de = hora; - } + public void setHora(Timebox hora) { + this.de = hora; + } - public Timebox getHora2() { - return hasta; - } + public Timebox getHora2() { + return hasta; + } - public void setHora2(Timebox hora2) { - this.hasta = hora2; - } + public void setHora2(Timebox hora2) { + this.hasta = hora2; + } - public Timebox getHorasalida() { - return horasalida; - } + public Timebox getHorasalida() { + return horasalida; + } - public void setHorasalida(Timebox horasalida) { - this.horasalida = horasalida; - } + public void setHorasalida(Timebox horasalida) { + this.horasalida = horasalida; + } - public Spinner getMinutos() { - return minutos; - } + public Spinner getMinutos() { + return minutos; + } - public void setMinutos(Spinner minutos) { - this.minutos = minutos; - } + public void setMinutos(Spinner minutos) { + this.minutos = minutos; + } - public Combobox getCmbEmpresaCorrida() { - return cmbEmpresaCorrida; - } + public Combobox getCmbEmpresaCorrida() { + return cmbEmpresaCorrida; + } - public void setCmbEmpresaCorrida(Combobox cmbEmpresaCorrida) { - this.cmbEmpresaCorrida = cmbEmpresaCorrida; - } + public void setCmbEmpresaCorrida(Combobox cmbEmpresaCorrida) { + this.cmbEmpresaCorrida = cmbEmpresaCorrida; + } - public Combobox getCmbEmpresaIngresso() { - return cmbEmpresaIngresso; - } + public Combobox getCmbEmpresaIngresso() { + return cmbEmpresaIngresso; + } - public void setCmbEmpresaIngresso(Combobox cmbEmpresaIngresso) { - this.cmbEmpresaIngresso = cmbEmpresaIngresso; - } + public void setCmbEmpresaIngresso(Combobox cmbEmpresaIngresso) { + this.cmbEmpresaIngresso = cmbEmpresaIngresso; + } - public Combobox getCmbRolOperativo() { - return cmbRolOperativo; - } + public Combobox getCmbRolOperativo() { + return cmbRolOperativo; + } - public void setCmbRolOperativo(Combobox cmbRolOperativo) { - this.cmbRolOperativo = cmbRolOperativo; - } + public void setCmbRolOperativo(Combobox cmbRolOperativo) { + this.cmbRolOperativo = cmbRolOperativo; + } - public Combobox getCmbStatus() { - return cmbStatus; - } + public Combobox getCmbStatus() { + return cmbStatus; + } - public void setCmbStatus(Combobox cmbStatus) { - this.cmbStatus = cmbStatus; - } + public void setCmbStatus(Combobox cmbStatus) { + this.cmbStatus = cmbStatus; + } - public EmpresaService getEmpresaService() { - return empresaService; - } + public EmpresaService getEmpresaService() { + return empresaService; + } - public void setEmpresaService(EmpresaService empresaService) { - this.empresaService = empresaService; - } + public void setEmpresaService(EmpresaService empresaService) { + this.empresaService = empresaService; + } - public List getLsEmpresa() { - return lsEmpresa; - } + public List getLsEmpresa() { + return lsEmpresa; + } - public void setLsEmpresa(List lsEmpresa) { - this.lsEmpresa = lsEmpresa; - } + public void setLsEmpresa(List lsEmpresa) { + this.lsEmpresa = lsEmpresa; + } - public List getLsRutaSecuencia() { - return lsRutaSecuencia; - } + public List getLsRutaSecuencia() { + return lsRutaSecuencia; + } - public void setLsRutaSecuencia(List lsRutaSecuencia) { - this.lsRutaSecuencia = lsRutaSecuencia; - } + public void setLsRutaSecuencia(List lsRutaSecuencia) { + this.lsRutaSecuencia = lsRutaSecuencia; + } - public MyListbox getRutaSecuenciaList() { - return esquemaTramoList; - } + public MyListbox getRutaSecuenciaList() { + return esquemaTramoList; + } - public void setRutaSecuenciaList(MyListbox rutaSecuenciaList) { - this.esquemaTramoList = rutaSecuenciaList; - } + public void setRutaSecuenciaList(MyListbox rutaSecuenciaList) { + this.esquemaTramoList = rutaSecuenciaList; + } - public List getLsRolOperativo() { - return lsRolOperativo; - } + public List getLsRolOperativo() { + return lsRolOperativo; + } - public void setLsRolOperativo(List lsRolOperativo) { - this.lsRolOperativo = lsRolOperativo; - } + public void setLsRolOperativo(List lsRolOperativo) { + this.lsRolOperativo = lsRolOperativo; + } - public RolOperativoService getRolOperativoService() { - return rolOperativoService; - } + public RolOperativoService getRolOperativoService() { + return rolOperativoService; + } - public void setRolOperativoService(RolOperativoService rolOperativoService) { - this.rolOperativoService = rolOperativoService; - } + public void setRolOperativoService(RolOperativoService rolOperativoService) { + this.rolOperativoService = rolOperativoService; + } - public Radio getAutorizada() { - return autorizada; - } + public Radio getAutorizada() { + return autorizada; + } - public void setAutorizada(Radio autorizada) { - this.autorizada = autorizada; - } + public void setAutorizada(Radio autorizada) { + this.autorizada = autorizada; + } - public Radio getCancelada() { - return cancelada; - } + public Radio getCancelada() { + return cancelada; + } - public void setCancelada(Radio cancelada) { - this.cancelada = cancelada; - } + public void setCancelada(Radio cancelada) { + this.cancelada = cancelada; + } - public Radio getLatente() { - return latente; - } + public Radio getLatente() { + return latente; + } - public void setLatente(Radio latente) { - this.latente = latente; - } + public void setLatente(Radio latente) { + this.latente = latente; + } - public Combobox getCmbVia() { - return cmbVia; - } + public Combobox getCmbVia() { + return cmbVia; + } - public void setCmbVia(Combobox cmbVia) { - this.cmbVia = cmbVia; - } + public void setCmbVia(Combobox cmbVia) { + this.cmbVia = cmbVia; + } - public Button getBtnAsientos() { - return btnAsientos; - } + public Button getBtnAsientos() { + return btnAsientos; + } - public void setBtnAsientos(Button btnAsientos) { - this.btnAsientos = btnAsientos; - } + public void setBtnAsientos(Button btnAsientos) { + this.btnAsientos = btnAsientos; + } - public Radio getFletes() { - return fletes; - } + public Radio getFletes() { + return fletes; + } - public void setFletes(Radio fletes) { - this.fletes = fletes; - } + public void setFletes(Radio fletes) { + this.fletes = fletes; + } - public Radio getTransportePasajeros() { - return transportePasajeros; - } + public Radio getTransportePasajeros() { + return transportePasajeros; + } - public void setTransportePasajeros(Radio transportePasajeros) { - this.transportePasajeros = transportePasajeros; - } + public void setTransportePasajeros(Radio transportePasajeros) { + this.transportePasajeros = transportePasajeros; + } - public Radio getViajesEspeciales() { - return viajesEspeciales; - } + public Radio getViajesEspeciales() { + return viajesEspeciales; + } - public void setViajesEspeciales(Radio viajesEspeciales) { - this.viajesEspeciales = viajesEspeciales; - } + public void setViajesEspeciales(Radio viajesEspeciales) { + this.viajesEspeciales = viajesEspeciales; + } - public Combobox getCmbTramo() { - return cmbTramo; - } + public Combobox getCmbTramo() { + return cmbTramo; + } - public void setCmbTramo(Combobox cmbTramo) { - this.cmbTramo = cmbTramo; - } + public void setCmbTramo(Combobox cmbTramo) { + this.cmbTramo = cmbTramo; + } - public Timebox getDe() { - return de; - } + public Timebox getDe() { + return de; + } - public void setDe(Timebox de) { - this.de = de; - } - - public MyListbox getEsquemaTramoList() { - return esquemaTramoList; - } + public void setDe(Timebox de) { + this.de = de; + } + + public MyListbox getEsquemaTramoList() { + return esquemaTramoList; + } - public void setEsquemaTramoList(MyListbox esquemaTramoList) { - this.esquemaTramoList = esquemaTramoList; - } + public void setEsquemaTramoList(MyListbox esquemaTramoList) { + this.esquemaTramoList = esquemaTramoList; + } - public EsquemaTramoService getEsquemaTramoService() { - return esquemaTramoService; - } + public EsquemaTramoService getEsquemaTramoService() { + return esquemaTramoService; + } - public void setEsquemaTramoService(EsquemaTramoService esquemaTramoService) { - this.esquemaTramoService = esquemaTramoService; - } + public void setEsquemaTramoService(EsquemaTramoService esquemaTramoService) { + this.esquemaTramoService = esquemaTramoService; + } - public Timebox getHasta() { - return hasta; - } + public Timebox getHasta() { + return hasta; + } - public void setHasta(Timebox hasta) { - this.hasta = hasta; - } + public void setHasta(Timebox hasta) { + this.hasta = hasta; + } - public List getLsEsquemaTramo() { - return lsEsquemaTramo; - } + public List getLsEsquemaTramo() { + return lsEsquemaTramo; + } - public void setLsEsquemaTramo(List lsEsquemaTramo) { - this.lsEsquemaTramo = lsEsquemaTramo; - } + public void setLsEsquemaTramo(List lsEsquemaTramo) { + this.lsEsquemaTramo = lsEsquemaTramo; + } - public List getLsTramos() { - return lsTramos; - } + public List getLsTramos() { + return lsTramos; + } - public void setLsTramos(List lsTramos) { - this.lsTramos = lsTramos; - } + public void setLsTramos(List lsTramos) { + this.lsTramos = lsTramos; + } - public List getLsDivision() { - return lsDivision; - } + public List getLsDivision() { + return lsDivision; + } - public void setLsDivision(List lsDivision) { - this.lsDivision = lsDivision; - } + public void setLsDivision(List lsDivision) { + this.lsDivision = lsDivision; + } - public Combobox getCmbDivision() { - return cmbDivision; - } + public Combobox getCmbDivision() { + return cmbDivision; + } - public void setCmbDivision(Combobox cmbDivision) { - this.cmbDivision = cmbDivision; - } + public void setCmbDivision(Combobox cmbDivision) { + this.cmbDivision = cmbDivision; + } - public Label getLbDivision() { - return lbDivision; - } + public Label getLbDivision() { + return lbDivision; + } - public void setLbDivision(Label lbDivision) { - this.lbDivision = lbDivision; - } + public void setLbDivision(Label lbDivision) { + this.lbDivision = lbDivision; + } - public List getLsTramosRutaEsquemaCorrida() { - return lsTramosRutaEsquemaCorrida; - } + public List getLsTramosRutaEsquemaCorrida() { + return lsTramosRutaEsquemaCorrida; + } - public void setLsTramosRutaEsquemaCorrida( - List lsTramosRutaEsquemaCorrida) { - this.lsTramosRutaEsquemaCorrida = lsTramosRutaEsquemaCorrida; - } + public void setLsTramosRutaEsquemaCorrida( + List lsTramosRutaEsquemaCorrida) { + this.lsTramosRutaEsquemaCorrida = lsTramosRutaEsquemaCorrida; + } - public Radio getPorBloq() { - return porBloq; - } + public Radio getPorBloq() { + return porBloq; + } - public void setPorBloq(Radio porBloq) { - this.porBloq = porBloq; - } + public void setPorBloq(Radio porBloq) { + this.porBloq = porBloq; + } - public Button getBtnApagar() { - return btnApagar; - } + public Button getBtnApagar() { + return btnApagar; + } - public void setBtnApagar(Button btnApagar) { - this.btnApagar = btnApagar; - } + public void setBtnApagar(Button btnApagar) { + this.btnApagar = btnApagar; + } - public void onClick$btnApagarRebote(Event e) throws InterruptedException { - esquemaCorrida.setEsquemaCorridaRebote(null); - txtIdCorridaRebote.setValue(""); - } + public void onClick$btnApagarRebote(Event e) throws InterruptedException { + esquemaCorrida.setEsquemaCorridaRebote(null); + txtIdCorridaRebote.setValue(""); + } - public void onClick$btnAbrirEsquemaCorrida(Event e) - throws InterruptedException { - if (esquemaCorrida.getEsquemaCorridaRebote() == null) { - Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.btnAbrirEsquemaCorrida.error"), - Labels.getLabel("editarConfiguracionCorridaController.window.title"), - Messagebox.OK, Messagebox.EXCLAMATION); + public void onClick$btnAbrirEsquemaCorrida(Event e) + throws InterruptedException { + if (esquemaCorrida.getEsquemaCorridaRebote() == null) { + Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.btnAbrirEsquemaCorrida.error"), + Labels.getLabel("editarConfiguracionCorridaController.window.title"), + Messagebox.OK, Messagebox.EXCLAMATION); - return; + return; - } + } - closeWindow(); + closeWindow(); - Map args = new HashMap(); + Map args = new HashMap(); - args.put("esquemaCorrida", esquemaCorrida.getEsquemaCorridaRebote()); - args.put("esquemaCorridaList", esquemaCorridaList); + args.put("esquemaCorrida", esquemaCorrida.getEsquemaCorridaRebote()); + args.put("esquemaCorridaList", esquemaCorridaList); - openWindow( - "/gui/esquema_operacional/editarCorrida.zul", - Labels.getLabel("editarConfiguracionCorridaController.window.title"), - args, MODAL); - } + openWindow( + "/gui/esquema_operacional/editarCorrida.zul", + Labels.getLabel("editarConfiguracionCorridaController.window.title"), + args, MODAL); + } - public void onClick$btnBuscarEsquemaCorrida(Event e) { - Map argss = new HashMap(); + public void onClick$btnBuscarEsquemaCorrida(Event e) { + Map argss = new HashMap(); - argss.put("esquemaCorrida", esquemaCorrida); - argss.put("txtIdCorridaRebote", txtIdCorridaRebote); + argss.put("esquemaCorrida", esquemaCorrida); + argss.put("txtIdCorridaRebote", txtIdCorridaRebote); - openWindow( - "/gui/esquema_operacional/busquedaCorridaRebote.zul", - Labels.getLabel("busquedaConfiguracionCorridaController.window.title"), - argss, MODAL); - } + openWindow( + "/gui/esquema_operacional/busquedaCorridaRebote.zul", + Labels.getLabel("busquedaConfiguracionCorridaController.window.title"), + argss, MODAL); + } }