diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioObservacaoBilhetes.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioObservacaoBilhetes.java index 19c15cace..7452da5bb 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioObservacaoBilhetes.java +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioObservacaoBilhetes.java @@ -92,7 +92,7 @@ public class RelatorioObservacaoBilhetes extends Relatorio { logConferencia.setObservacao(rset.getString("observacao")); logConferencia.setDesccategoria(rset.getString("desccategoria")); logConferencia.setFecmodif(rset.getDate("fecmodif")); - logConferencia.setIndcredito(rset.getBoolean("indcredito")); + logConferencia.setIndcredito(rset.getShort("indcredito")); logConferencia.setNombusuario(rset.getString("nombusuario")); logConferencia.setPreco(rset.getBigDecimal("preco")); diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioObservacaoConferenciaMovimento.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioObservacaoConferenciaMovimento.java index f685bf6b1..1a922c5b4 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioObservacaoConferenciaMovimento.java +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioObservacaoConferenciaMovimento.java @@ -112,7 +112,7 @@ public class RelatorioObservacaoConferenciaMovimento extends Relatorio { logConferencia.setObservacao(rset.getString("observacao")); logConferencia.setDesccategoria(rset.getString("desccategoria")); logConferencia.setFecmodif(rset.getDate("fecmodif")); - logConferencia.setIndcredito(rset.getBoolean("indcredito")); + logConferencia.setIndcredito(rset.getShort("indcredito")); logConferencia.setNombusuario(rset.getString("nombusuario")); logConferencia.setPreco(rset.getBigDecimal("preco")); logConferencia.setTipo(rset.getInt("tipo")); diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioObservacaoEventosFinanceiros.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioObservacaoEventosFinanceiros.java index d56b4cba1..f9f647802 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioObservacaoEventosFinanceiros.java +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioObservacaoEventosFinanceiros.java @@ -91,7 +91,7 @@ public class RelatorioObservacaoEventosFinanceiros extends Relatorio { logConferencia.setDesctipoevento(rset.getString("desctipoevento")); logConferencia.setObservacao(rset.getString("observacao")); logConferencia.setFecmodif(rset.getDate("fecmodif")); - logConferencia.setIndcredito(rset.getBoolean("indcredito")); + logConferencia.setIndcredito(rset.getShort("indcredito")); logConferencia.setNombusuario(rset.getString("nombusuario")); logConferencia.setPreco(rset.getBigDecimal("preco")); diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioObservacaoBilhetes_es.properties b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioObservacaoBilhetes_es.properties index fd69a3d8e..81f303daf 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioObservacaoBilhetes_es.properties +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioObservacaoBilhetes_es.properties @@ -22,6 +22,6 @@ label.numfoliosistema=N label.desccategoria=Categoria label.observacao=Observação label.preco=Valor -label.debitoCredito=D/C +label.debitoCredito=D/C/I label.fecmodif=Dt. Alt. label.tipoventa=Tipo Venta diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioObservacaoBilhetes_pt_BR.properties b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioObservacaoBilhetes_pt_BR.properties index fd69a3d8e..81f303daf 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioObservacaoBilhetes_pt_BR.properties +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioObservacaoBilhetes_pt_BR.properties @@ -22,6 +22,6 @@ label.numfoliosistema=N label.desccategoria=Categoria label.observacao=Observação label.preco=Valor -label.debitoCredito=D/C +label.debitoCredito=D/C/I label.fecmodif=Dt. Alt. label.tipoventa=Tipo Venta diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarTipoInformativoComissaoController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarTipoInformativoComissaoController.java new file mode 100644 index 000000000..67429d055 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarTipoInformativoComissaoController.java @@ -0,0 +1,153 @@ +package com.rjconsultores.ventaboletos.web.gui.controladores.catalogos; + +import java.util.Calendar; + +import org.apache.log4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Scope; +import org.springframework.stereotype.Controller; +import org.zkoss.util.resource.Labels; +import org.zkoss.zk.ui.Component; +import org.zkoss.zk.ui.Executions; +import org.zkoss.zk.ui.event.Event; +import org.zkoss.zul.Button; +import org.zkoss.zul.Messagebox; + +import com.rjconsultores.ventaboletos.entidad.TipoInformativoComissao; +import com.rjconsultores.ventaboletos.service.TipoInformativoComissaoService; +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.MyTextbox; + +@Controller("editarTipoInformativoComissaoController") +@Scope("prototype") +public class EditarTipoInformativoComissaoController extends MyGenericForwardComposer { + + private static final long serialVersionUID = 1L; + + @Autowired + private TipoInformativoComissaoService tipoInformativoComissaoService; + + private TipoInformativoComissao tipoInformativoComissao; + private MyListbox tipoInformativoComissaoList; + private MyTextbox txtNome; + + private Button btnApagar; + + private static Logger log = Logger.getLogger(EditarTipoInformativoComissaoController.class); + + public TipoInformativoComissao getTipoInformativoComissao() { + return tipoInformativoComissao; + } + + public void setTipoInformativoComissao(TipoInformativoComissao tipoInformativoComissao) { + this.tipoInformativoComissao = tipoInformativoComissao; + } + + public MyListbox getTipoInformativoComissaoList() { + return tipoInformativoComissaoList; + } + + public void setTipoInformativoComissaoList(MyListbox tipoInformativoComissaoList) { + this.tipoInformativoComissaoList = tipoInformativoComissaoList; + } + + public MyTextbox getTxtNome() { + return txtNome; + } + + public void setTxtNome(MyTextbox txtNome) { + this.txtNome = txtNome; + } + + public Button getBtnApagar() { + return btnApagar; + } + + public void setBtnApagar(Button btnApagar) { + this.btnApagar = btnApagar; + } + + @Override + public void doAfterCompose(Component comp) throws Exception { + super.doAfterCompose(comp); + + tipoInformativoComissao = (TipoInformativoComissao) Executions.getCurrent().getArg().get("tipoInformativoComissao"); + tipoInformativoComissaoList = (MyListbox) Executions.getCurrent().getArg().get("tipoInformativoComissaoList"); + + if (tipoInformativoComissao != null && tipoInformativoComissao.getDesctipo() != null) { + txtNome.setText(tipoInformativoComissao.getDesctipo()); + } + if (tipoInformativoComissao.getTipoinformativoId() == null) { + btnApagar.setVisible(false); + } + txtNome.focus(); + } + + public void onClick$btnSalvar(Event ev) throws InterruptedException { + + txtNome.getValue(); + + try { + tipoInformativoComissao.setActivo(Boolean.TRUE); + tipoInformativoComissao.setFecmodif(Calendar.getInstance().getTime()); + tipoInformativoComissao.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + tipoInformativoComissao.setDesctipo(txtNome.getText()); + + if (!tipoInformativoComissaoService.existeTipoInformativo(tipoInformativoComissao)) { + Messagebox.show( + Labels.getLabel("editarTipoInformativoComissaoController.MSG.DescricaoDuplicada"), + Labels.getLabel("busquedaTipoServicioController.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + return; + } + + if (tipoInformativoComissao.getTipoinformativoId() == null) { + tipoInformativoComissaoService.suscribir(tipoInformativoComissao); + tipoInformativoComissaoList.addItemNovo(tipoInformativoComissao); + } else { + tipoInformativoComissaoService.actualizacion(tipoInformativoComissao); + tipoInformativoComissaoList.updateItem(tipoInformativoComissao); + } + + Messagebox.show( + Labels.getLabel("editarTipoInformativoComissaoController.MSG.suscribirOK"), + Labels.getLabel("busquedaTipoServicioController.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + + closeWindow(); + } catch (Exception ex) { + log.error("busquedaTipoServicioController :" + ex); + Messagebox.show( + Labels.getLabel("MSG.Error"), + Labels.getLabel("busquedaTipoServicioController.window.title"), + Messagebox.OK, Messagebox.ERROR); + } + } + + public void onClick$btnApagar(Event ev) { + try { + int resp = Messagebox.show( + Labels.getLabel("editarTipoInformativoComissaoController.MSG.BorrarPergunta"), + Labels.getLabel("busquedaTipoServicioController.window.title"), + Messagebox.YES | Messagebox.NO, Messagebox.QUESTION); + + if (resp == Messagebox.YES) { + + tipoInformativoComissaoService.borrar(tipoInformativoComissao); + + Messagebox.show( + Labels.getLabel("editarTipoInformativoComissaoController.MSG.BorrarOK"), + Labels.getLabel("busquedaTipoServicioController.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + + tipoInformativoComissaoList.removeItem(tipoInformativoComissao); + + closeWindow(); + } + } catch (Exception ex) { + log.error(ex); + } + } +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/comissao/BusquedaTipoInformativoComissaoController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/comissao/BusquedaTipoInformativoComissaoController.java new file mode 100644 index 000000000..dadcb05b0 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/comissao/BusquedaTipoInformativoComissaoController.java @@ -0,0 +1,124 @@ +package com.rjconsultores.ventaboletos.web.gui.controladores.comissao; + +import java.util.HashMap; +import java.util.Map; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Scope; +import org.springframework.stereotype.Controller; +import org.zkoss.util.resource.Labels; +import org.zkoss.zk.ui.Component; +import org.zkoss.zk.ui.event.Event; +import org.zkoss.zk.ui.event.EventListener; +import org.zkoss.zul.Paging; +import org.zkoss.zul.Textbox; + +import com.rjconsultores.ventaboletos.entidad.TipoInformativoComissao; +import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; +import com.rjconsultores.ventaboletos.web.utilerias.MyListbox; +import com.rjconsultores.ventaboletos.web.utilerias.paginacion.HibernateSearchObject; +import com.rjconsultores.ventaboletos.web.utilerias.paginacion.PagedListWrapper; +import com.rjconsultores.ventaboletos.web.utilerias.render.RenderTipoInformativoComissao; + +@Scope("prototype") +@Controller("busquedaTipoInformativoComissaoController") +public class BusquedaTipoInformativoComissaoController extends MyGenericForwardComposer { + + private static final long serialVersionUID = 1L; + private static final Logger log = LoggerFactory.getLogger(BusquedaTipoInformativoComissaoController.class); + + @Autowired + private transient PagedListWrapper plwTipoInformativo; + private MyListbox tipoInformativoList; + private Paging pagingTipoInformativo; + private Textbox txtNombre; + + @Override + public void doAfterCompose(Component comp) throws Exception { + super.doAfterCompose(comp); + + tipoInformativoList.setItemRenderer(new RenderTipoInformativoComissao()); + tipoInformativoList.addEventListener("onDoubleClick", new EventListener() { + + @Override + public void onEvent(Event event) throws Exception { + TipoInformativoComissao tc = (TipoInformativoComissao) tipoInformativoList.getSelected(); + verTipoInformativo(tc); + } + }); + + refreshLista(); + + txtNombre.focus(); + } + + public Paging getPagingTipoInformativo() { + return pagingTipoInformativo; + } + + public void setPagingTipoInformativo(Paging pagingTipoInformativo) { + this.pagingTipoInformativo = pagingTipoInformativo; + } + + public PagedListWrapper getPlwTipoInformativo() { + return plwTipoInformativo; + } + + public void setPlwTipoInformativo(PagedListWrapper plwTipoInformativo) { + this.plwTipoInformativo = plwTipoInformativo; + } + + public MyListbox getTipoInformativoList() { + return tipoInformativoList; + } + + public void setTipoInformativoList(MyListbox tipoInformativoList) { + this.tipoInformativoList = tipoInformativoList; + } + + public Textbox getTxtNombre() { + return txtNombre; + } + + public void setTxtNombre(Textbox txtNombre) { + this.txtNombre = txtNombre; + } + + public void onClick$btnPesquisa(Event ev) throws InterruptedException { + refreshLista(); + } + + public void onClick$btnRefresh(Event ev) { + refreshLista(); + } + + public void onClick$btnNovo(Event ev) { + verTipoInformativo(new TipoInformativoComissao()); + } + + private void verTipoInformativo(TipoInformativoComissao tipoInformativoComissao) { + if (tipoInformativoComissao == null) { + return; + } + + Map args = new HashMap(); + args.put("tipoInformativoComissao", tipoInformativoComissao); + args.put("tipoInformativoComissaoList", tipoInformativoList); + + openWindow("/gui/catalogos/editarTipoInformativoComissao.zul", + Labels.getLabel("busquedaTipoServicioController.window.title"), args, MODAL); + } + + private void refreshLista() { + HibernateSearchObject claseServicioBusqueda = new HibernateSearchObject(TipoInformativoComissao.class, pagingTipoInformativo.getPageSize()); + + claseServicioBusqueda.addFilterLike("desctipo", "%" + txtNombre.getText().trim().concat("%")); + claseServicioBusqueda.addFilterEqual("activo", Boolean.TRUE); + claseServicioBusqueda.addSortAsc("desctipo"); + + plwTipoInformativo.init(claseServicioBusqueda, tipoInformativoList, pagingTipoInformativo); + } + +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/comissao/ConferenciaController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/comissao/ConferenciaController.java index 3bfdbc70b..b03d87cd9 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/comissao/ConferenciaController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/comissao/ConferenciaController.java @@ -21,7 +21,9 @@ import org.zkoss.zk.ui.event.CheckEvent; import org.zkoss.zk.ui.event.Event; import org.zkoss.zk.ui.event.EventListener; import org.zkoss.zul.Checkbox; +import org.zkoss.zul.Combobox; import org.zkoss.zul.Comboitem; +import org.zkoss.zul.Label; import org.zkoss.zul.Listcell; import org.zkoss.zul.Listitem; import org.zkoss.zul.Radio; @@ -31,12 +33,14 @@ import com.rjconsultores.ventaboletos.entidad.Conferencia; import com.rjconsultores.ventaboletos.entidad.Empresa; import com.rjconsultores.ventaboletos.entidad.LogConferencia; import com.rjconsultores.ventaboletos.entidad.PuntoVenta; +import com.rjconsultores.ventaboletos.entidad.TipoInformativoComissao; import com.rjconsultores.ventaboletos.enums.IndStatusBoleto; import com.rjconsultores.ventaboletos.enums.comissao.BoletoStatusComissao; import com.rjconsultores.ventaboletos.enums.comissao.StatusLogConferencia; import com.rjconsultores.ventaboletos.enums.comissao.TipoLogConferencia; import com.rjconsultores.ventaboletos.exception.BusinessException; import com.rjconsultores.ventaboletos.service.ConferenciaComissaoService; +import com.rjconsultores.ventaboletos.service.TipoInformativoComissaoService; import com.rjconsultores.ventaboletos.utilerias.BigDecimalUtil; import com.rjconsultores.ventaboletos.utilerias.DateUtil; import com.rjconsultores.ventaboletos.utilerias.LocaleUtil; @@ -59,6 +63,8 @@ import com.rjconsultores.ventaboletos.web.utilerias.render.RenderFormapagoComiss import com.rjconsultores.ventaboletos.web.utilerias.render.RenderLogConferencia; import com.rjconsultores.ventaboletos.web.utilerias.render.RenderOcd; +import oracle.net.aso.r; + @Scope("prototype") @Controller("conferenciaController") public class ConferenciaController extends MyGenericForwardComposer { @@ -69,6 +75,9 @@ public class ConferenciaController extends MyGenericForwardComposer { @Autowired private ConferenciaComissaoService conferenciaComissaoService; + + @Autowired + private TipoInformativoComissaoService tipoInformativoComissaoService; private String datamovimento; private Empresa empresa; @@ -141,6 +150,7 @@ public class ConferenciaController extends MyGenericForwardComposer { private Radio rDebito; private Radio rCredito; + private Radio rInformativo; private ResumoComissao resumo; private BigDecimal totalBilhetesManual; @@ -160,10 +170,15 @@ public class ConferenciaController extends MyGenericForwardComposer { private MyListbox formapagosList; private ConferenciaComissaoVO conferenciaComissao; - + + private Label lblTipoInformativo; + private Combobox cmbTipoInformativo; + + private List lsTipoInformativo; + @Override public void doAfterCompose(Component comp) throws Exception { - + lsTipoInformativo = tipoInformativoComissaoService.obtenerTodos(); conferenciaList = (MyListbox) Executions.getCurrent().getArg().get("conferenciaList"); Long conferenciaId = (Long) Executions.getCurrent().getArg().get("conferenciaId"); datamovimento = (String) Executions.getCurrent().getArg().get("datamovimento"); @@ -258,10 +273,12 @@ public class ConferenciaController extends MyGenericForwardComposer { txtPrecoLog.setDisabled(true); rDebito.setDisabled(true); rCredito.setDisabled(true); + rInformativo.setDisabled(true); } else if (StatusLogConferencia.PENDENCIA.equals(status)) { txtPrecoLog.setDisabled(false); rDebito.setDisabled(false); rCredito.setDisabled(false); + rInformativo.setDisabled(false); } } }); @@ -785,6 +802,17 @@ public class ConferenciaController extends MyGenericForwardComposer { conferencia.setDatamovimento(DateUtil.getDateFromString(datamovimento, "dd/MM/yyyy")); } } + + private Short getDebitoCreditoInfo(){ + if(rCredito.isSelected()){ + return (short) 1; + }else if(rDebito.isSelected()){ + return (short) 0; + }else{ + return (short) 2; + } + } + public void onClick$btnAdicionarObservacaoLog(Event event) throws InterruptedException { try { @@ -796,7 +824,10 @@ public class ConferenciaController extends MyGenericForwardComposer { logConferencia.setConferencia(conferencia); logConferencia.setStatus(StatusLogConferencia.getStatusLogConferencia((Integer) cmbSituacaoLog.getSelectedItem().getValue())); logConferencia.setTipo(TipoLogConferencia.AVULSO); - logConferencia.setIndcredito(!rDebito.isChecked()); + logConferencia.setIndcredito(getDebitoCreditoInfo()); + if(logConferencia.isIndcredito().equals((short) 2)){ + logConferencia.setTipoInformativoComissao((TipoInformativoComissao)cmbTipoInformativo.getSelectedItem().getValue()); + } conferenciaComissaoService.suscribirLogConferencia(logConferencia); carregarLogsConferencia(); @@ -816,7 +847,20 @@ public class ConferenciaController extends MyGenericForwardComposer { } private boolean validarCamposObservacao() throws InterruptedException { - try { + + try{ + if(rInformativo.isSelected() && cmbTipoInformativo.getValue() == null){ + return false; + } + }catch(Exception e){ + Messagebox.show(Labels.getLabel("conferenciaController.MSG.tipoInfomativoObrigatorio"), + Labels.getLabel("conferenciaController.window.title"), + Messagebox.OK,Messagebox.ERROR); + return false; + } + + try { + if (StringUtils.isBlank(txtObservacaoLog.getValue())) { Messagebox.show(Labels.getLabel("conferenciaController.MSG.observacaoObrigatorio"), Labels.getLabel("conferenciaController.window.title"), @@ -1077,7 +1121,7 @@ public class ConferenciaController extends MyGenericForwardComposer { logConferencia.setConferencia(conferencia); logConferencia.setStatus(StatusLogConferencia.CONFERIDO); logConferencia.setTipo(tipo); - logConferencia.setIndcredito(Boolean.TRUE); + logConferencia.setIndcredito((short) 1); if (tipo.equals(TipoLogConferencia.BOLETO)) { logConferencia.setBoletoId(id); @@ -1219,4 +1263,35 @@ public class ConferenciaController extends MyGenericForwardComposer { this.formapagosList = formapagosList; } + public void onClick$rInformativo(){ + hideShowTipoInformativo(false); + } + + public void onClick$rDebito(){ + hideShowTipoInformativo(true); + } + + public void onClick$rCredito(){ + hideShowTipoInformativo(true); + } + + private void hideShowTipoInformativo(Boolean disable){ + cmbTipoInformativo.setDisabled(disable); + + if(!disable){ + cmbTipoInformativo.setConstraint("no empty"); + }else{ + cmbTipoInformativo.setConstraint(""); + cmbTipoInformativo.clearErrorMessage(); + cmbTipoInformativo.setValue(null); + } + } + + public List getLsTipoInformativo() { + return lsTipoInformativo; + } + + public void setLsTipoInformativo(List lsTipoInformativo) { + this.lsTipoInformativo = lsTipoInformativo; + } } diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/comissao/EditarLogConfenciaComissaoController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/comissao/EditarLogConfenciaComissaoController.java index 030c15bfb..4169efd4c 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/comissao/EditarLogConfenciaComissaoController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/comissao/EditarLogConfenciaComissaoController.java @@ -1,5 +1,7 @@ package com.rjconsultores.ventaboletos.web.gui.controladores.comissao; +import java.util.List; + import org.apache.commons.lang.StringUtils; import org.apache.log4j.Logger; import org.springframework.beans.factory.annotation.Autowired; @@ -9,14 +11,17 @@ import org.zkoss.util.resource.Labels; import org.zkoss.zk.ui.Component; import org.zkoss.zk.ui.Executions; import org.zkoss.zk.ui.event.Event; +import org.zkoss.zul.Combobox; import org.zkoss.zul.Messagebox; import org.zkoss.zul.Radio; import com.rjconsultores.ventaboletos.entidad.Conferencia; import com.rjconsultores.ventaboletos.entidad.LogConferencia; +import com.rjconsultores.ventaboletos.entidad.TipoInformativoComissao; import com.rjconsultores.ventaboletos.enums.comissao.StatusLogConferencia; import com.rjconsultores.ventaboletos.enums.comissao.TipoLogConferencia; import com.rjconsultores.ventaboletos.service.ConferenciaComissaoService; +import com.rjconsultores.ventaboletos.service.TipoInformativoComissaoService; import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado; import com.rjconsultores.ventaboletos.vo.comissao.BoletoComissao; import com.rjconsultores.ventaboletos.vo.comissao.EventosFinanceirosVO; @@ -38,6 +43,9 @@ public class EditarLogConfenciaComissaoController extends MyGenericForwardCompos @Autowired private ConferenciaComissaoService conferenciaComissaoService; + @Autowired + private TipoInformativoComissaoService tipoInformativoComissaoService; + private MyListbox logsConferenciaList; private MyListbox atualizarList; @@ -50,9 +58,15 @@ public class EditarLogConfenciaComissaoController extends MyGenericForwardCompos private OcdVO ocd; private Radio rDebito; + private Radio rCredito; + private Radio rInformativo; + + private Combobox cmbTipoInformativo; + private List lsTipoInformativo; @Override public void doAfterCompose(Component comp) throws Exception { + lsTipoInformativo = tipoInformativoComissaoService.obtenerTodos(); boletoComissao = (BoletoComissao) Executions.getCurrent().getArg().get("boletoComissao"); eventosFinanceiros = (EventosFinanceirosVO) Executions.getCurrent().getArg().get("eventosFinanceiros"); ocd = (OcdVO) Executions.getCurrent().getArg().get("ocd"); @@ -73,6 +87,16 @@ public class EditarLogConfenciaComissaoController extends MyGenericForwardCompos } + private Short getDebitoCreditoInfo(){ + if(rCredito.isSelected()){ + return (short) 1; + }else if(rDebito.isSelected()){ + return (short) 0; + }else{ + return (short) 2; + } + } + public void onClick$btnSalvar(Event ev) throws InterruptedException { try { @@ -84,7 +108,10 @@ public class EditarLogConfenciaComissaoController extends MyGenericForwardCompos logConferencia.setConferencia(conferencia); logConferencia.setStatus(StatusLogConferencia.PENDENCIA); logConferencia.setTipo(TipoLogConferencia.AVULSO); - logConferencia.setIndcredito(!rDebito.isChecked()); + logConferencia.setIndcredito(getDebitoCreditoInfo()); + if(logConferencia.isIndcredito().equals((short) 2)){ + logConferencia.setTipoInformativoComissao((TipoInformativoComissao)cmbTipoInformativo.getSelectedItem().getValue()); + } if(boletoComissao != null) { logConferencia.setBoletoId(boletoComissao.getBoletoId()); @@ -123,7 +150,6 @@ public class EditarLogConfenciaComissaoController extends MyGenericForwardCompos atualizarLogConferenciaList(logConferencia); atualizarList(); - Messagebox.show(Labels.getLabel("conferenciaController.msg.adicionarLogConferencia"), Labels.getLabel("conferenciaController.window.title"), Messagebox.OK,Messagebox.INFORMATION); @@ -140,7 +166,19 @@ public class EditarLogConfenciaComissaoController extends MyGenericForwardCompos } } - private boolean validarCamposObservacao() throws InterruptedException { + private boolean validarCamposObservacao() throws InterruptedException { + try{ + if(rInformativo.isSelected() && cmbTipoInformativo.getValue() == null){ + cmbTipoInformativo.getValue(); + return false; + } + }catch(Exception e){ + Messagebox.show(Labels.getLabel("conferenciaController.MSG.tipoInfomativoObrigatorio"), + Labels.getLabel("conferenciaController.window.title"), + Messagebox.OK,Messagebox.ERROR); + return false; + } + try { if(StringUtils.isBlank(txtObservacaoLog.getValue())) { Messagebox.show(Labels.getLabel("conferenciaController.MSG.observacaoObrigatorio"), @@ -178,6 +216,8 @@ public class EditarLogConfenciaComissaoController extends MyGenericForwardCompos if(boletoComissao != null) { logConferenciaVO.setNumfoliosistema(boletoComissao.getNumFolioSistema()); } + logConferenciaVO.setDesctipoinformativo(logConferencia.getTipoInformativoComissao() != null ? + logConferencia.getTipoInformativoComissao().getDesctipo() : null); logConferenciaVO.setObservacao(logConferencia.getObservacao()); logConferenciaVO.setPreco(logConferencia.getPreco()); logConferenciaVO.setStatus(logConferencia.getStatus().getValue()); @@ -185,5 +225,38 @@ public class EditarLogConfenciaComissaoController extends MyGenericForwardCompos logConferenciaVO.setIndcredito(logConferencia.isIndcredito()); logsConferenciaList.updateItem(logConferenciaVO); } + + public List getLsTipoInformativo() { + return lsTipoInformativo; + } + + public void setLsTipoInformativo(List lsTipoInformativo) { + this.lsTipoInformativo = lsTipoInformativo; + } + + public void onClick$rInformativo(){ + hideShowTipoInformativo(false); + } + + public void onClick$rDebito(){ + hideShowTipoInformativo(true); + } + + public void onClick$rCredito(){ + hideShowTipoInformativo(true); + } + + private void hideShowTipoInformativo(Boolean disable){ + cmbTipoInformativo.setDisabled(disable); + + if(!disable){ + cmbTipoInformativo.setConstraint("no empty"); + }else{ + cmbTipoInformativo.setConstraint(""); + cmbTipoInformativo.clearErrorMessage(); + cmbTipoInformativo.setValue(null); + } + } + } diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/comissao/ItemMenuTipoInformativoComissao.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/comissao/ItemMenuTipoInformativoComissao.java new file mode 100644 index 000000000..feeed1886 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/comissao/ItemMenuTipoInformativoComissao.java @@ -0,0 +1,23 @@ +package com.rjconsultores.ventaboletos.web.utilerias.menu.item.comissao; + +import org.zkoss.util.resource.Labels; + +import com.rjconsultores.ventaboletos.web.utilerias.PantallaUtileria; +import com.rjconsultores.ventaboletos.web.utilerias.menu.DefaultItemMenuSistema; + +public class ItemMenuTipoInformativoComissao extends DefaultItemMenuSistema { + public ItemMenuTipoInformativoComissao() { + super("indexController.mniTipoInformativoComissao.label"); + } + + @Override + public String getClaveMenu() { + return "COM.RJCONSULTORES.ADMINISTRACION.GUI.COMISSAO.MENU.TIPOINFORMATIVO"; + } + + @Override + public void ejecutar() { + PantallaUtileria.openWindow("/gui/catalogos/busquedaTipoInformativoComissao.zul", + Labels.getLabel("busquedaTipoInformativoComissao.window.title"), getArgs(), desktop); + } +} \ No newline at end of file diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderLogConferencia.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderLogConferencia.java index 311a95eec..7d12af85e 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderLogConferencia.java +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderLogConferencia.java @@ -32,6 +32,9 @@ public class RenderLogConferencia implements ListitemRenderer { lc = new Listcell(logConferencia.getDescdebitocredito()); lc.setParent(lstm); + + lc = new Listcell(logConferencia.getDesctipoinformativo()); + lc.setParent(lstm); lc = new Listcell(BigDecimalUtil.getBigDecimalToStringDouble2CasasDecimaisFormatado(logConferencia.getPreco(), LocaleUtil.getLocale())); lc.setParent(lstm); diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderTipoInformativoComissao.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderTipoInformativoComissao.java new file mode 100644 index 000000000..8bc2ba771 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderTipoInformativoComissao.java @@ -0,0 +1,31 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ +package com.rjconsultores.ventaboletos.web.utilerias.render; + +import com.rjconsultores.ventaboletos.entidad.TipoConvenio; +import com.rjconsultores.ventaboletos.entidad.TipoInformativoComissao; + +import org.zkoss.zul.Listcell; +import org.zkoss.zul.Listitem; +import org.zkoss.zul.ListitemRenderer; + +/** + * + * @author Shiro + */ +public class RenderTipoInformativoComissao implements ListitemRenderer { + + public void render(Listitem lstm, Object o) throws Exception { + TipoInformativoComissao tipoInformativo = (TipoInformativoComissao) o; + + Listcell lc = new Listcell(tipoInformativo.getTipoinformativoId().toString()); + lc.setParent(lstm); + + lc = new Listcell(tipoInformativo.getDesctipo()); + lc.setParent(lstm); + + lstm.setAttribute("data", tipoInformativo); + } +} diff --git a/src/java/spring-config.xml b/src/java/spring-config.xml index 6142d800a..33f92fdc0 100644 --- a/src/java/spring-config.xml +++ b/src/java/spring-config.xml @@ -425,6 +425,7 @@ com.rjconsultores.ventaboletos.entidad.MensajeUsuario com.rjconsultores.ventaboletos.entidad.Mensaje com.rjconsultores.ventaboletos.entidad.ClasseIndicePeaje + com.rjconsultores.ventaboletos.entidad.TipoInformativoComissao diff --git a/web/WEB-INF/i3-label_es_MX.label b/web/WEB-INF/i3-label_es_MX.label index 89214be48..e73e9ab73 100644 --- a/web/WEB-INF/i3-label_es_MX.label +++ b/web/WEB-INF/i3-label_es_MX.label @@ -6430,6 +6430,7 @@ conferenciaController.lhTipoLog.value = Tipo conferenciaController.lhBoleto.value = Boleto conferenciaController.lhObservacao.value = Observación conferenciaController.lhValorLog.value = Valor Bilhete +conferenciaController.lhTipoInformativo.value = Tipo Informativo conferenciaController.lhValorTabela.value = Valor Tabela conferenciaController.lhNombusuario.value = Usuário conferenciaController.lhFecmodif.value = Cambio de Fecha @@ -6462,9 +6463,11 @@ conferenciaController.MSG.bilheteSemConferenciaFormapagoCategoria = Existen Pasa conferenciaController.MSG.eventosFinanceirosSemConferenciaFormapago = Existen Eventos Financieros Sin Conferencia conferenciaController.MSG.ocdSemConferencia = Existen Ocds sin conferencia conferenciaController.MSG.observacaoObrigatorio = El Campo Observación Debe de Ser Llenado. +conferenciaController.MSG.tipoInfomativoObrigatorio = O campo Tipo Informativo deve ser preenchido. conferenciaController.lhDebitoCredito.value = D/C conferenciaController.lbDebito.value = Débito conferenciaController.lbCredito.value = Crédito +conferenciaController.lbInformativo.value = Informativo conferenciaController.lbValorTotal.label = Total conferenciaController.lbValorTotalVendidos.label = Total Vendidos conferenciaController.lbValorTotalDevolvidos.label = Total Devueltos @@ -6506,6 +6509,19 @@ editarLogConferenciaComissaoController.lhValorLog.value = Valor editarLogConferenciaComissaoController.btnCerrar.tooltiptext editarLogConferenciaComissaoController.btnAdicionarObservacaoLog.tooltiptext = Adicionar Observación +# Tipo Informativo Comissão +indexController.mniTipoInformativoComissao.label = Tipo Informativo Comissão +busquedaTipoInformativoComissao.window.title = Tipo Informativo Comissão +busquedaTipoServicioController.window.title = Tipo Informativo Comissão +busquedaTipoInformativoComissao.txtNombre.label = Nome +busquedaTipoInformativoComissaoController.lhId.label = ID +busquedaTipoInformativoComissaoController.lhDes.label = Descrição +editarTipoInformativoComissaoController.lbNome.value = Descrição +editarTipoInformativoComissaoController.MSG.DescricaoDuplicada = Já existe um Tipo Informativo Comissão com esta descrição. +editarTipoInformativoComissaoController.MSG.suscribirOK = Tipo Informativo Comissão cadastrado com sucesso. +editarTipoInformativoComissaoController.MSG.BorrarPergunta = Deseja eliminar esse Tipo Informativo Comissão? +editarTipoInformativoComissaoController.MSG.BorrarOK = Tipo Informativo Comissão excluido com sucesso. + # Filtro Depósitos relatorioDepositosController.window.title=Cierre Cnt Contábil / Depósitos relatorioDepositosController.lbDatInicial.value=Fecha Inicial diff --git a/web/WEB-INF/i3-label_pt_BR.label b/web/WEB-INF/i3-label_pt_BR.label index b2c13a31e..e032a3b55 100644 --- a/web/WEB-INF/i3-label_pt_BR.label +++ b/web/WEB-INF/i3-label_pt_BR.label @@ -6604,6 +6604,7 @@ conferenciaController.lhTipoLog.value = Tipo conferenciaController.lhBoleto.value = Boleto conferenciaController.lhObservacao.value = Observação conferenciaController.lhValorLog.value = Valor Bilhete +conferenciaController.lhTipoInformativo.value = Tipo Informativo conferenciaController.lhValorTabela.value = Valor Tabela conferenciaController.lhNombusuario.value = Usuário conferenciaController.lhFecmodif.value = Data Alteração @@ -6636,10 +6637,12 @@ conferenciaController.MSG.bilheteSemConferenciaFormapagoCategoria = Existem Bilh conferenciaController.MSG.eventosFinanceirosSemConferenciaFormapago = Existem Eventos Financeiros sem conferência conferenciaController.MSG.ocdSemConferencia = Existem Ocds sem conferência conferenciaController.MSG.observacaoObrigatorio = O campo observação deve ser preenchido. +conferenciaController.MSG.tipoInfomativoObrigatorio = O campo Tipo Informativo deve ser preenchido. conferenciaController.lhDebitoCredito.value = D/C conferenciaController.lbDebitoCredito.value = Débito/Crédito conferenciaController.lbDebito.value = Débito conferenciaController.lbCredito.value = Crédito +conferenciaController.lbInformativo.value = Informativo conferenciaController.lbValorTotal.label = Total conferenciaController.lbValorTotalVendidos.label = Total Vendidos conferenciaController.lbValorTotalDevolvidos.label = Total Devolvidos @@ -6681,6 +6684,19 @@ editarLogConferenciaComissaoController.lhValorLog.value = Valor editarLogConferenciaComissaoController.btnCerrar.tooltiptext editarLogConferenciaComissaoController.btnAdicionarObservacaoLog.tooltiptext = Adicionar Observação +# Tipo Informativo Comissão +indexController.mniTipoInformativoComissao.label = Tipo Informativo Comissão +busquedaTipoInformativoComissao.window.title = Tipo Informativo Comissão +busquedaTipoServicioController.window.title = Tipo Informativo Comissão +busquedaTipoInformativoComissao.txtNombre.label = Nome +busquedaTipoInformativoComissaoController.lhId.label = ID +busquedaTipoInformativoComissaoController.lhDes.label = Descrição +editarTipoInformativoComissaoController.lbNome.value = Descrição +editarTipoInformativoComissaoController.MSG.DescricaoDuplicada = Já existe um Tipo Informativo Comissão com esta descrição. +editarTipoInformativoComissaoController.MSG.suscribirOK = Tipo Informativo Comissão cadastrado com sucesso. +editarTipoInformativoComissaoController.MSG.BorrarPergunta = Deseja eliminar esse Tipo Informativo Comissão? +editarTipoInformativoComissaoController.MSG.BorrarOK = Tipo Informativo Comissão excluido com sucesso. + # Filtro Depósitos relatorioDepositosController.window.title=Fechamento Cnt Corrente / Depósitos relatorioDepositosController.lbDatInicial.value=Data Inicial diff --git a/web/gui/catalogos/busquedaTipoInformativoComissao.zul b/web/gui/catalogos/busquedaTipoInformativoComissao.zul new file mode 100644 index 000000000..d0b45ade8 --- /dev/null +++ b/web/gui/catalogos/busquedaTipoInformativoComissao.zul @@ -0,0 +1,51 @@ + + + + + + + + + +