fixed bug #7212 - Modificação massiva alias : adição novos filtros

git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@55030 d1611594-4594-4d17-8e1d-87c2c4800839
master
frederico 2016-04-18 17:22:34 +00:00
parent b910345312
commit 3d694acd8d
6 changed files with 350 additions and 94 deletions

View File

@ -32,17 +32,24 @@ import org.zkoss.zk.ui.Component;
import org.zkoss.zk.ui.event.Event;
import org.zkoss.zul.Combobox;
import org.zkoss.zul.Comboitem;
import org.zkoss.zul.Textbox;
import com.rjconsultores.ventaboletos.entidad.AliasServico;
import com.rjconsultores.ventaboletos.entidad.ClaseServicio;
import com.rjconsultores.ventaboletos.entidad.Empresa;
import com.rjconsultores.ventaboletos.entidad.OrgaoConcedente;
import com.rjconsultores.ventaboletos.entidad.Ruta;
import com.rjconsultores.ventaboletos.service.AliasServicoService;
import com.rjconsultores.ventaboletos.service.ClaseServicioService;
import com.rjconsultores.ventaboletos.service.OrgaoConcedenteService;
import com.rjconsultores.ventaboletos.service.RutaService;
import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado;
import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer;
import com.rjconsultores.ventaboletos.web.utilerias.MyListbox;
import com.rjconsultores.ventaboletos.web.utilerias.render.RenderCatalogoDeRutas;
import com.rjconsultores.ventaboletos.web.utilerias.render.RenderEmpresaModificacionMassivaTarifa;
import com.rjconsultores.ventaboletos.web.utilerias.render.RenderOrgaoConcendenteModificaoMassivaAlias;
import com.rjconsultores.ventaboletos.web.utilerias.render.RenderTipoClasse;
@Controller("modificacionMasivaTarifasAliasController")
@Scope("prototype")
@ -52,19 +59,33 @@ public class ModificacionMasivaTarifasAliasController extends MyGenericForwardCo
@Autowired
private RutaService rutaService;
@Autowired
private AliasServicoService aliasServicoService;
@Autowired
private ClaseServicioService claseServicioService;
@Autowired
private OrgaoConcedenteService orgaoConcedenteService;
private List<Empresa> lsEmpresas;
private List<Ruta> lsRutas;
private List<ClaseServicio> lsTipoClasse;
private List<OrgaoConcedente> lsOrgao;
private List<Empresa> lsAddRmvEmpresas;
private List<Ruta> lsAddRmvRutas;
private List<ClaseServicio> lsAddTipoClasse;
private List<OrgaoConcedente> lsAddOrgao;
private Combobox cmbEmpresa;
private Combobox cmbRuta;
private Combobox cmbTipoClasse;
private Combobox cmbOrgao;
private Textbox txtPrefixo;
private MyListbox empresaList;
private MyListbox rutaList;
private MyListbox tipoClasseList;
private MyListbox orgaoList;
private static Logger log = Logger.getLogger(ModificacionMasivaTarifasAliasController.class);
@ -84,18 +105,40 @@ public class ModificacionMasivaTarifasAliasController extends MyGenericForwardCo
this.lsRutas = lsRutas;
}
public List<ClaseServicio> getLsTipoClasse() {
return lsTipoClasse;
}
public void setLsTipoClasse(List<ClaseServicio> lsTipoClasse) {
this.lsTipoClasse = lsTipoClasse;
}
public List<OrgaoConcedente> getLsOrgao() {
return lsOrgao;
}
public void setLsOrgao(List<OrgaoConcedente> lsOrgao) {
this.lsOrgao = lsOrgao;
}
@Override
public void doAfterCompose(Component comp) throws Exception {
super.doAfterCompose(comp);
lsEmpresas = UsuarioLogado.getUsuarioLogado().getEmpresa();
lsRutas = rutaService.obtenerTodos();
lsTipoClasse = claseServicioService.obtenerTodos();
lsOrgao = orgaoConcedenteService.obtenerTodos();
empresaList.setItemRenderer(new RenderEmpresaModificacionMassivaTarifa());
rutaList.setItemRenderer(new RenderCatalogoDeRutas());
tipoClasseList.setItemRenderer(new RenderTipoClasse());
orgaoList.setItemRenderer(new RenderOrgaoConcendenteModificaoMassivaAlias());
lsAddRmvEmpresas = new ArrayList<Empresa>();
lsAddRmvRutas = new ArrayList<Ruta>();
lsAddTipoClasse = new ArrayList<ClaseServicio>();
lsAddOrgao = new ArrayList<OrgaoConcedente>();
}
public void onClick$btnGerarExcel(Event ev) {
@ -117,7 +160,7 @@ public class ModificacionMasivaTarifasAliasController extends MyGenericForwardCo
HSSFCellStyle estilo = wb.createCellStyle();
estilo.setFont(fonte);
List<AliasServico> lsAliasServico = aliasServicoService.buscarPorLinhaEmpresa(lsAddRmvRutas, lsAddRmvEmpresas);
List<AliasServico> lsAliasServico = aliasServicoService.buscarPorLinhaEmpresa(lsAddRmvRutas, lsAddRmvEmpresas,lsAddTipoClasse, lsAddOrgao, txtPrefixo.getValue());
if (!lsAliasServico.isEmpty()) {
@ -208,6 +251,49 @@ public class ModificacionMasivaTarifasAliasController extends MyGenericForwardCo
}
}
public void onClick$btnAdicionarTipoClasse(Event ev){
Comboitem cbiTipoClasse = cmbTipoClasse.getSelectedItem();
if (cbiTipoClasse != null) {
ClaseServicio tipoClasse = (ClaseServicio) cbiTipoClasse.getValue();
if (!lsAddTipoClasse.contains(tipoClasse)) {
lsAddTipoClasse.add(tipoClasse);
tipoClasseList.setData(lsAddTipoClasse);
}
cmbTipoClasse.setSelectedItem(null);
}
}
public void onClick$btnRemoverTipoClasse(Event ev) {
Ruta ruta = (Ruta) rutaList.getSelected();
if (ruta != null) {
lsAddRmvRutas.remove(ruta);
rutaList.setData(lsAddRmvRutas);
}
}
public void onClick$btnAdicionarOrgao(Event ev){
Comboitem cbiOrgao = cmbOrgao.getSelectedItem();
if (cbiOrgao != null) {
OrgaoConcedente orgao = (OrgaoConcedente) cbiOrgao.getValue();
if (!lsAddOrgao.contains(orgao)) {
lsAddOrgao.add(orgao);
orgaoList.setData(lsAddOrgao);
}
cmbOrgao.setSelectedItem(null);
}
}
public void onClick$btnRemoverOrgao(Event ev) {
OrgaoConcedente orgao = (OrgaoConcedente) orgaoList.getSelected();
if (orgao != null) {
lsAddOrgao.remove(orgao);
orgaoList.setData(lsAddOrgao);
}
}
private void gerarExcelSemAgrupamento(List<AliasServico> lsRutaCombinacion, HSSFWorkbook wb, HSSFCellStyle estilo, BigDecimal coeficiente){
HSSFSheet sheet1 = wb.createSheet("UTIL");

View File

@ -0,0 +1,22 @@
package com.rjconsultores.ventaboletos.web.utilerias.render;
import org.zkoss.zul.Listcell;
import org.zkoss.zul.Listitem;
import org.zkoss.zul.ListitemRenderer;
import com.rjconsultores.ventaboletos.entidad.OrgaoConcedente;
public class RenderOrgaoConcendenteModificaoMassivaAlias implements ListitemRenderer {
public void render(Listitem lstm, Object o) throws Exception {
OrgaoConcedente orgao = (OrgaoConcedente) o;
Listcell lc = new Listcell(orgao.getOrgaoConcedenteId().toString());
lc.setParent(lstm);
lc = new Listcell(orgao.getDescOrgao());
lc.setParent(lstm);
lstm.setAttribute("data", orgao);
}
}

View File

@ -0,0 +1,22 @@
package com.rjconsultores.ventaboletos.web.utilerias.render;
import org.zkoss.zul.Listcell;
import org.zkoss.zul.Listitem;
import org.zkoss.zul.ListitemRenderer;
import com.rjconsultores.ventaboletos.entidad.ClaseServicio;
public class RenderTipoClasse implements ListitemRenderer {
public void render(Listitem lstm, Object o) throws Exception {
ClaseServicio tipoClasse = (ClaseServicio) o;
Listcell lc = new Listcell(tipoClasse.getClaseservicioId().toString());
lc.setParent(lstm);
lc = new Listcell(tipoClasse.getDescclase());
lc.setParent(lstm);
lstm.setAttribute("data", tipoClasse);
}
}

View File

@ -2447,7 +2447,9 @@ modificacionMasivaAliasTarifasController.msg.registroSalvos = registro(s) proces
modificacionMasivaAliasTarifasController.msg.formatoInvalido = Formato deve ser '.xls' ou '.xlsx'.
modificacionMasivaAliasTarifasController.msg.planilhaInvalida = Planilha inválida: colunas não esperadas/faltando.
modificacionMasivaAliasTarifasController.erro.title = Erro
modificacionMasivaAliasTarifasController.lhTipoClasse.label = Tipo de Classe
modificacionMasivaAliasTarifasController.lhOrgao.label = Orgão Concendente
modificacionMasivaAliasTarifasController.lhPrefixo.label = Prefixo
#Geracion de Servicio
geracionCorridaController.window.title = Generación de corridas
@ -2691,6 +2693,7 @@ editarPricingController.formaPago.value = Forma de Pago
editarPricingController.cmbIndGeneraFeriadoFechaVenta.value = Aplica feriado fecha venta
editarPricingController.cmbIndGeneraFeriadoFechaViaje.value = Aplica feriado fecha viaje
editarPricingFormapagoController.lblIndexcepcion = Se Excluye
copiarPricingEspecificoController.window.title = Copiar Pricing Específico
editarPricingAutomaticoController.columnaDia.label = Número de días
editarPricingAutomaticoController.columnaPorcentaje.label = Porcentaje

View File

@ -2493,6 +2493,9 @@ modificacionMasivaAliasTarifasController.msg.registroSalvos = registro(s) proces
modificacionMasivaAliasTarifasController.msg.formatoInvalido = Formato deve ser '.xls' ou '.xlsx'.
modificacionMasivaAliasTarifasController.msg.planilhaInvalida = Planilha inválida: colunas não esperadas/faltando.
modificacionMasivaAliasTarifasController.erro.title = Erro
modificacionMasivaAliasTarifasController.lhTipoClasse.label = Tipo de Classe
modificacionMasivaAliasTarifasController.lhOrgao.label = Orgão Concendente
modificacionMasivaAliasTarifasController.lhPrefixo.label = Prefixo
#Geracion de Serviço
geracionCorridaController.window.title = Geração de Serviços
@ -2752,6 +2755,7 @@ editarPricingController.formaPago.value = Forma de Pagamento
editarPricingController.cmbIndGeneraFeriadoFechaVenta.value = Aplica Feriado Data Venda
editarPricingController.cmbIndGeneraFeriadoFechaViaje.value = Aplica Feriado Data Viagem
editarPricingFormapagoController.lblIndexcepcion = Se Remove
copiarPricingEspecificoController.window.title = Copiar Pricing Específico
editarPricingAutomaticoController.columnaDia.label = Qtd. Dias
editarPricingAutomaticoController.columnaPorcentaje.label = Porcentagem

View File

@ -5,100 +5,219 @@
<?taglib uri="http://www.zkoss.org/dsp/web/core" prefix="c"?>
<zk xmlns="http://www.zkoss.org/2005/zul">
<window id="winModificacionMasivaTarifaAlias" border="normal"
apply="${modificacionMasivaTarifasAliasController}"
width="700px" height="410px" contentStyle="overflow:auto"
title="${c:l('editarTarifaController.window.title')}">
<toolbar>
<hbox spacing="5px" style="padding:1px" align="right">
<button id="btnGerarExcel"
label="${c:l('modificacionMasivaAliasTarifasController.btnGerarExcel.label')}"
tooltiptext="${c:l('modificacionMasivaAliasTarifasController.btnGerarExcel.tooltiptext')}"/>
<button id="btnUpLoadExcel"
label="${c:l('modificacionMasivaAliasTarifasController.btnUpLoadExcel.label')}"
tooltiptext="${c:l('modificacionMasivaTarifasController.btnUpLoadExcel.tooltiptext')}"/>
<button id="btnFechar" height="20" image="/gui/img/exit.png" width="35px"
onClick="winModificacionMasivaTarifaAlias.detach()"
tooltiptext="${c:l('editarTarifaController.btnFechar.tooltiptext')}"/>
</hbox>
</toolbar>
<window id="winModificacionMasivaTarifaAlias" border="normal"
apply="${modificacionMasivaTarifasAliasController}" width="700px"
height="410px" contentStyle="overflow:auto"
title="${c:l('editarTarifaController.window.title')}">
<toolbar>
<hbox spacing="5px" style="padding:1px" align="right">
<button id="btnGerarExcel"
label="${c:l('modificacionMasivaAliasTarifasController.btnGerarExcel.label')}"
tooltiptext="${c:l('modificacionMasivaAliasTarifasController.btnGerarExcel.tooltiptext')}" />
<button id="btnUpLoadExcel"
label="${c:l('modificacionMasivaAliasTarifasController.btnUpLoadExcel.label')}"
tooltiptext="${c:l('modificacionMasivaTarifasController.btnUpLoadExcel.tooltiptext')}" />
<button id="btnFechar" height="20"
image="/gui/img/exit.png" width="35px"
onClick="winModificacionMasivaTarifaAlias.detach()"
tooltiptext="${c:l('editarTarifaController.btnFechar.tooltiptext')}" />
</hbox>
</toolbar>
<tabbox>
<tabs>
<tab label="${c:l('busquedaTarifaController.lhEmpresa.label')}" />
<tab label="${c:l('busquedaTarifaController.lhRuta.label')}" />
</tabs>
<tabpanels>
<tabpanel height="300px">
<grid fixedLayout="true">
<columns>
<column width="20%" />
<column width="80%" />
</columns>
<rows>
<row>
<label value="${c:l('busquedaTarifaController.lhEmpresa.label')}"/>
<combobox id="cmbEmpresa" use="com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEstandar"
mold="rounded" buttonVisible="true" width="90%"
model="@{winModificacionMasivaTarifaAlias$composer.lsEmpresas}"/>
</row>
</rows>
</grid>
<grid fixedLayout="true">
<columns>
<column width="20%" />
</columns>
<rows>
<row>
<label
value="${c:l('modificacionMasivaAliasTarifasController.lhPrefixo.label')}" />
<textbox id="txtPrefixo" width="100px"
maxlength="20"
use="com.rjconsultores.ventaboletos.web.utilerias.MyTextbox" />
</row>
</rows>
</grid>
<toolbar>
<button id="btnAdicionarEmpresa" height="20" image="/gui/img/add.png" width="35px"/>
<button id="btnRemoverEmpresa" height="20" image="/gui/img/remove.png" width="35px"/>
</toolbar>
<tabbox>
<tabs>
<tab
label="${c:l('busquedaTarifaController.lhEmpresa.label')}" />
<tab
label="${c:l('busquedaTarifaController.lhRuta.label')}" />
<tab
label="${c:l('modificacionMasivaAliasTarifasController.lhTipoClasse.label')}" />
<tab
label="${c:l('modificacionMasivaAliasTarifasController.lhOrgao.label')}" />
</tabs>
<tabpanels>
<tabpanel height="300px">
<grid fixedLayout="true">
<columns>
<column width="20%" />
<column width="80%" />
</columns>
<rows>
<row>
<label
value="${c:l('busquedaTarifaController.lhEmpresa.label')}" />
<combobox id="cmbEmpresa"
use="com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEstandar"
mold="rounded" buttonVisible="true" width="90%"
model="@{winModificacionMasivaTarifaAlias$composer.lsEmpresas}" />
</row>
</rows>
</grid>
<listbox id="empresaList" use="com.rjconsultores.ventaboletos.web.utilerias.MyListbox"
multiple="false">
<listhead sizable="true">
<listheader width="45px" image="/gui/img/builder.gif"
label="${c:l('busquedaEmpresaController.lhId.label')}"
sort="auto(empresaId)"/>
<listheader image="/gui/img/create_doc.gif"
label="${c:l('busquedaEmpresaController.lhDesc.label')}"
sort="auto(nombempresa)"/>
</listhead>
</listbox>
</tabpanel>
<tabpanel height="300px">
<grid fixedLayout="true">
<columns>
<column width="20%" />
<column width="80%" />
</columns>
<rows>
<row>
<label value="${c:l('busquedaTarifaController.lhRuta.label')}"/>
<combobox id="cmbRuta" use="com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEstandar"
mold="rounded" buttonVisible="true" width="90%"
model="@{winModificacionMasivaTarifaAlias$composer.lsRutas}"/>
</row>
</rows>
</grid>
<toolbar>
<button id="btnAdicionarEmpresa" height="20"
image="/gui/img/add.png" width="35px" />
<button id="btnRemoverEmpresa" height="20"
image="/gui/img/remove.png" width="35px" />
</toolbar>
<toolbar>
<button id="btnAdicionarRuta" height="20" image="/gui/img/add.png" width="35px"/>
<button id="btnRemoverRuta" height="20" image="/gui/img/remove.png" width="35px"/>
</toolbar>
<listbox id="empresaList"
use="com.rjconsultores.ventaboletos.web.utilerias.MyListbox"
multiple="false">
<listhead sizable="true">
<listheader width="45px"
image="/gui/img/builder.gif"
label="${c:l('busquedaEmpresaController.lhId.label')}"
sort="auto(empresaId)" />
<listheader image="/gui/img/create_doc.gif"
label="${c:l('busquedaEmpresaController.lhDesc.label')}"
sort="auto(nombempresa)" />
</listhead>
</listbox>
</tabpanel>
<tabpanel height="300px">
<grid fixedLayout="true">
<columns>
<column width="20%" />
<column width="80%" />
</columns>
<rows>
<row>
<label
value="${c:l('busquedaTarifaController.lhRuta.label')}" />
<combobox id="cmbRuta"
use="com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEstandar"
mold="rounded" buttonVisible="true" width="90%"
model="@{winModificacionMasivaTarifaAlias$composer.lsRutas}" />
</row>
</rows>
</grid>
<listbox id="rutaList" use="com.rjconsultores.ventaboletos.web.utilerias.MyListbox"
multiple="false">
<listhead sizable="true">
<listheader width="10%" image="/gui/img/builder.gif"
label="${c:l('busquedaCatalogoDeRutaController.lhId.label')}"
sort="auto(rutaId)" />
<listheader image="/gui/img/builder.gif"
label="${c:l('busquedaCatalogoDeRutaController.lhDesc.label')}"
sort="auto(descruta)" />
<listheader width="25%" image="/gui/img/builder.gif"
label="${c:l('busquedaCatalogoDeRutaController.lhClase.label')}"
sort="auto(claseServicio.descclase)" />
</listhead>
</listbox>
</tabpanel>
</tabpanels>
</tabbox>
</window>
<toolbar>
<button id="btnAdicionarRuta" height="20"
image="/gui/img/add.png" width="35px" />
<button id="btnRemoverRuta" height="20"
image="/gui/img/remove.png" width="35px" />
</toolbar>
<listbox id="rutaList"
use="com.rjconsultores.ventaboletos.web.utilerias.MyListbox"
multiple="false">
<listhead sizable="true">
<listheader width="10%"
image="/gui/img/builder.gif"
label="${c:l('busquedaCatalogoDeRutaController.lhId.label')}"
sort="auto(rutaId)" />
<listheader image="/gui/img/builder.gif"
label="${c:l('busquedaCatalogoDeRutaController.lhDesc.label')}"
sort="auto(descruta)" />
<listheader width="25%"
image="/gui/img/builder.gif"
label="${c:l('busquedaCatalogoDeRutaController.lhClase.label')}"
sort="auto(claseServicio.descclase)" />
</listhead>
</listbox>
</tabpanel>
<tabpanel height="300px">
<grid fixedLayout="true">
<columns>
<column width="20%" />
<column width="80%" />
</columns>
<rows>
<row>
<label
value="${c:l('modificacionMasivaAliasTarifasController.lhTipoClasse.label')}" />
<combobox id="cmbTipoClasse"
use="com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEstandar"
mold="rounded" buttonVisible="true" width="90%"
model="@{winModificacionMasivaTarifaAlias$composer.lsTipoClasse}" />
</row>
</rows>
</grid>
<toolbar>
<button id="btnAdicionarTipoClasse" height="20"
image="/gui/img/add.png" width="35px" />
<button id="btnRemoverTipoClasse" height="20"
image="/gui/img/remove.png" width="35px" />
</toolbar>
<listbox id="tipoClasseList"
use="com.rjconsultores.ventaboletos.web.utilerias.MyListbox"
multiple="false">
<listhead sizable="true">
<listheader width="10%"
image="/gui/img/builder.gif"
label="${c:l('busquedaClaseServicioController.lhId.label')}"
sort="auto(claseservicioId)" />
<listheader image="/gui/img/builder.gif"
label="${c:l('busquedaClaseServicioController.lhDesc.label')}"
sort="auto(descclase)" />
</listhead>
</listbox>
</tabpanel>
<tabpanel height="300px">
<grid fixedLayout="true">
<columns>
<column width="20%" />
<column width="80%" />
</columns>
<rows>
<row>
<label
value="${c:l('modificacionMasivaAliasTarifasController.lhOrgao.label')}" />
<combobox id="cmbOrgao"
use="com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEstandar"
mold="rounded" buttonVisible="true" width="90%"
model="@{winModificacionMasivaTarifaAlias$composer.lsOrgao}" />
</row>
</rows>
</grid>
<toolbar>
<button id="btnAdicionarOrgao" height="20"
image="/gui/img/add.png" width="35px" />
<button id="btnRemoverOrgao" height="20"
image="/gui/img/remove.png" width="35px" />
</toolbar>
<listbox id="orgaoList"
use="com.rjconsultores.ventaboletos.web.utilerias.MyListbox"
multiple="false">
<listhead sizable="true">
<listheader width="10%"
image="/gui/img/builder.gif"
label="${c:l('busquedaClaseServicioController.lhId.label')}"
sort="auto(orgaoConcedenteId)" />
<listheader image="/gui/img/builder.gif"
label="${c:l('busquedaClaseServicioController.lhDesc.label')}"
sort="auto(descOrgao)" />
</listhead>
</listbox>
</tabpanel>
</tabpanels>
</tabbox>
</window>
</zk>