diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/EditarCorridaAsientoController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/EditarCorridaAsientoController.java index a311af5af..22497d0bd 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/EditarCorridaAsientoController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/EditarCorridaAsientoController.java @@ -233,19 +233,34 @@ public class EditarCorridaAsientoController extends MyGenericForwardComposer { } public void onClick$poltronaOcupada(){ - cmbDestino.setConstraint("no empty"); cmbDestino.setDisabled(false); txtMotivo.setDisabled(false); } - + private boolean hayAsientosValidos(){ + String asientos[] = txtAsiento.getValue().split(","); + + if (asientos.length == 0){ + return false; + } + boolean asientoValido = false; + + for(int i = 0 ; i<=asientos.length;i++){ + try{ + Integer.parseInt(asientos[i]); + asientoValido = true; + }catch(Throwable e){ + } + } + + return asientoValido; + } public void enviarPeticionAsientos(String tipoPeticion) throws InterruptedException{ try { - cmbOrigen.getValue(); - cmbDestino.getValue(); boolean salvo = true; + txtAsiento.setText((txtAsiento.getValue().endsWith(",")) ? txtAsiento.getValue() : txtAsiento.getValue().concat(",")); List todosAsientos = new ArrayList(); @@ -298,26 +313,11 @@ public class EditarCorridaAsientoController extends MyGenericForwardComposer { es.setFecmodif(Calendar.getInstance().getTime()); es.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); es.setNumasiento(asiento); + if(tipoPeticion.equals("ceder")){ es.setIndvendible(Boolean.TRUE); es.setParada((Parada) cmbOrigen.getSelectedItem().getValue()); }else if (tipoPeticion.equals("bloqueo")){ - if(txtMotivo.getText().trim().equals("")){ - Messagebox.show(Labels.getLabel("editarConfiguracionCorridaAsientoController.MSG.motivo"), - Labels.getLabel("editarConfiguracionCorridaAsientoController.window.title"), - Messagebox.OK, Messagebox.INFORMATION); - txtMotivo.setFocus(true); - return; - } - if(cmbOrigen.getSelectedIndex()>=cmbDestino.getSelectedIndex()){ - Messagebox.show(Labels.getLabel("editarConfiguracionCorridaAsientoController.MSG.tramo"), - Labels.getLabel("editarConfiguracionCorridaAsientoController.window.title"), - Messagebox.OK, Messagebox.INFORMATION); - - cmbOrigen.setFocus(true); - return; - } - es.setIndvendible(Boolean.FALSE); es.setParada((Parada) cmbOrigen.getSelectedItem().getValue()); es.setDestino((Parada)cmbDestino.getSelectedItem().getValue()); @@ -332,7 +332,7 @@ public class EditarCorridaAsientoController extends MyGenericForwardComposer { lsAsientos.add(es); } else { salvo = false; - Messagebox.show("Asiento " + asiento + " existe en el Registro.", + Messagebox.show("A poltrona " + asiento + " já está configurada.", Labels.getLabel("editarConfiguracionCorridaAsientoController.window.title"), Messagebox.OK, Messagebox.INFORMATION); @@ -340,7 +340,7 @@ public class EditarCorridaAsientoController extends MyGenericForwardComposer { } else { salvo = false; - Messagebox.show("Asiento " + asiento + " no vendible.", + Messagebox.show("A poltrona " + asiento + " não está disponível para venda.", Labels.getLabel("editarConfiguracionCorridaAsientoController.window.title"), Messagebox.OK, Messagebox.EXCLAMATION); } @@ -356,9 +356,6 @@ public class EditarCorridaAsientoController extends MyGenericForwardComposer { colorirAsientos(null); txtAsiento.setValue(""); txtMotivo.setText(""); - - //closeWindow(); - } catch (Exception ex) { log.error("Erro asiento:" + ex); txtAsiento.setValue(""); @@ -372,12 +369,55 @@ public class EditarCorridaAsientoController extends MyGenericForwardComposer { public void onClick$btnCeder(Event ev) throws InterruptedException { + if (!hayAsientosValidos()){ + txtAsiento.setValue(""); + + Messagebox.show(Labels.getLabel("editarConfiguracionCorridaAsientoController.MSG.invalido"), + Labels.getLabel("editarConfiguracionCorridaAsientoController.window.title"), + Messagebox.OK, Messagebox.ERROR); + + return; + } + + if (cmbOrigen.getSelectedItem() == null){ + Messagebox.show(Labels.getLabel("editarConfiguracionCorridaAsientoController.MSG.origenObligatoria"), + Labels.getLabel("editarConfiguracionCorridaAsientoController.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + cmbOrigen.setFocus(true); + + return; + } if(poltronaOcupada.isSelected()){ + if (cmbDestino.getSelectedItem() == null){ + Messagebox.show(Labels.getLabel("editarConfiguracionCorridaAsientoController.MSG.destinoObligatoria"), + Labels.getLabel("editarConfiguracionCorridaAsientoController.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + cmbDestino.setFocus(true); + + return; + } + if(txtMotivo.getText().trim().equals("")){ + Messagebox.show(Labels.getLabel("editarConfiguracionCorridaAsientoController.MSG.motivo"), + Labels.getLabel("editarConfiguracionCorridaAsientoController.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + txtMotivo.setFocus(true); + return; + } + + if(cmbOrigen.getSelectedIndex()>=cmbDestino.getSelectedIndex()){ + Messagebox.show(Labels.getLabel("editarConfiguracionCorridaAsientoController.MSG.tramo"), + Labels.getLabel("editarConfiguracionCorridaAsientoController.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + + cmbOrigen.setFocus(true); + return; + } + enviarPeticionAsientos("bloqueo"); - } + if(poltronaExclusiva.isSelected()){ enviarPeticionAsientos("ceder"); } diff --git a/web/WEB-INF/i3-label_pt_BR.label b/web/WEB-INF/i3-label_pt_BR.label index 0de75dfc1..f40f154fe 100644 --- a/web/WEB-INF/i3-label_pt_BR.label +++ b/web/WEB-INF/i3-label_pt_BR.label @@ -7,7 +7,7 @@ # . . = XXX #Versao do VentaBoleto: -versao = ADM_20130328_1RC134 +versao = ADM_20130329_1RC135 # MSG Defaut: MSG.CONSTRAINT.PORCENTAGEM = Os valores devem estar entre 0 e 100 @@ -1340,6 +1340,8 @@ editarConfiguracionCorridaAsientoController.MSG.help = (Ej: 1,2,3,4 o 1-4) editarConfiguracionCorridaAsientoController.MSG.invalido = Poltrona inválida editarConfiguracionCorridaAsientoController.MSG.motivo = Necessário informar o motivo editarConfiguracionCorridaAsientoController.MSG.tramo = Não é permitido bloqueo neste trecho +editarConfiguracionCorridaAsientoController.MSG.origenObligatoria = Informe a Origem +editarConfiguracionCorridaAsientoController.MSG.destinoObligatoria = Informe a Destino # Buesqueda de Tarifas Mínimas busquedaTarifasMinimasController.window.title = Tarifas Mínimas diff --git a/web/gui/esquema_operacional/editarCorridaAsiento.zul b/web/gui/esquema_operacional/editarCorridaAsiento.zul index a5ebc3df5..3db65a51e 100644 --- a/web/gui/esquema_operacional/editarCorridaAsiento.zul +++ b/web/gui/esquema_operacional/editarCorridaAsiento.zul @@ -210,7 +210,7 @@