From eddfd54dd9e40cc55a2e5cd1d19e3dab8306a868 Mon Sep 17 00:00:00 2001 From: emerson Date: Fri, 3 Aug 2018 17:58:46 +0000 Subject: [PATCH] fixes bug#0011602 dev: thiago qua: marcelo MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Para a opção de Arquivo Layout Internacional e incluir mais de uma impressora para a mesma estação está parametrizável, e só será possível através a propriedade permiteVariasImpressorasMesmaEmpresa=1. git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@83918 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../seguridad/EditarEstacionController.java | 90 ++++++++++++++----- .../render/RenderEstacionImpresora.java | 3 + web/WEB-INF/i3-label_es_MX.label | 1 + web/WEB-INF/i3-label_pt_BR.label | 1 + web/gui/seguridad/editarEstacion.zul | 10 +++ 5 files changed, 83 insertions(+), 22 deletions(-) diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/seguridad/EditarEstacionController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/seguridad/EditarEstacionController.java index c53156853..31ec2fcb1 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/seguridad/EditarEstacionController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/seguridad/EditarEstacionController.java @@ -115,6 +115,8 @@ public class EditarEstacionController extends MyGenericForwardComposer { private Label lblLibercard; private Checkbox chkUtilizaCartaoLibercard; private Checkbox chkStockCentral; + private Label lblTipoArquivoLayoutInternacional; + private Checkbox chkTipoArquivoLayoutInternacional; public Estacion getEstacion() { return estacion; @@ -149,14 +151,8 @@ public class EditarEstacionController extends MyGenericForwardComposer { estacionImpresoraList.setItemRenderer(new RenderEstacionImpresora()); estacionRioCardList.setItemRenderer(new EstacionRioCardRender()); - if (ApplicationProperties.getInstance().integracionRioCard()) { - tabRioCard.setVisible(true); - } - if (ApplicationProperties.getInstance().utillizaCartaoLiberCard()) { - lblLibercard.setVisible(true); - chkUtilizaCartaoLibercard.setVisible(true); - - } + validaHabilitacaoCampos(); + if (estacion.getEstacionId() == null) { btnApagar.setVisible(Boolean.FALSE); } else { @@ -213,6 +209,35 @@ public class EditarEstacionController extends MyGenericForwardComposer { txtDescEstacion.focus(); } + private void validaHabilitacaoCampos() { + ApplicationProperties instance = ApplicationProperties.getInstance(); + validaHabilitacaoCamposRioCard(instance) + .validaHabilitacaoCamposCartaoLiberCard(instance) + .validaHabilitacaoTipoArquivoInternacional(instance); + } + + private EditarEstacionController validaHabilitacaoCamposRioCard(ApplicationProperties instance) { + if (instance.integracionRioCard()) { + tabRioCard.setVisible(true); + } + return this; + } + + private EditarEstacionController validaHabilitacaoCamposCartaoLiberCard(ApplicationProperties instance) { + if (instance.utillizaCartaoLiberCard()) { + lblLibercard.setVisible(true); + chkUtilizaCartaoLibercard.setVisible(true); + } + return this; + } + + private void validaHabilitacaoTipoArquivoInternacional(ApplicationProperties instance) { + if (instance.isPermiteVariasImpressorasMesmaEmpresa()) { + lblTipoArquivoLayoutInternacional.setVisible(true); + chkTipoArquivoLayoutInternacional.setVisible(true); + } + } + private List getTiposImpressora() { List tiposImpressora = new ArrayList(); tiposImpressora.add(MATRICIAL); @@ -525,6 +550,7 @@ public class EditarEstacionController extends MyGenericForwardComposer { estacionImpresora.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); estacionImpresora.setTipoImpressora(getTipoImpressora()); estacionImpresora.setEstacionCentral(estacionCentral); + estacionImpresora.setIndArchivolayoutInternacional(chkTipoArquivoLayoutInternacional.isChecked()); estacionImpresoraList.addItemNovo(estacionImpresora); @@ -544,21 +570,11 @@ public class EditarEstacionController extends MyGenericForwardComposer { boolean empresaExiste; if(ApplicationProperties.getInstance().isPermiteVariasImpressorasMesmaEmpresa()) { - empresaExiste = CollectionUtils.exists(estacionImpresoraList.getListData(), new Predicate() { - @Override - public boolean evaluate(Object obj) { - EstacionImpresora e = (EstacionImpresora) obj; - return (e.getActivo() && e.getEmpresa().getEmpresaId().equals(empresaId)) && e.getNombImpresora().equals(nomeImpresora); - } - }); + empresaExiste = CollectionUtils.exists(estacionImpresoraList.getListData(), + new PredicateMesmaEmpresaEImpressora(nomeImpresora, empresaId)); } else { - empresaExiste = CollectionUtils.exists(estacionImpresoraList.getListData(), new Predicate() { - @Override - public boolean evaluate(Object obj) { - EstacionImpresora e = (EstacionImpresora) obj; - return (e.getActivo() && e.getEmpresa().getEmpresaId().equals(empresaId)); - } - }); + empresaExiste = CollectionUtils.exists(estacionImpresoraList.getListData(), + new PredicateEmpresaAtiva(empresaId)); } return empresaExiste; } @@ -690,4 +706,34 @@ public class EditarEstacionController extends MyGenericForwardComposer { e.printStackTrace(); } } + + private final class PredicateMesmaEmpresaEImpressora extends PredicateEmpresaAtiva { + private final String nomeImpresora; + + private PredicateMesmaEmpresaEImpressora(String nomeImpresora, Integer empresaId) { + super(empresaId); + this.nomeImpresora = nomeImpresora; + } + + @Override + public boolean evaluate(Object obj) { + EstacionImpresora e = (EstacionImpresora) obj; + return (super.evaluate(obj)) + && e.getNombImpresora().equals(nomeImpresora); + } + } + + private class PredicateEmpresaAtiva implements Predicate { + private final Integer empresaId; + + private PredicateEmpresaAtiva(Integer empresaId) { + this.empresaId = empresaId; + } + + @Override + public boolean evaluate(Object obj) { + EstacionImpresora e = (EstacionImpresora) obj; + return (e.getActivo() && e.getEmpresa().getEmpresaId().equals(empresaId)); + } + } } diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderEstacionImpresora.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderEstacionImpresora.java index 29748a23a..904dcc732 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderEstacionImpresora.java +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderEstacionImpresora.java @@ -39,6 +39,9 @@ public class RenderEstacionImpresora implements ListitemRenderer { lc = new Listcell(estacionImpresora.getNombArchivoLayout()); lc.setParent(lstm); + lc = new Listcell(estacionImpresora.getIndArchivolayoutInternacional() ? "Sim" : "Não"); + lc.setParent(lstm); + lstm.setAttribute("data", estacionImpresora); } diff --git a/web/WEB-INF/i3-label_es_MX.label b/web/WEB-INF/i3-label_es_MX.label index 881ac4dba..23c1b6d2f 100644 --- a/web/WEB-INF/i3-label_es_MX.label +++ b/web/WEB-INF/i3-label_es_MX.label @@ -4080,6 +4080,7 @@ busquedaEstacionController.nomeArquivoLayout.label = Archivo Layout busquedaEstacionController.lhUtilizaCartaoLibercard.label = Utiliza tarjeta Libercard busquedaEstacionController.lhStockCentral.label = Stock Central msg.constraint.cajaObligatorio = Caja obligatoria +busquedaEstacionController.lhTipoArquivoLayoutInternacional.label = Archivo Layout Internacional # Editar Estacion editarEstacionController.window.title = Estación diff --git a/web/WEB-INF/i3-label_pt_BR.label b/web/WEB-INF/i3-label_pt_BR.label index 9bb65ab3e..2e02ab75f 100644 --- a/web/WEB-INF/i3-label_pt_BR.label +++ b/web/WEB-INF/i3-label_pt_BR.label @@ -4288,6 +4288,7 @@ busquedaEstacionController.nomeImpressoraBPe.label = Impressora BPe busquedaEstacionController.nomeImpressoraSeguro.label = Impressora Seguro busquedaEstacionController.nomeArquivoLayout.label = Arquivo Layout msg.constraint.cajaObligatorio = Caixa obligatória +busquedaEstacionController.lhTipoArquivoLayoutInternacional.label = Arquivo Layout Internacional # Editar Estacion editarEstacionController.window.title = Estação diff --git a/web/gui/seguridad/editarEstacion.zul b/web/gui/seguridad/editarEstacion.zul index 8eb9bf666..14dca8c1a 100644 --- a/web/gui/seguridad/editarEstacion.zul +++ b/web/gui/seguridad/editarEstacion.zul @@ -329,6 +329,14 @@ + + @@ -354,6 +362,8 @@ label="${c:l('busquedaEstacionController.nomeImpressora.label')}" /> +