bug#15157

dev:wilian
qua:

git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@96380 d1611594-4594-4d17-8e1d-87c2c4800839
master
wilian 2019-08-05 13:59:28 +00:00
parent 15b030f3b6
commit e6a8f3ab18
5 changed files with 275 additions and 1 deletions

View File

@ -13,9 +13,11 @@ import java.util.Collections;
import java.util.Comparator;
import java.util.Date;
import java.util.HashMap;
import java.util.HashSet;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.collections.Predicate;
@ -66,6 +68,7 @@ import com.rjconsultores.ventaboletos.entidad.RutaCaseta;
import com.rjconsultores.ventaboletos.entidad.RutaCombinacion;
import com.rjconsultores.ventaboletos.entidad.RutaEmbarqueDesembarque;
import com.rjconsultores.ventaboletos.entidad.RutaEmpresa;
import com.rjconsultores.ventaboletos.entidad.RutaIcmsExcepcion;
import com.rjconsultores.ventaboletos.entidad.RutaSecuencia;
import com.rjconsultores.ventaboletos.entidad.Tramo;
import com.rjconsultores.ventaboletos.entidad.TramoServicio;
@ -79,6 +82,7 @@ import com.rjconsultores.ventaboletos.service.OrgaoConcedenteService;
import com.rjconsultores.ventaboletos.service.RutaCombinacionService;
import com.rjconsultores.ventaboletos.service.RutaEmbarqueDesembarqueService;
import com.rjconsultores.ventaboletos.service.RutaEmpresaService;
import com.rjconsultores.ventaboletos.service.RutaIcmsExcepcionService;
import com.rjconsultores.ventaboletos.service.RutaSecuenciaService;
import com.rjconsultores.ventaboletos.service.RutaService;
import com.rjconsultores.ventaboletos.service.TramoService;
@ -87,6 +91,7 @@ import com.rjconsultores.ventaboletos.utilerias.DateUtil;
import com.rjconsultores.ventaboletos.utilerias.RegistroConDependenciaException;
import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado;
import com.rjconsultores.ventaboletos.vo.esquemaoperacional.RutaTramoVO;
import com.rjconsultores.ventaboletos.web.utilerias.MyComboboxParada;
import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer;
import com.rjconsultores.ventaboletos.web.utilerias.MyListbox;
import com.rjconsultores.ventaboletos.web.utilerias.MyTextbox;
@ -96,6 +101,7 @@ import com.rjconsultores.ventaboletos.web.utilerias.paginacion.PagedListWrapper;
import com.rjconsultores.ventaboletos.web.utilerias.render.RenderCatalogoDeRutasSecuencia;
import com.rjconsultores.ventaboletos.web.utilerias.render.RenderRutaEmbarqueDesembarque;
import com.rjconsultores.ventaboletos.web.utilerias.render.RenderRutaEmpresa;
import com.rjconsultores.ventaboletos.web.utilerias.render.RenderRutaIcmsExcepcion;
/**
*
@ -134,6 +140,8 @@ public class EditarCatalogoDeRutaController extends MyGenericForwardComposer
private CorridaService corridaService;
@Autowired
private RutaEmbarqueDesembarqueService rutaEmbarqueDesembarqueService;
@Autowired
private RutaIcmsExcepcionService rutaIcmsExcepcionService;
private Ruta ruta;
private MyListbox rutaList;
@ -188,6 +196,15 @@ public class EditarCatalogoDeRutaController extends MyGenericForwardComposer
private Boolean claseAlterada = Boolean.FALSE;
private Boolean embarque = Boolean.FALSE;
private Boolean desembarque = Boolean.FALSE;
private Combobox cmbParadaOrigenExcecao;
private Combobox cmbParadaDestinoExcecao;
private Checkbox chkIndTribTarifaExcecao;
private Checkbox chkIndTribTaxaEmbarqueExcecao;
private Checkbox chkIndTribPedagioExcecao;
private List<Parada> lsParadasExcecao;
private List<RutaIcmsExcepcion> lsRutaIcmsExcepcions;
private MyListbox rutaIcmsExcepcionsList;
private List<RutaCombinacion> lsRutacComb;
private List<RutaSecuencia> lsRutaSec;
@ -409,9 +426,17 @@ public class EditarCatalogoDeRutaController extends MyGenericForwardComposer
if (ruta.getRutaId() == null) {
btnApagar.setVisible(Boolean.FALSE);
}
lsRutaIcmsExcepcions = new ArrayList<RutaIcmsExcepcion>();
if(ruta.getLsRutaIcmsExcepcions() != null) {
lsRutaIcmsExcepcions = ruta.getLsRutaIcmsExcepcions();
}
rutaIcmsExcepcionsList.setItemRenderer(new RenderRutaIcmsExcepcion());
rutaIcmsExcepcionsList.setData(lsRutaIcmsExcepcions);
carregouCombinacao = false;
alterarBotaoRetomarCancelar();
carregarParadasRuta();
}
private void alterarBotaoRetomarCancelar() {
@ -1540,5 +1565,134 @@ public class EditarCatalogoDeRutaController extends MyGenericForwardComposer
public void setDesembarque(Boolean desembarque) {
this.desembarque = desembarque;
}
private void carregarParadasRuta() {
Set<Parada> lsParadas = new HashSet<Parada>(0);
if(ruta != null && ruta.getRutaCombinacionList() != null) {
for (RutaCombinacion rc : ruta.getRutaCombinacionList()) {
if(rc.getTramo() != null) {
lsParadas.add(rc.getTramo().getOrigem());
lsParadas.add(rc.getTramo().getDestino());
}
}
}
lsParadasExcecao = new ArrayList<Parada>(0);
lsParadasExcecao.addAll(lsParadas);
}
public List<Parada> getLsParadasExcecao() {
return lsParadasExcecao;
}
public List<RutaIcmsExcepcion> getLsRutaIcmsExcepcions() {
return lsRutaIcmsExcepcions;
}
public void onClick$btnAdicionarIcmsExcecao(Event ev) {
try {
if(!validarCamposIcmsExcecao()) {
return;
}
Parada origen = (Parada) cmbParadaOrigenExcecao.getSelectedItem().getValue();
Parada destino = (Parada) cmbParadaDestinoExcecao.getSelectedItem().getValue();
chkIndTribTarifaExcecao.getValue();
chkIndTribTaxaEmbarqueExcecao.getValue();
chkIndTribPedagioExcecao.getValue();
RutaIcmsExcepcion rutaIcmsExcepcion = new RutaIcmsExcepcion();
rutaIcmsExcepcion.setRuta(ruta);
rutaIcmsExcepcion.setOrigen(origen);
rutaIcmsExcepcion.setDestino(destino);
rutaIcmsExcepcion.setIndTribTarifa(chkIndTribTarifaExcecao.isChecked());
rutaIcmsExcepcion.setIndTribTaxaEmbarque(chkIndTribTaxaEmbarqueExcecao.isChecked());
rutaIcmsExcepcion.setIndTribPedagio(chkIndTribPedagioExcecao.isChecked());
rutaIcmsExcepcion.setActivo(Boolean.TRUE);
rutaIcmsExcepcion.setFecmodif(Calendar.getInstance().getTime());
rutaIcmsExcepcion.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId());
lsRutaIcmsExcepcions.add(rutaIcmsExcepcion);
ruta.setLsRutaIcmsExcepcions(lsRutaIcmsExcepcions);
rutaIcmsExcepcionsList.setData(lsRutaIcmsExcepcions);
} catch (Exception ex) {
log.error(ex.getMessage(), ex);
Clients.alert(Labels.getLabel("MSG.Error"),
Labels.getLabel("editarCatalogoDeRutaController.window.title"), Messagebox.ERROR);
}
}
private boolean validarCamposIcmsExcecao() throws InterruptedException {
if (ruta.getRutaId() == null && (ruta.getIsClone() != null && ruta.getIsClone())) {
Messagebox.show(Labels.getLabel("editarCatalogoDeRutaController.MSG.IncluirRutaImcsExcepcionCloneError"),
Labels.getLabel("editarCatalogoDeRutaController.window.title"),
Messagebox.OK, Messagebox.EXCLAMATION);
return false;
}
if(cmbParadaDestinoExcecao.getSelectedIndex() == -1 || cmbParadaOrigenExcecao.getSelectedIndex() == -1) {
Messagebox.show(Labels.getLabel("editarCatalogoDeRutaController.MSG.RutaImcsExcepcionOrigenDestinoNaoSelecionado"),
Labels.getLabel("editarCatalogoDeRutaController.window.title"),
Messagebox.OK, Messagebox.EXCLAMATION);
return false;
}
Parada origen = (Parada) cmbParadaOrigenExcecao.getSelectedItem().getValue();
Parada destino = (Parada) cmbParadaDestinoExcecao.getSelectedItem().getValue();
if(origen.equals(destino)) {
Messagebox.show(Labels.getLabel("editarCatalogoDeRutaController.MSG.RutaImcsExcepcionOrigenDestinoIguais"),
Labels.getLabel("editarCatalogoDeRutaController.window.title"),
Messagebox.OK, Messagebox.EXCLAMATION);
return false;
}
if(lsRutaIcmsExcepcions != null) {
for (RutaIcmsExcepcion rie: lsRutaIcmsExcepcions) {
if(rie.getDestino().equals(destino) && rie.getOrigen().equals(origen)) {
Messagebox.show(Labels.getLabel("editarCatalogoDeRutaController.MSG.RutaImcsExcepcionOrigenDestinoJaAdicionados"),
Labels.getLabel("editarCatalogoDeRutaController.window.title"),
Messagebox.OK, Messagebox.EXCLAMATION);
return false;
}
}
}
return true;
}
public void onClick$btnRemoverIcmsExcecao(Event ev) {
try {
if (ruta.getRutaId() == null && (ruta.getIsClone() != null && ruta.getIsClone())) {
Messagebox.show(Labels.getLabel("editarCatalogoDeRutaController.MSG.ExcluirRutaImcsExcepcionCloneError"),
Labels.getLabel("editarCatalogoDeRutaController.window.title"),
Messagebox.OK, Messagebox.EXCLAMATION);
return;
}
if(rutaIcmsExcepcionsList.getSelectedIndex() == -1) {
Messagebox.show(Labels.getLabel("editarCatalogoDeRutaController.MSG.RutaImcsExcepcionNaoSelecionado"),
Labels.getLabel("editarCatalogoDeRutaController.window.title"),
Messagebox.OK, Messagebox.EXCLAMATION);
return;
}
RutaIcmsExcepcion rutaIcmsExcepcion = (RutaIcmsExcepcion) rutaIcmsExcepcionsList.getSelected();
int idx = rutaIcmsExcepcionsList.getSelectedIndex();
if(rutaIcmsExcepcion.getRutaIcmsExcepcionId() != null) {
rutaIcmsExcepcionService.borrar(rutaIcmsExcepcion);
}
lsRutaIcmsExcepcions.remove(idx);
rutaIcmsExcepcionsList.setData(lsRutaIcmsExcepcions);
} catch (Exception ex) {
log.error(ex.getMessage(), ex);
Clients.alert(Labels.getLabel("MSG.Error"),
Labels.getLabel("editarCatalogoDeRutaController.window.title"), Messagebox.ERROR);
}
}
}

View File

@ -0,0 +1,32 @@
package com.rjconsultores.ventaboletos.web.utilerias.render;
import org.zkoss.util.resource.Labels;
import org.zkoss.zul.Listcell;
import org.zkoss.zul.Listitem;
import org.zkoss.zul.ListitemRenderer;
import com.rjconsultores.ventaboletos.entidad.RutaIcmsExcepcion;
public class RenderRutaIcmsExcepcion implements ListitemRenderer {
public void render(Listitem lstm, Object o) throws Exception {
RutaIcmsExcepcion rutaIcmsExcepcion = (RutaIcmsExcepcion) o;
Listcell lc = new Listcell(rutaIcmsExcepcion.getOrigen().getDescparada());
lc.setParent(lstm);
lc = new Listcell(rutaIcmsExcepcion.getDestino().getDescparada());
lc.setParent(lstm);
lc = new Listcell(rutaIcmsExcepcion.getIndTribTarifa() ? Labels.getLabel("MSG.SI") : Labels.getLabel("MSG.NO"));
lc.setParent(lstm);
lc = new Listcell(rutaIcmsExcepcion.getIndTribTaxaEmbarque() ? Labels.getLabel("MSG.SI") : Labels.getLabel("MSG.NO"));
lc.setParent(lstm);
lc = new Listcell(rutaIcmsExcepcion.getIndTribPedagio() ? Labels.getLabel("MSG.SI") : Labels.getLabel("MSG.NO"));
lc.setParent(lstm);
lstm.setAttribute("data", rutaIcmsExcepcion);
}
}

View File

@ -2396,6 +2396,7 @@ editarCatalogoDeRutaController.MSG.localidade = Parada inexistente
editarCatalogoDeRutaController.tabRuta.value = Linea
editarCatalogoDeRutaController.tabSecuencia.value = Secuencia
editarCatalogoDeRutaController.tabCombinacion.value = Combinación
editarCatalogoDeRutaController.tabIcmsExcecao.value = ICMS Excepciones
editarCatalogoDeRutaController.btnAddCombinacion.tooltiptext = Incluir
editarCatalogoDeRutaController.btnBorrarCombinacion.tooltiptext = Eliminar
editarCatalogoDeRutaController.btnGerarCombinacion.tooltiptext = Generar combinación
@ -2556,6 +2557,15 @@ editarTramosController.msg.coeficiente2ObligatorioDados = Informe todos los dato
editarTramosController.msg.coeficiente3ObligatorioDados = Informe todos los datos para el índice 3
editarTramosController.msg.coeficiente1Obligatorio = El índice 1 es obligatório
editarTramosController.msg.orgaoJahInformado=Ya está dado de alta índice para esta instituición y tipo de clase
editarTramosController.headerICMSComponenteTarifa.value=ICMS Tarifa
editarTramosController.headerICMSComponenteTaxaEmbarque.value=ICMS Tx. Emb.
editarTramosController.headerICMSComponentePedagio.value=ICMS Pedag.
editarCatalogoDeRutaController.MSG.IncluirRutaImcsExcepcionCloneError = Favor salvar a linha antes de adicionar uma exceção do ICMS.
editarCatalogoDeRutaController.MSG.ExcluirRutaImcsExcepcionCloneError = Favor salvar a linha antes de excluir uma exceção do ICMS.
editarCatalogoDeRutaController.MSG.RutaImcsExcepcionOrigenDestinoNaoSelecionado = Favor seleccionar el Origen y el Destino
editarCatalogoDeRutaController.MSG.RutaImcsExcepcionOrigenDestinoIguais = Origen y Destino son iguales
editarCatalogoDeRutaController.MSG.RutaImcsExcepcionOrigenDestinoJaAdicionados = Origen y Destino ya añadidos
editarCatalogoDeRutaController.MSG.RutaImcsExcepcionNaoSelecionado = Ningún registro fue seleccionado para exclusión
#Panatalla VentaBoletos Comissionistas
pantalla.VentaBoletosTDO.window.title = Grupo Senda - Comisionista onLine

View File

@ -2570,6 +2570,7 @@ editarCatalogoDeRutaController.MSG.localidade = Localidade inexistente.
editarCatalogoDeRutaController.tabRuta.value = Linha
editarCatalogoDeRutaController.tabSecuencia.value = Sequência
editarCatalogoDeRutaController.tabCombinacion.value = Combinação
editarCatalogoDeRutaController.tabIcmsExcecao.value = ICMS Exceções
editarCatalogoDeRutaController.btnAddCombinacion.tooltiptext = Incluir
editarCatalogoDeRutaController.btnBorrarCombinacion.tooltiptext = Eliminar
editarCatalogoDeRutaController.btnGerarCombinacion.tooltiptext = Gerar Combinação
@ -2625,10 +2626,16 @@ editarCatalogoDeRutaController.MSG.IncluirSequenciaRutaCloneError = Favor salvar
editarCatalogoDeRutaController.MSG.ExcluirSequenciaRutaCloneError = Favor salvar a linha antes de excluir uma sequência.
editarCatalogoDeRutaController.MSG.IncluirEmpresaRutaCloneError = Favor salvar a linha antes de adicionar uma nova empresa.
editarCatalogoDeRutaController.MSG.ExcluirEmpresaRutaCloneError = Favor salvar a linha antes de excluir uma empresa.
editarCatalogoDeRutaController.MSG.IncluirRutaImcsExcepcionCloneError = Favor salvar a linha antes de adicionar uma exceção do ICMS.
editarCatalogoDeRutaController.MSG.ExcluirRutaImcsExcepcionCloneError = Favor salvar a linha antes de excluir uma exceção do ICMS.
editarCatalogoDeRutaController.lbTipoPassagem.value = Tipo Passagem
editarCatalogoDeRutaController.rdSentado.value = Sentado
editarCatalogoDeRutaController.rdEmPe.value = Em Pé
editarCatalogoDeRutaController.rdAmbos.value = Ambos
editarCatalogoDeRutaController.MSG.RutaImcsExcepcionOrigenDestinoNaoSelecionado = Favor selecionar a Origem e o Destino
editarCatalogoDeRutaController.MSG.RutaImcsExcepcionOrigenDestinoIguais = Origem e Destino são iguais
editarCatalogoDeRutaController.MSG.RutaImcsExcepcionOrigenDestinoJaAdicionados = Origem e Destino já adicionados
editarCatalogoDeRutaController.MSG.RutaImcsExcepcionNaoSelecionado = Nenhum registro foi selecionado para exclusão
# A través da pantalla de Pesquisa
busquedaViaController.window.title = Via
@ -2740,6 +2747,9 @@ editarTramosController.msg.coeficiente2ObligatorioDados = Informe todos os dados
editarTramosController.msg.coeficiente3ObligatorioDados = Informe todos os dados para o coeficiente 3
editarTramosController.msg.coeficiente1Obligatorio = O coeficiente 1 é obrigatório
editarTramosController.msg.orgaoJahInformado=Já está cadastrado coeficiente para esse Órgão e Tipo de Classe
editarTramosController.headerICMSComponenteTarifa.value=ICMS Tarifa
editarTramosController.headerICMSComponenteTaxaEmbarque.value=ICMS Tx. Emb.
editarTramosController.headerICMSComponentePedagio.value=ICMS Pedag.
#Panatalla VentaBoletos Comissionistas
pantalla.VentaBoletosTDO.window.title = Grupo Senda - Comissionista onLine

View File

@ -44,6 +44,8 @@
label="${c:l('editarCatalogoDeRutaController.tabCombinacion.value')}" />
<tab id="tabEmbarqueDesembarque"
label="${c:l('editarConfiguracionCorridaController.lbEmbarqueDesembarque.value')}" />
<tab id="tabIcmsExcecao"
label="${c:l('editarCatalogoDeRutaController.tabIcmsExcecao.value')}" />
</tabs>
<tabpanels>
<!-- RUTA -->
@ -454,6 +456,72 @@
</listhead>
</listbox>
</tabpanel>
<tabpanel height="430px">
<grid fixedLayout="true">
<columns>
<column width="30%" />
<column width="70%" />
</columns>
<rows>
<row>
<label value="${c:l('editarTramosController.labelOrigen.value')}" />
<combobox id="cmbParadaOrigenExcecao"
mold="rounded" buttonVisible="true"
width="90%" model="@{winEditarRuta$composer.lsParadasExcecao}" />
</row>
<row>
<label value="${c:l('editarTramosController.labelDestino.value')}" />
<combobox id="cmbParadaDestinoExcecao"
mold="rounded" buttonVisible="true"
width="90%" model="@{winEditarRuta$composer.lsParadasExcecao}" />
</row>
<row>
<label
value="${c:l('editarTramosController.labelICMSComponente.value')}" />
<hbox spacing="100px" >
<vbox align="center" >
<label value="${c:l('editarTramosController.labelICMSComponenteTarifa.value')}" />
<checkbox id="chkIndTribTarifaExcecao" width="50px" />
</vbox>
<vbox align="center" >
<label value="${c:l('editarTramosController.labelICMSComponenteTaxaEmbarque.value')}" />
<checkbox id="chkIndTribTaxaEmbarqueExcecao" width="50px" />
</vbox>
<vbox align="center" >
<label value="${c:l('editarTramosController.labelICMSComponentePedagio.value')}" />
<checkbox id="chkIndTribPedagioExcecao" width="50px" />
</vbox>
</hbox>
</row>
<row spans="2">
<hbox>
<button id="btnAdicionarIcmsExcecao"
height="20" image="/gui/img/add.png" width="35px" />
<button id="btnRemoverIcmsExcecao"
height="20" image="/gui/img/remove.png" width="35px" />
</hbox>
</row>
</rows>
</grid>
<listbox id="rutaIcmsExcepcionsList"
use="com.rjconsultores.ventaboletos.web.utilerias.MyListbox"
height="425px">
<listhead sizable="true">
<listheader id="descOrigen" width="30%"
image="/gui/img/create_doc.gif"
label="${c:l('editarTramosController.labelOrigen.value')}" />
<listheader id="descDestino" width="30%"
image="/gui/img/create_doc.gif"
label="${c:l('editarTramosController.labelDestino.value')}" />
<listheader image="/gui/img/create_doc.gif"
label="${c:l('editarTramosController.headerICMSComponenteTarifa.value')}" />
<listheader image="/gui/img/create_doc.gif"
label="${c:l('editarTramosController.headerICMSComponenteTaxaEmbarque.value')}" />
<listheader image="/gui/img/create_doc.gif"
label="${c:l('editarTramosController.headerICMSComponentePedagio.value')}" />
</listhead>
</listbox>
</tabpanel>
</tabpanels>
</tabbox>
</window>