diff --git a/pom.xml b/pom.xml index 28609e9c0..181c6fa60 100644 --- a/pom.xml +++ b/pom.xml @@ -4,11 +4,11 @@ 4.0.0 br.com.rjconsultores ventaboletosadm - 1.128.2 + 1.128.3 war - 1.97.0 + 1.98.0 1.86.0 UTF-8 diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarEmpresaController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarEmpresaController.java index 99907a069..46bdad982 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarEmpresaController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarEmpresaController.java @@ -49,6 +49,7 @@ import org.zkoss.util.resource.Labels; import org.zkoss.zk.ui.Component; import org.zkoss.zk.ui.Executions; import org.zkoss.zk.ui.UiException; +import org.zkoss.zk.ui.event.DropEvent; import org.zkoss.zk.ui.event.Event; import org.zkoss.zk.ui.event.EventListener; import org.zkoss.zk.ui.event.InputEvent; @@ -64,6 +65,7 @@ import org.zkoss.zul.Groupbox; import org.zkoss.zul.Image; import org.zkoss.zul.Intbox; import org.zkoss.zul.Label; +import org.zkoss.zul.Listitem; import org.zkoss.zul.Messagebox; import org.zkoss.zul.Radio; import org.zkoss.zul.Row; @@ -166,6 +168,7 @@ import com.rjconsultores.ventaboletos.web.utilerias.render.RenderEmpresaContaBan import com.rjconsultores.ventaboletos.web.utilerias.render.RenderEmpresaEmpresaConfigLayout; import com.rjconsultores.ventaboletos.web.utilerias.render.RenderEmpresaImposto; import com.rjconsultores.ventaboletos.web.utilerias.render.RenderEmpresaInscricaoEstadual; +import com.rjconsultores.ventaboletos.web.utilerias.render.RenderEmpresaSicfeFormasPagamento; /** * @@ -582,12 +585,16 @@ public class EditarEmpresaController extends MyGenericForwardComposer { private Textbox txtSicfeDepartamento; private Textbox txtSicfeEndereco; private Textbox txtSicfeRazaoSocial; + private Textbox txtSicfeSucursal; private MyCheckboxSiNo chkSicfeUsaRUTCliente; private MyCheckboxSiNo chkSicfeUsaTermica; private MyCheckboxSiNo chkSicfeDesconto100Emite; private MyCheckboxSiNo chkSicfeCreditoOrdemServico; + private MyListbox empresaFormasPagamentoSicfe; + private MyListbox empresaFormasPagamentoSicfeSelecionado; + private Checkbox chkIndProducaoCrediBanco; private Textbox txtUsuarioCrediBanco; private Textbox txtSenhaCrediBanco; @@ -986,7 +993,12 @@ public class EditarEmpresaController extends MyGenericForwardComposer { ckIsento.setChecked(true); empresaLayoutConfigList.setItemRenderer(new RenderEmpresaEmpresaConfigLayout()); - + + empresaFormasPagamentoSicfe.setItemRenderer(new RenderEmpresaSicfeFormasPagamento()); + empresaFormasPagamentoSicfeSelecionado.setItemRenderer(new RenderEmpresaSicfeFormasPagamento()); + empresaFormasPagamentoSicfe.addEventListener("onDrop", new _DragEvent()); + empresaFormasPagamentoSicfeSelecionado.addEventListener("onDrop", new _DragEvent()); + if (empresa.getEmpresaId() != null) { empresa = empresaService.obtenerID(empresa.getEmpresaId()); lsEmpresaImposto = empresaImpostoService.buscarByEmpresa(empresa); @@ -1797,7 +1809,30 @@ public class EditarEmpresaController extends MyGenericForwardComposer { chkSicfeUsaRUTCliente.setChecked(BooleanUtils.toBoolean(mapConfigSicfe.get("indRUTCliente"))); chkSicfeUsaTermica.setChecked(BooleanUtils.toBoolean(mapConfigSicfe.get("indUsaTermica"))); chkSicfeDesconto100Emite.setChecked(BooleanUtils.toBoolean(mapConfigSicfe.get("indDesconto100Emite"))); - chkSicfeCreditoOrdemServico.setChecked(BooleanUtils.toBoolean(mapConfigSicfe.get("indCreditoOrdemServico"))); + txtSicfeSucursal.setText(mapConfigSicfe.get("sucursal")); + } + + String[] valorSelecionado = mapConfigSicfe.get("formasPagoOrdemServico") != null + ? mapConfigSicfe.get("formasPagoOrdemServico").toString().replace("[", "").replace("]", "") + .replace(" ", "").trim().split(",") + : null; + + int tamanhoSelecionado = valorSelecionado != null ? valorSelecionado.length : 0; + + Short[] selecionados = new Short[tamanhoSelecionado]; + + for (int i = 0; i < tamanhoSelecionado; i++) { + if (StringUtils.isNotBlank(valorSelecionado[i])) { + selecionados[i] = Short.valueOf(valorSelecionado[i]); + } else { + selecionados[i] = -1; + } + } + + empresaFormasPagamentoSicfe.setData(formaPagoService.buscarNotIn(selecionados)); + + if (selecionados.length > 0) { + empresaFormasPagamentoSicfeSelecionado.setData(formaPagoService.buscarIn(selecionados)); } } @@ -1825,7 +1860,8 @@ public class EditarEmpresaController extends MyGenericForwardComposer { salvaValoresSicfe("indRUTCliente", String.valueOf(chkSicfeUsaRUTCliente.isChecked()), mapConfigSicfe); salvaValoresSicfe("indUsaTermica", String.valueOf(chkSicfeUsaTermica.isChecked()), mapConfigSicfe); salvaValoresSicfe("indDesconto100Emite", String.valueOf(chkSicfeDesconto100Emite.isChecked()), mapConfigSicfe); - salvaValoresSicfe("indCreditoOrdemServico", String.valueOf(chkSicfeCreditoOrdemServico.isChecked()), mapConfigSicfe); + salvaValoresSicfe("formasPagoOrdemServico", Arrays.asList(retornaIdsFormaPagamento(empresaFormasPagamentoSicfeSelecionado.getListData())), mapConfigSicfe); + salvaValoresSicfe("sucursal", txtSicfeSucursal.getValue(), mapConfigSicfe); } private Map retornaValoresSicfe() { @@ -3379,6 +3415,40 @@ public void onClick$btnTestEmailFlexBus(Event ev) throws InterruptedException { validarCPFCNPJ(numDoc); } + private class _DragEvent implements EventListener { + @Override + public void onEvent(Event event) throws Exception { + + MyListbox droppedListbox = (MyListbox) (((DropEvent) event).getTarget()); + Listitem draggedListitem = (Listitem) ((DropEvent) event).getDragged(); + MyListbox draggedListBox = (MyListbox) draggedListitem.getParent(); + + if (draggedListitem instanceof Listitem) { + + if (!droppedListbox.equals(draggedListBox)) { + if (draggedListitem.getIndex() >= 0) { + droppedListbox + .addItemNovo(draggedListBox.getListModel().getElementAt(draggedListitem.getIndex())); + draggedListBox + .removeItem(draggedListBox.getListModel().getElementAt(draggedListitem.getIndex())); + + } + } + + } else { + droppedListbox.appendChild(draggedListitem); + } + } + } + + private Short[] retornaIdsFormaPagamento(List idFormasPagos) { + Short[] retorno = new Short[idFormasPagos.size()]; + for (int i = 0; i < idFormasPagos.size(); i++) { + retorno[i] = idFormasPagos.get(i).getFormapagoId(); + } + return retorno; + } + public void uploadFile(UploadEvent event) { org.zkoss.util.media.Media media = event.getMedia(); @@ -3806,5 +3876,21 @@ public void onClick$btnTestEmailFlexBus(Event ev) throws InterruptedException { public void setEmpresaLayoutConfigList(MyListbox empresaLayoutConfigList) { this.empresaLayoutConfigList = empresaLayoutConfigList; } + + public MyListbox getEmpresaFormasPagamentoSicfe() { + return empresaFormasPagamentoSicfe; + } + + public void setEmpresaFormasPagamentoSicfe(MyListbox empresaFormasPagamentoSicfe) { + this.empresaFormasPagamentoSicfe = empresaFormasPagamentoSicfe; + } + + public MyListbox getEmpresaFormasPagamentoSicfeSelecionado() { + return empresaFormasPagamentoSicfeSelecionado; + } + + public void setEmpresaFormasPagamentoSicfeSelecionado(MyListbox empresaFormasPagamentoSicfeSelecionado) { + this.empresaFormasPagamentoSicfeSelecionado = empresaFormasPagamentoSicfeSelecionado; + } } diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderEmpresaSicfeFormasPagamento.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderEmpresaSicfeFormasPagamento.java new file mode 100644 index 000000000..e4d3fb92c --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderEmpresaSicfeFormasPagamento.java @@ -0,0 +1,54 @@ +package com.rjconsultores.ventaboletos.web.utilerias.render; + +import org.zkoss.zk.ui.event.DropEvent; +import org.zkoss.zk.ui.event.Event; +import org.zkoss.zk.ui.event.EventListener; +import org.zkoss.zul.Listcell; +import org.zkoss.zul.Listitem; +import org.zkoss.zul.ListitemRenderer; + +import com.rjconsultores.ventaboletos.entidad.FormaPago; +import com.rjconsultores.ventaboletos.web.utilerias.MyListbox; + +public class RenderEmpresaSicfeFormasPagamento implements ListitemRenderer { + + @Override + public void render(Listitem lstm, Object selected) throws Exception { + + lstm.addEventListener("onDrop", new EventListener() { + @Override + public void onEvent(Event event) throws Exception { + + Listitem droppedListitem = (Listitem) (((DropEvent) event).getTarget()); + Listitem draggedListitem = (Listitem) ((DropEvent) event).getDragged(); + + MyListbox droppedListBox = (MyListbox) droppedListitem.getParent(); + MyListbox draggedListBox = (MyListbox) draggedListitem.getParent(); + + if (draggedListitem instanceof Listitem) { + + if (!droppedListBox.equals(draggedListBox)) { + if (draggedListitem.getIndex() > -1) { + droppedListBox.addItemNovo(draggedListitem.getIndex(), + draggedListBox.getListModel().getElementAt(draggedListitem.getIndex())); + draggedListBox + .removeItem(draggedListBox.getListModel().getElementAt(draggedListitem.getIndex())); + } + } + } else { + droppedListBox.insertBefore(draggedListitem, droppedListitem); + } + } + }); + + FormaPago entity = (FormaPago) selected; + + Listcell lc = new Listcell(entity.getDescpago()); + lc.setParent(lstm); + + lstm.setDroppable("true"); + lstm.setDraggable("true"); + lstm.setAttribute("data", entity); + + } +} \ No newline at end of file diff --git a/web/WEB-INF/i3-label_en.label b/web/WEB-INF/i3-label_en.label index c53669f63..a5bebd004 100644 --- a/web/WEB-INF/i3-label_en.label +++ b/web/WEB-INF/i3-label_en.label @@ -4804,6 +4804,9 @@ editarEmpresaController.sicfe.txtSicfeTicket = Ticket Sicfe editarEmpresaController.sicfe.txtSicfeTipoDocRecepcao = Reception Doc Type editarEmpresaController.sicfe.txtSicfeURL = WebService URL editarEmpresaController.sicfe.txtSicfeUSR = USR WebService +editarEmpresaController.sicfe.txtSicfeSucursal = Sucursal +editarEmpresaController.sicfe.empresaFormasPagamentoSicfe = Hold and drag the payment methods that issue Credit to the table on the right. +editarEmpresaController.sicfe.empresaFormasPagamentoSicfeSelecionado = Selected payment methods editarEmpresaController.subTabComprovanteEmail.value = Email editarEmpresaController.subTabComprovanteImpressao.value = Print editarEmpresaController.subTabComprovanteSMS.value = SMS diff --git a/web/WEB-INF/i3-label_es_MX.label b/web/WEB-INF/i3-label_es_MX.label index 709eccee2..47f4d854e 100644 --- a/web/WEB-INF/i3-label_es_MX.label +++ b/web/WEB-INF/i3-label_es_MX.label @@ -4802,6 +4802,9 @@ editarEmpresaController.sicfe.txtSicfeTicket = Boleto Sicfe editarEmpresaController.sicfe.txtSicfeTipoDocRecepcao = Tipo Doc Recepción editarEmpresaController.sicfe.txtSicfeURL = URL WebService editarEmpresaController.sicfe.txtSicfeUSR = USR WebService +editarEmpresaController.sicfe.txtSicfeSucursal = Sucursal +editarEmpresaController.sicfe.empresaFormasPagamentoSicfe = Mantenga presionados y arrastre los métodos de pago que emiten crédito a la tabla de la derecha. +editarEmpresaController.sicfe.empresaFormasPagamentoSicfeSelecionado = Métodos de pago seleccionados editarEmpresaController.subTabComprovanteEmail.value = E-mail editarEmpresaController.subTabComprovanteImpressao.value = Imprimir editarEmpresaController.subTabComprovanteSMS.value = SMS diff --git a/web/WEB-INF/i3-label_fr_FR.label b/web/WEB-INF/i3-label_fr_FR.label index 9825b5c17..f5aff4bca 100644 --- a/web/WEB-INF/i3-label_fr_FR.label +++ b/web/WEB-INF/i3-label_fr_FR.label @@ -4802,6 +4802,9 @@ editarEmpresaController.sicfe.txtSicfeTicket = Billet Sicfe editarEmpresaController.sicfe.txtSicfeTipoDocRecepcao = Tapez Réception Doc editarEmpresaController.sicfe.txtSicfeURL = URL WebService editarEmpresaController.sicfe.txtSicfeUSR = USR WebService +editarEmpresaController.sicfe.txtSicfeSucursal = Sucursal +editarEmpresaController.sicfe.empresaFormasPagamentoSicfe = Maintenez enfoncé et faites glisser les méthodes de paiement qui émettent du crédit vers le tableau de droite. +editarEmpresaController.sicfe.empresaFormasPagamentoSicfeSelecionado = Modes de paiement sélectionnés editarEmpresaController.subTabComprovanteEmail.value = E-mail editarEmpresaController.subTabComprovanteImpressao.value = Imprimer editarEmpresaController.subTabComprovanteSMS.value = SMS diff --git a/web/WEB-INF/i3-label_pt_BR.label b/web/WEB-INF/i3-label_pt_BR.label index af8c4e9bc..f16590009 100644 --- a/web/WEB-INF/i3-label_pt_BR.label +++ b/web/WEB-INF/i3-label_pt_BR.label @@ -4798,6 +4798,9 @@ editarEmpresaController.sicfe.txtSicfeTicket = Ticket Sicfe editarEmpresaController.sicfe.txtSicfeTipoDocRecepcao = Tipo Doc Recepção editarEmpresaController.sicfe.txtSicfeURL = URL WebService editarEmpresaController.sicfe.txtSicfeUSR = USR WebService +editarEmpresaController.sicfe.txtSicfeSucursal = Sucursal +editarEmpresaController.sicfe.empresaFormasPagamentoSicfe = Segure e arraste para a tabela da direita as formas de pagamento que emitem Credito. +editarEmpresaController.sicfe.empresaFormasPagamentoSicfeSelecionado = Formas de pagamento selecionadas editarEmpresaController.subTabComprovanteEmail.value = E-mail editarEmpresaController.subTabComprovanteImpressao.value = Impressão editarEmpresaController.subTabComprovanteSMS.value = SMS diff --git a/web/gui/catalogos/editarEmpresa.zul b/web/gui/catalogos/editarEmpresa.zul index 777506da6..9e6049e3e 100644 --- a/web/gui/catalogos/editarEmpresa.zul +++ b/web/gui/catalogos/editarEmpresa.zul @@ -2754,10 +2754,27 @@