fixes bug 6654
git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@48491 d1611594-4594-4d17-8e1d-87c2c4800839master
parent
1ead24798b
commit
44e77220a3
|
@ -6,10 +6,13 @@ package com.rjconsultores.ventaboletos.web.gui.controladores.configuracioneccome
|
|||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Calendar;
|
||||
import java.util.HashMap;
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
import org.apache.log4j.Logger;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
@ -26,7 +29,6 @@ import org.zkoss.zul.Checkbox;
|
|||
import org.zkoss.zul.Combobox;
|
||||
import org.zkoss.zul.Comboitem;
|
||||
import org.zkoss.zul.Decimalbox;
|
||||
import org.zkoss.zul.Hbox;
|
||||
import org.zkoss.zul.Intbox;
|
||||
import org.zkoss.zul.Label;
|
||||
import org.zkoss.zul.Radio;
|
||||
|
@ -599,6 +601,43 @@ public class EditarConfiguracionCategoriaController extends MyGenericForwardComp
|
|||
}
|
||||
}
|
||||
|
||||
private Boolean validarCampoAssentosReservados() throws InterruptedException{
|
||||
|
||||
//Verifica se o campo possui números separados por ponto e vírgula.
|
||||
//Não permite que outros caracteres sejam digitados.
|
||||
if (!asientosReservados.getValue().equals("") && !asientosReservados.getValue().toString().matches("(([1-9]([0-9])+;)|([1-9]([0-9])+)|([1-9];)|([1-9][1-9][1-9])|[1-9])+")){
|
||||
Messagebox.show(
|
||||
Labels.getLabel("editarConfiguracionCategoriaController.msg.validacaoAssentosReservadosPontoeVirgula"),
|
||||
Labels.getLabel("editarConfiguracionCategoriaController.window.title"),
|
||||
Messagebox.OK, Messagebox.ERROR);
|
||||
return false;
|
||||
}
|
||||
//Verifica se a quantidade de assentos reservados é menor que a quantidade de assentos autorizados.
|
||||
String assentosReservados[] = asientosReservados.getValue().toString().split(";");
|
||||
if(assentosReservados.length > cantAutorizada.getValue()){
|
||||
Messagebox.show(
|
||||
Labels.getLabel("editarConfiguracionCategoriaController.msg.validacaoAssentosReservados"),
|
||||
Labels.getLabel("editarConfiguracionCategoriaController.window.title"),
|
||||
Messagebox.OK, Messagebox.ERROR);
|
||||
return false;
|
||||
}
|
||||
|
||||
//Retira possíveis assentos em duplicidade utilizando Set
|
||||
if(!asientosReservados.getValue().equals("") && assentosReservados.length > 0){
|
||||
Set<String> assentosSemDuplicacao = new HashSet<String>();
|
||||
StringBuilder assentos = new StringBuilder();
|
||||
assentosSemDuplicacao.addAll(Arrays.asList(assentosReservados));
|
||||
assentosReservados = assentosSemDuplicacao.toArray(new String[assentosSemDuplicacao.size()]);
|
||||
for(String assento :assentosReservados){
|
||||
assentos.append(assento.trim()).append(";");
|
||||
}
|
||||
assentos.replace(assentos.length()-1, assentos.length(),"");
|
||||
asientosReservados.setValue(assentos.toString());
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
public void onClick$btnAdicionarDesconto(Event ev) throws InterruptedException {
|
||||
if (cmbCategorias.getSelectedItem() == null) {
|
||||
Messagebox.show(
|
||||
|
@ -639,6 +678,7 @@ public class EditarConfiguracionCategoriaController extends MyGenericForwardComp
|
|||
}
|
||||
|
||||
if (!existe) {
|
||||
if(validarCampoAssentosReservados()){
|
||||
CategoriaDescuento cDescuento = new CategoriaDescuento();
|
||||
cDescuento.setCategoriaCtrl(categoriaCtrl);
|
||||
cDescuento.setActivo(Boolean.TRUE);
|
||||
|
@ -698,6 +738,7 @@ public class EditarConfiguracionCategoriaController extends MyGenericForwardComp
|
|||
}
|
||||
onClick$rdVendaAntecipadaNo(null);
|
||||
rdVendaAntecipadaNo.setChecked(true);
|
||||
}
|
||||
} else {
|
||||
Messagebox.show(
|
||||
Labels.getLabel("MSG.Registro.Existe"),
|
||||
|
|
|
@ -5,6 +5,9 @@
|
|||
package com.rjconsultores.ventaboletos.web.gui.controladores.configuracioneccomerciales;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Arrays;
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
|
||||
import org.springframework.context.annotation.Scope;
|
||||
import org.springframework.stereotype.Controller;
|
||||
|
@ -17,6 +20,7 @@ import org.zkoss.zk.ui.event.Event;
|
|||
import org.zkoss.zul.Checkbox;
|
||||
import org.zkoss.zul.Combobox;
|
||||
import org.zkoss.zul.Comboitem;
|
||||
import org.zkoss.zul.Intbox;
|
||||
import org.zkoss.zul.Label;
|
||||
import org.zkoss.zul.Radio;
|
||||
import org.zkoss.zul.Row;
|
||||
|
@ -62,6 +66,8 @@ public class EditarConfiguracionCategoriaDatosCategoriaController extends MyGene
|
|||
private Radio radioNaoVentaSolamenteReserva;
|
||||
private Row linhaLiberarPoltronasQuandoOnibus;
|
||||
private Row linhaAssentosReservados;
|
||||
private Textbox asientosReservados;
|
||||
private Intbox cantAutorizada;
|
||||
|
||||
@Override
|
||||
public void doAfterCompose(Component comp) throws Exception {
|
||||
|
@ -132,9 +138,13 @@ public class EditarConfiguracionCategoriaDatosCategoriaController extends MyGene
|
|||
rdVendaAbertoNao.setChecked(true);
|
||||
}
|
||||
|
||||
if(categoriaDescuento.getIndCuota()== true){
|
||||
linhaLiberarPoltronasQuandoOnibus.setVisible(true);
|
||||
linhaAssentosReservados.setVisible(true);
|
||||
}else{
|
||||
linhaLiberarPoltronasQuandoOnibus.setVisible(false);
|
||||
linhaAssentosReservados.setVisible(false);
|
||||
|
||||
}
|
||||
}
|
||||
private void preencherDataHora(Integer tiempoMinutos){
|
||||
if (tiempoMinutos != null){
|
||||
|
@ -190,10 +200,52 @@ public class EditarConfiguracionCategoriaDatosCategoriaController extends MyGene
|
|||
categoriaDescuento.setTiempoCuota(timeTempoPermitir.getValue());
|
||||
}
|
||||
|
||||
if(!validarCampoAssentosReservados()){
|
||||
return;
|
||||
}
|
||||
|
||||
categoriaDescuento.setAsientosReservados(asientosReservados.getValue());
|
||||
|
||||
categoriaDescuentoList.updateItem(categoriaDescuento);
|
||||
this.closeWindow();
|
||||
}
|
||||
|
||||
private Boolean validarCampoAssentosReservados() throws InterruptedException{
|
||||
//Verifica se o campo possui números separados por ponto e vírgula.
|
||||
//Não permite que outros caracteres sejam digitados.
|
||||
if (!asientosReservados.getValue().equals("") && !asientosReservados.getValue().toString().matches("(([1-9]([0-9])+;)|([1-9]([0-9])+)|([1-9];)|([1-9][1-9][1-9])|[1-9])+")){
|
||||
Messagebox.show(
|
||||
Labels.getLabel("editarConfiguracionCategoriaController.msg.validacaoAssentosReservadosPontoeVirgula"),
|
||||
Labels.getLabel("editarConfiguracionCategoriaController.window.title"),
|
||||
Messagebox.OK, Messagebox.ERROR);
|
||||
return false;
|
||||
}
|
||||
//Verifica se a quantidade de assentos reservados é menor que a quantidade de assentos autorizados.
|
||||
String assentosReservados[] = asientosReservados.getValue().toString().split(";");
|
||||
if(assentosReservados.length > cantAutorizada.getValue()){
|
||||
Messagebox.show(
|
||||
Labels.getLabel("editarConfiguracionCategoriaController.msg.validacaoAssentosReservados"),
|
||||
Labels.getLabel("editarConfiguracionCategoriaController.window.title"),
|
||||
Messagebox.OK, Messagebox.ERROR);
|
||||
return false;
|
||||
}
|
||||
|
||||
//Retira possíveis assentos em duplicidade utilizando Set
|
||||
if(!asientosReservados.getValue().equals("") && assentosReservados.length > 0){
|
||||
Set<String> assentosSemDuplicacao = new HashSet<String>();
|
||||
StringBuilder assentos = new StringBuilder();
|
||||
assentosSemDuplicacao.addAll(Arrays.asList(assentosReservados));
|
||||
assentosReservados = assentosSemDuplicacao.toArray(new String[assentosSemDuplicacao.size()]);
|
||||
for(String assento :assentosReservados){
|
||||
assentos.append(assento.trim()).append(";");
|
||||
}
|
||||
assentos.replace(assentos.length()-1, assentos.length(),"");
|
||||
asientosReservados.setValue(assentos.toString());
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
public CategoriaDescuento getCategoriaDescuento() {
|
||||
return categoriaDescuento;
|
||||
}
|
||||
|
|
|
@ -1511,6 +1511,9 @@ editarConfiguracionCategoriaController.lblSimVentaSolamenteReserva.value = Si
|
|||
editarConfiguracionCategoriaController.lblNaoVentaSolamenteReserva.value = No
|
||||
editarConfiguracionCategoriaController.lblHeaderVentaSolamenteReserva.value = V. So. Reserva
|
||||
|
||||
editarConfiguracionCategoriaController.msg.validacaoAssentosReservados = O número de assentos reservados não pode ser maior que a quantidade autorizada
|
||||
editarConfiguracionCategoriaController.msg.validacaoAssentosReservadosPontoeVirgula = Digite assentos separados por ponto e virgula. Assentos não devem conter zeros à esquerda
|
||||
|
||||
# Detener a pantalla de Búsqueda
|
||||
busquedaCatalogoDeParadaController.window.title = Parada
|
||||
busquedaCatalogoDeParadaController.btnRefresh.tooltiptext = Actualizar
|
||||
|
|
|
@ -1550,6 +1550,9 @@ editarConfiguracionCategoriaController.lblSimVentaSolamenteReserva.value = Sim
|
|||
editarConfiguracionCategoriaController.lblNaoVentaSolamenteReserva.value = Não
|
||||
editarConfiguracionCategoriaController.lblHeaderVentaSolamenteReserva.value = V. So. Reserva
|
||||
|
||||
editarConfiguracionCategoriaController.msg.validacaoAssentosReservados = O número de assentos reservados não pode ser maior que a quantidade autorizada
|
||||
editarConfiguracionCategoriaController.msg.validacaoAssentosReservadosPontoeVirgula = Digite assentos separados por ponto e virgula. Assentos não devem conter zeros à esquerda
|
||||
|
||||
# Detener a pantalla de Pesquisa
|
||||
busquedaCatalogoDeParadaController.window.title = Localidade
|
||||
busquedaCatalogoDeParadaController.btnRefresh.tooltiptext = Atualizar
|
||||
|
|
Loading…
Reference in New Issue