From 673fc5b3a7760b52e48aa9250cd3f565118dcfe4 Mon Sep 17 00:00:00 2001 From: "rafael.henrique" Date: Fri, 21 Jul 2017 00:17:51 +0000 Subject: [PATCH] fixes bug#9419 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@71712 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../EditarPuntoVentaComissaoController.java | 133 +++++++++++++++++- .../utilerias/render/RenderPtovtaContaMB.java | 31 ++++ src/java/spring-config.xml | 1 + web/WEB-INF/i3-label_es_MX.label | 8 ++ web/WEB-INF/i3-label_pt_BR.label | 9 ++ .../catalogos/editarPuntoVentaComissao.zul | 66 +++++++++ 6 files changed, 247 insertions(+), 1 deletion(-) create mode 100644 src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderPtovtaContaMB.java diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarPuntoVentaComissaoController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarPuntoVentaComissaoController.java index 55580f464..e2e43dd5c 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarPuntoVentaComissaoController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarPuntoVentaComissaoController.java @@ -4,7 +4,9 @@ */ package com.rjconsultores.ventaboletos.web.gui.controladores.catalogos; +import java.math.BigDecimal; import java.text.DecimalFormat; +import java.util.Date; import java.util.List; import java.util.Locale; @@ -23,12 +25,18 @@ import org.zkoss.zul.Messagebox; import org.zkoss.zul.Paging; import com.rjconsultores.ventaboletos.constantes.Constantes; +import com.rjconsultores.ventaboletos.entidad.ContaCorrentePtoVta; +import com.rjconsultores.ventaboletos.entidad.ContaMD; import com.rjconsultores.ventaboletos.entidad.DescontoComissao; +import com.rjconsultores.ventaboletos.entidad.FechamentoParamptovta; import com.rjconsultores.ventaboletos.entidad.ItemDesconto; import com.rjconsultores.ventaboletos.entidad.PtovtaComissao; +import com.rjconsultores.ventaboletos.entidad.PtovtaContaMD; +import com.rjconsultores.ventaboletos.service.ContaMDService; import com.rjconsultores.ventaboletos.service.DescontoComissaoService; import com.rjconsultores.ventaboletos.service.ItemDescontoService; import com.rjconsultores.ventaboletos.service.PtovtaComissaoService; +import com.rjconsultores.ventaboletos.service.PtovtaContaMDService; import com.rjconsultores.ventaboletos.service.PuntoVentaService; import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado; import com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEstandar; @@ -39,6 +47,7 @@ import com.rjconsultores.ventaboletos.web.utilerias.MyTextboxDecimal; import com.rjconsultores.ventaboletos.web.utilerias.paginacion.HibernateSearchObject; import com.rjconsultores.ventaboletos.web.utilerias.paginacion.PagedListWrapper; import com.rjconsultores.ventaboletos.web.utilerias.render.RenderDescontoComissao; +import com.rjconsultores.ventaboletos.web.utilerias.render.RenderPtovtaContaMB; /** * @@ -61,6 +70,9 @@ public class EditarPuntoVentaComissaoController extends MyGenericForwardComposer @Autowired private PuntoVentaService puntoVentaService; + @Autowired + private PtovtaContaMDService ptovtaContaMDService; + @Autowired private ItemDescontoService itemDescontoService; @@ -83,6 +95,19 @@ public class EditarPuntoVentaComissaoController extends MyGenericForwardComposer private MyTextboxDecimal txtItemDescontoPreco; private DescontoComissao descontoComissao; + private BigDecimal porcentagemConta; + private List lsConta; + private MyComboboxEstandar cmbConta; + private MyTextboxDecimal txtPorcentagem; + + @Autowired + private transient PagedListWrapper plwPorcentagemConta; + private MyListbox porcentagemContaList; + private Paging pagingPorcentagemConta; + + @Autowired + private ContaMDService contaMDService; + @Autowired private transient PagedListWrapper plwDescontoComissao; private MyListbox descontoComissaoList; @@ -90,13 +115,19 @@ public class EditarPuntoVentaComissaoController extends MyGenericForwardComposer @Override public void doAfterCompose(Component comp) throws Exception { + + super.doAfterCompose(comp); + PtovtaComissao ptovtaComissao = (PtovtaComissao) Executions.getCurrent().getArg().get("ptovtaComissao"); this.ptovtaComissaoList = (MyListbox) Executions.getCurrent().getArg().get("ptovtaComissaoList"); this.ptovtaComissao = ptovtaComissaoService.obtenerID(ptovtaComissao.getPtovtaComissaoId()); this.lsItemDesconto = itemDescontoService.obtenerTodos(); this.descontoComissao = new DescontoComissao(); + + this.lsConta = this.contaMDService.obtenerTodos(); + this.porcentagemConta = new BigDecimal(0); - super.doAfterCompose(comp); + for (PtovtaComissao.Receita p : PtovtaComissao.Receita.values()) { Comboitem comboItem = new Comboitem(p.descricao()); @@ -129,8 +160,11 @@ public class EditarPuntoVentaComissaoController extends MyGenericForwardComposer } }); + + porcentagemContaList.setItemRenderer(new RenderPtovtaContaMB()); refreshLista(); + refreshListaConta(); } public void onClick$btnSalvarPtovtaComissao(Event ev) throws InterruptedException { @@ -277,6 +311,79 @@ public class EditarPuntoVentaComissaoController extends MyGenericForwardComposer } } + public void onClick$btnAdicionarContaPorcentagem() { + + try { + if(this.cmbConta.getSelectedItem() != null && this.porcentagemConta != null && !this.porcentagemConta.equals(BigDecimal.ZERO)){ + + PtovtaContaMD ptovtaContaMD = new PtovtaContaMD(); + + ptovtaContaMD.setContaId(this.cmbConta.getSelecteObject(ContaMD.class)); + ptovtaContaMD.setPercentual(this.porcentagemConta); + ptovtaContaMD.setPuntoventaId(this.ptovtaComissao.getPuntoventaId()); + ptovtaContaMD.setEmpresaId(this.ptovtaComissao.getEmpresaId()); + ptovtaContaMD.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + ptovtaContaMD.setFecmodif(new Date()); + ptovtaContaMD.setActivo(Boolean.TRUE); + + ptovtaContaMDService.suscribir(ptovtaContaMD); + + Messagebox.show( + Labels.getLabel("editarPuntoVentaComissaoController.MSG.suscribirOKContaMD"), + Labels.getLabel("editarPuntoVentaComissaoController.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + + refreshListaConta(); + } + } catch (Exception ex) { + log.error(ex.toString()); + } + } + + public void onClick$btnRemoverContaPorcentagem() { + + try { + if (porcentagemContaList.getSelected() != null) { + int resp = Messagebox.show( + Labels.getLabel("editarPuntoVentaComissaoController.MSG.borrarPerguntaPtovtaContaMD"), + Labels.getLabel("editarPuntoVentaComissaoController.window.title"), + Messagebox.YES | Messagebox.NO, Messagebox.QUESTION); + + if (resp == Messagebox.YES) { + PtovtaContaMD ptovtaContaMD = (PtovtaContaMD) porcentagemContaList.getSelected(); + ptovtaContaMDService.borrar(ptovtaContaMD); + porcentagemContaList.removeItem(ptovtaContaMD); + + log.warn("Usuário " + UsuarioLogado.getUsuarioLogado().getNombusuario() + " excluiu o PtovtaContaMD " + ptovtaContaMD.getPtovtaContaId()); + + Messagebox.show( + Labels.getLabel("editarPuntoVentaComissaoController.MSG.borrarOKContaMD"), + Labels.getLabel("editarPuntoVentaComissaoController.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + + refreshListaConta(); + } + } + } catch (Exception ex) { + log.error(ex.toString()); + } + + } + + private void refreshListaConta() { + try { + HibernateSearchObject ptovtaContaMDBusqueda = new HibernateSearchObject(PtovtaContaMD.class, pagingPorcentagemConta.getPageSize()); + + ptovtaContaMDBusqueda.addFilterEqual("activo", Boolean.TRUE); + ptovtaContaMDBusqueda.addFilterEqual("puntoventaId", ptovtaComissao.getPuntoventaId()); + ptovtaContaMDBusqueda.addFilterEqual("empresaId", ptovtaComissao.getEmpresaId()); + plwPorcentagemConta.init(ptovtaContaMDBusqueda, porcentagemContaList, pagingPorcentagemConta); + + } catch (Exception e) { + log.error(e.getMessage(), e.getCause()); + } + } + public PuntoVentaService getPuntoVentaService() { return puntoVentaService; } @@ -323,5 +430,29 @@ public class EditarPuntoVentaComissaoController extends MyGenericForwardComposer public void setDescontoComissao(DescontoComissao descontoComissao) { this.descontoComissao = descontoComissao; } + + public MyComboboxEstandar getCmbConta() { + return cmbConta; + } + + public void setCmbConta(MyComboboxEstandar cmbConta) { + this.cmbConta = cmbConta; + } + + public List getLsConta() { + return lsConta; + } + + public void setLsConta(List lsConta) { + this.lsConta = lsConta; + } + + public BigDecimal getPorcentagemConta() { + return porcentagemConta; + } + + public void setPorcentagemConta(BigDecimal porcentagemConta) { + this.porcentagemConta = porcentagemConta; + } } diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderPtovtaContaMB.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderPtovtaContaMB.java new file mode 100644 index 000000000..319e58459 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderPtovtaContaMB.java @@ -0,0 +1,31 @@ +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.PtovtaContaMD; +import com.rjconsultores.ventaboletos.utilerias.BigDecimalUtil; +import com.rjconsultores.ventaboletos.utilerias.LocaleUtil; + +public class RenderPtovtaContaMB implements ListitemRenderer { + + @Override + public void render(Listitem lstm, Object o) throws Exception { + PtovtaContaMD ptovtaContaMD = (PtovtaContaMD) o; + + Listcell lc = new Listcell(ptovtaContaMD.getContaId().getNome()); + lc.setParent(lstm); + + lc = new Listcell(ptovtaContaMD.getContaId().getTipoDesc()); + lc.setParent(lstm); + + lc = new Listcell(ptovtaContaMD.getPercentual() != null ? BigDecimalUtil.getBigDecimalToStringDouble2CasasDecimaisFormatado(ptovtaContaMD.getPercentual(), LocaleUtil.getLocale()) : "0,00"); + lc.setParent(lstm); + + + lstm.setAttribute("data", ptovtaContaMD); + + } + +} diff --git a/src/java/spring-config.xml b/src/java/spring-config.xml index c1c6450c6..4b55d12d5 100644 --- a/src/java/spring-config.xml +++ b/src/java/spring-config.xml @@ -458,6 +458,7 @@ com.rjconsultores.ventaboletos.entidad.RutaEmbarqueDesembarque com.rjconsultores.ventaboletos.entidad.EsquemaCorridaEmbarqueDesembarque com.rjconsultores.ventaboletos.entidad.ContaMD + com.rjconsultores.ventaboletos.entidad.PtovtaContaMD diff --git a/web/WEB-INF/i3-label_es_MX.label b/web/WEB-INF/i3-label_es_MX.label index 90bde8479..e2313bd0c 100644 --- a/web/WEB-INF/i3-label_es_MX.label +++ b/web/WEB-INF/i3-label_es_MX.label @@ -1351,6 +1351,14 @@ editarPuntoVentaComissaoController.MSG.borrarPergunta = Desea eliminar esta comi editarPuntoVentaComissaoController.MSG.borrarOK = Comisión de la empresa/Punto de venta se eliminó exitosamente editarPuntoVentaComissaoController.tab.parametrosComissao = Parametros Comisión editarPuntoVentaComissaoController.tab.itensDescontoComissao = Elemento de Descuento Comisión +editarPuntoVentaComissaoController.tab.porcentagemComissao = Cuentas Crédito/Débito +editarPuntoVentaComissaoController.btnAddConta.tooltiptext = Adicionar Porcentaje +editarPuntoVentaComissaoController.btnRemoverConta.tooltiptext = Borrar Porcentaje +editarPuntoVentaComissaoController.label.conta = Cuenta +editarPuntoVentaComissaoController.label.porcentagem = Porcentaje +editarPuntoVentaComissaoController.MSG.suscribirOKContaMD = Porcentaje da Empresa/Punto de Venda se registró exitosamente +editarPuntoVentaController.MSG.borrarPerguntaPtovtaContaMD = Deseja eliminar esta Porcentaje da Empresa/Punto de Venda? +editarPuntoVentaComissaoController.MSG.borrarOKContaMD = Porcentagem de la Empresa/Punto de Venda eliminó exitosamente # Muestra o TipoVenta Búsqueda busquedaTipoVentaController.window.title = Modalidad de venta diff --git a/web/WEB-INF/i3-label_pt_BR.label b/web/WEB-INF/i3-label_pt_BR.label index 2deed97df..b311fefca 100644 --- a/web/WEB-INF/i3-label_pt_BR.label +++ b/web/WEB-INF/i3-label_pt_BR.label @@ -1381,6 +1381,15 @@ editarPuntoVentaComissaoController.MSG.borrarPergunta = Deseja eliminar esta Com editarPuntoVentaComissaoController.MSG.borrarOK = Comissão da Empresa/Ponto de Venda excluida com sucesso. editarPuntoVentaComissaoController.tab.parametrosComissao = Parâmetros Comissão editarPuntoVentaComissaoController.tab.itensDescontoComissao = Itens Descontos Comissão +editarPuntoVentaComissaoController.tab.porcentagemComissao = Contas Crédito/Débito +editarPuntoVentaComissaoController.btnAddConta.tooltiptext = Adicionar porcentagem +editarPuntoVentaComissaoController.btnRemoverConta.tooltiptext = Remover porcentagem +editarPuntoVentaComissaoController.label.conta = Conta +editarPuntoVentaComissaoController.label.contaTipo = Tipo de Conta +editarPuntoVentaComissaoController.label.porcentagem = Porcentagem +editarPuntoVentaComissaoController.MSG.suscribirOKContaMD = Porcentagem da Empresa/Ponto de Venda registrada com sucesso +editarPuntoVentaComissaoController.MSG.borrarPerguntaPtovtaContaMD = Deseja eliminar esta Porcentagem da Empresa/Ponto de Venda? +editarPuntoVentaComissaoController.MSG.borrarOKContaMD = Porcentagem da Empresa/Ponto de Venda excluida com sucesso # Muestra o TipoVenta Pesquisa busquedaTipoVentaController.window.title = Modalidade de Venda diff --git a/web/gui/catalogos/editarPuntoVentaComissao.zul b/web/gui/catalogos/editarPuntoVentaComissao.zul index b74c554d8..d65452e6e 100644 --- a/web/gui/catalogos/editarPuntoVentaComissao.zul +++ b/web/gui/catalogos/editarPuntoVentaComissao.zul @@ -32,6 +32,7 @@ + @@ -419,6 +420,71 @@ + + + + + + + + + + + + + + + + + +