wilian 2016-05-13 12:32:11 +00:00
parent 46dd336888
commit 3ced466a36
3 changed files with 116 additions and 1 deletions

View File

@ -44,6 +44,8 @@ import com.rjconsultores.ventaboletos.entidad.Empresa;
import com.rjconsultores.ventaboletos.entidad.Parada; import com.rjconsultores.ventaboletos.entidad.Parada;
import com.rjconsultores.ventaboletos.entidad.PuntoVenta; import com.rjconsultores.ventaboletos.entidad.PuntoVenta;
import com.rjconsultores.ventaboletos.entidad.Ruta; import com.rjconsultores.ventaboletos.entidad.Ruta;
import com.rjconsultores.ventaboletos.entidad.RutaEmpresa;
import com.rjconsultores.ventaboletos.entidad.RutaSecuencia;
import com.rjconsultores.ventaboletos.entidad.Usuario; import com.rjconsultores.ventaboletos.entidad.Usuario;
import com.rjconsultores.ventaboletos.service.ConvenioDetService; import com.rjconsultores.ventaboletos.service.ConvenioDetService;
import com.rjconsultores.ventaboletos.service.ConvenioService; import com.rjconsultores.ventaboletos.service.ConvenioService;
@ -528,6 +530,10 @@ public class EditarConvenioController extends MyGenericForwardComposer {
} else if (!isDescontoNaoNormalValido(Boolean.TRUE)) { } else if (!isDescontoNaoNormalValido(Boolean.TRUE)) {
return; return;
} }
if(!validarCampos()) {
return;
}
convenio.setActivo(true); convenio.setActivo(true);
convenio.setFecmodif(Calendar.getInstance().getTime()); convenio.setFecmodif(Calendar.getInstance().getTime());
@ -595,7 +601,112 @@ public class EditarConvenioController extends MyGenericForwardComposer {
} }
} }
private Integer getTipoDesconto() { private boolean validarCampos() throws InterruptedException {
if(!verificarTrechosPertenceLinhas()) {
Messagebox.show(
Labels.getLabel("editarConvenioController.MSG.erro.trechosPertenceLinhas"),
Labels.getLabel("editarConvenioController.window.title"),
Messagebox.OK, Messagebox.EXCLAMATION);
return false;
}
if(!verificarLinhasPertenceEmpresas()) {
Messagebox.show(
Labels.getLabel("editarConvenioController.MSG.erro.linhasPertenceEmpresa"),
Labels.getLabel("editarConvenioController.window.title"),
Messagebox.OK, Messagebox.EXCLAMATION);
return false;
}
return true;
}
private boolean verificarTrechosPertenceLinhas() {
if(convenio.getConvenioTramoList() == null || convenio.getConvenioTramoList().isEmpty() ||
convenio.getConvenioRutaList() == null || convenio.getConvenioRutaList().isEmpty()) {
return true;
}
for (ConvenioTramo convenioTramo: convenio.getConvenioTramoList()) {
boolean origemEncontrado = false;
boolean destinoEncontrado = false;
Parada origem = convenioTramo.getParadaOrigem();
Parada destino = convenioTramo.getParadaDestino();
if(origem.getParadaId() == -1 && destino.getParadaId() == -1) {
continue;
}
verificandoRutaTrecho:
for (ConvenioRuta convenioRuta: convenio.getConvenioRutaList()) {
Ruta ruta = rutaService.obtenerID(convenioRuta.getRuta().getRutaId());
if(ruta.getRutaId() == -1) {
origemEncontrado = true;
destinoEncontrado = true;
continue;
}
for (RutaSecuencia rutaSecuencia: ruta.getRutaSecuenciaList()) {
Parada origemRuta = rutaSecuencia.getTramo().getOrigem();
Parada destinoRuta = rutaSecuencia.getTramo().getDestino();
if(origem.getParadaId() == -1 || origem.equals(origemRuta)) {
origemEncontrado = true;
}
if(destino.getParadaId() == -1 || destino.equals(destinoRuta)) {
destinoEncontrado = true;
}
if(origemEncontrado && destinoEncontrado) {
break verificandoRutaTrecho;
}
}
}
if(!(origemEncontrado && destinoEncontrado)) {
return origemEncontrado && destinoEncontrado;
}
}
return true;
}
private boolean verificarLinhasPertenceEmpresas() {
if(convenio.getConvenioEmpresaList() == null || convenio.getConvenioEmpresaList().isEmpty() ||
convenio.getConvenioRutaList() == null || convenio.getConvenioRutaList().isEmpty()) {
return true;
}
boolean conteem = false;
for (ConvenioEmpresa convenioEmpresa : convenio.getConvenioEmpresaList()) {
Empresa empresa = convenioEmpresa.getEmpresa();
verificandoRutaEmpresa:
for (ConvenioRuta convenioRuta: convenio.getConvenioRutaList()) {
Ruta ruta = rutaService.obtenerID(convenioRuta.getRuta().getRutaId());
if(ruta.getRutaId() == -1) {
conteem = true;
break verificandoRutaEmpresa;
}
for (RutaEmpresa rutaEmpresa: ruta.getLsRutaEmpresa()) {
if(empresa.getEmpresaId() == -1 || empresa.equals(rutaEmpresa.getEmpresa())) {
conteem = true;
break verificandoRutaEmpresa;
}
}
}
}
return conteem;
}
private Integer getTipoDesconto() {
if(rdNaoInformar.isChecked()) { if(rdNaoInformar.isChecked()) {
return ConstantesTipoDesconto.TIPO_DESCONTO_NAO_INFORMADO; return ConstantesTipoDesconto.TIPO_DESCONTO_NAO_INFORMADO;

View File

@ -3791,6 +3791,8 @@ editarConvenioController.tabPuntoVenta.puntoVenta.descricao.value = Descripción
editarConvenioController.lbTipoDesconto.value = Tipo de Descuento editarConvenioController.lbTipoDesconto.value = Tipo de Descuento
editarConvenioController.MSG.erroDescontoNaoNormal = Descuento no normal puede contener solamente un descuento en el listado editarConvenioController.MSG.erroDescontoNaoNormal = Descuento no normal puede contener solamente un descuento en el listado
editarConvenioController.MSG.infoQuantidade = Informe la cantidad editarConvenioController.MSG.infoQuantidade = Informe la cantidad
editarConvenioController.MSG.erro.trechosPertenceLinhas = Trechos informados não pertence as linhas
editarConvenioController.MSG.erro.linhasPertenceEmpresa = Linhas informadas não pertence as empresas
editarConvenioController.PorNumDocumento.value = Poner numero de descuento editarConvenioController.PorNumDocumento.value = Poner numero de descuento
editarConvenioController.PorQuantidade.value = Por Cantidad editarConvenioController.PorQuantidade.value = Por Cantidad

View File

@ -3855,6 +3855,8 @@ editarConvenioController.tabPuntoVenta.puntoVenta.descricao.value = Descrição
editarConvenioController.lbTipoDesconto.value = Tipo de Desconto editarConvenioController.lbTipoDesconto.value = Tipo de Desconto
editarConvenioController.MSG.erroDescontoNaoNormal = Desconto não normal pode conter apenas um documento na lista editarConvenioController.MSG.erroDescontoNaoNormal = Desconto não normal pode conter apenas um documento na lista
editarConvenioController.MSG.infoQuantidade = Informe a Quantidade editarConvenioController.MSG.infoQuantidade = Informe a Quantidade
editarConvenioController.MSG.erro.trechosPertenceLinhas = Trechos informados não pertence as linhas
editarConvenioController.MSG.erro.linhasPertenceEmpresa = Linhas informadas não pertence as empresas
editarConvenioController.PorNumDocumento.value = Por Número do Documento editarConvenioController.PorNumDocumento.value = Por Número do Documento
editarConvenioController.PorQuantidade.value = Por Quantidade editarConvenioController.PorQuantidade.value = Por Quantidade