diff --git a/pom.xml b/pom.xml
index 181c6fa60..4afe4d788 100644
--- a/pom.xml
+++ b/pom.xml
@@ -4,12 +4,12 @@
4.0.0
br.com.rjconsultores
ventaboletosadm
- 1.128.3
+ 1.128.35
war
- 1.98.0
- 1.86.0
+ 1.98.1
+ 1.86.1
UTF-8
diff --git a/src/java/com/rjconsultores/ventaboletos/web/cliente/conf/database.properties b/src/java/com/rjconsultores/ventaboletos/web/cliente/conf/database.properties
index 946055520..3b9008f0f 100644
--- a/src/java/com/rjconsultores/ventaboletos/web/cliente/conf/database.properties
+++ b/src/java/com/rjconsultores/ventaboletos/web/cliente/conf/database.properties
@@ -5,7 +5,7 @@ database.jndi.resourceRef=false
#Banco de backup - Utilizado em relatórios
#!!!!!!!!!!!!!!!!!!!!!!Nunca mudar o datasource de leitura abaixo!!!!!!!!!!!!!!!!!!!!!!
-database.read.jndi.name=java:/sco_read
+database.read.jndi.name=java:/sco
database.read.jndi.resourceRef=false
database.rds=true
diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/configuracioneccomerciales/BusquedaConfiguracionProductosController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/configuracioneccomerciales/BusquedaConfiguracionProductosController.java
new file mode 100644
index 000000000..1afd6b3cd
--- /dev/null
+++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/configuracioneccomerciales/BusquedaConfiguracionProductosController.java
@@ -0,0 +1,194 @@
+package com.rjconsultores.ventaboletos.web.gui.controladores.configuracioneccomerciales;
+
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+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.zhtml.Messagebox;
+import org.zkoss.zk.ui.Component;
+import org.zkoss.zk.ui.event.Event;
+import org.zkoss.zk.ui.event.EventListener;
+import org.zkoss.zul.Combobox;
+import org.zkoss.zul.Datebox;
+import org.zkoss.zul.Paging;
+
+import com.rjconsultores.ventaboletos.entidad.ConfiguracionProducto;
+import com.rjconsultores.ventaboletos.entidad.TipoEventoExtra;
+import com.rjconsultores.ventaboletos.service.TipoEventoExtraService;
+import com.rjconsultores.ventaboletos.utilerias.DateUtil;
+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.RenderConfiguracionProducto;
+
+/**
+*
+* @author Luis Espina
+*/
+@Controller("busquedaConfiguracionProductosController")
+@Scope("prototype")
+public class BusquedaConfiguracionProductosController extends MyGenericForwardComposer{
+
+ private static final long serialVersionUID = 1L;
+
+ @Autowired
+ private TipoEventoExtraService tipoEventoExtraService;
+ @Autowired
+ private transient PagedListWrapper plwConfiguracionProducto;
+
+ private Combobox cmbTipoEventoExtra;
+ private List lsTipoEventoExtra;
+ private TipoEventoExtra tipoEventoExtra;
+ private Datebox fecInicio;
+ private Datebox fecFinal;
+ private Paging pagingConfiguracionProductos;
+ private MyListbox configuracionProductoList;
+ private BusquedaConfiguracionProductosController bcp;
+
+
+ public void doAfterCompose(Component comp) throws Exception {
+ super.doAfterCompose(comp);
+ bcp = this;
+ lsTipoEventoExtra = tipoEventoExtraService.obtenerTodos();
+
+ configuracionProductoList.setItemRenderer(new RenderConfiguracionProducto());
+ configuracionProductoList.addEventListener("onDoubleClick", new EventListener() {
+
+ @Override
+ public void onEvent(Event event) throws Exception {
+ ConfiguracionProducto configuracionProducto = (ConfiguracionProducto) configuracionProductoList.getSelected();
+ verConfiguracionProducto(configuracionProducto);
+ }
+ });
+ refreshLista();
+ }
+
+ @SuppressWarnings({ "rawtypes", "unchecked" })
+ private void verConfiguracionProducto(ConfiguracionProducto configuracionProducto) {
+ if (configuracionProducto == null) {
+ return;
+ }
+
+ Map args = new HashMap();
+ args.put("configuracionProducto", configuracionProducto);
+ args.put("principal", bcp);
+ args.put("lsTipoEventoExtra", lsTipoEventoExtra);
+ args.put("configuracionProductoList", configuracionProductoList);
+
+ openWindow("/gui/configuraciones_comerciales/editarConfiguracionProductos.zul",
+ Labels.getLabel("editarConfiguracionProductosController.window.title"), args, MODAL);
+ }
+
+ private void refreshLista() {
+
+ HibernateSearchObject configuracionProductoBusqueda =
+ new HibernateSearchObject(ConfiguracionProducto.class, pagingConfiguracionProductos.getPageSize());
+
+ configuracionProductoBusqueda.addFilterEqual("activo", Boolean.TRUE);
+ TipoEventoExtra tipoEventoExtra = (TipoEventoExtra)(cmbTipoEventoExtra.getSelectedItem() != null ? cmbTipoEventoExtra.getSelectedItem().getValue() : null);
+
+ if (tipoEventoExtra != null) {
+ configuracionProductoBusqueda.addFilterEqual("tipoeventoextra", tipoEventoExtra);
+ }
+ if (fecInicio.getValue() != null) {
+ Date inicio = DateUtil.inicioFecha(fecInicio.getValue());
+ configuracionProductoBusqueda.addFilterGreaterOrEqual("fecVigenciaInicial", inicio);
+ }
+ if (fecFinal.getValue() != null) {
+ Date fin = DateUtil.fimFecha(fecFinal.getValue());
+ configuracionProductoBusqueda.addFilterLessOrEqual("fecVigenciaFinal", fin);
+ }
+ plwConfiguracionProducto.init(configuracionProductoBusqueda, configuracionProductoList, pagingConfiguracionProductos);
+ if (configuracionProductoList.getData().length == 0) {
+ try {
+ Messagebox.show(Labels.getLabel("MSG.ningunRegistro"),
+ Labels.getLabel("busquedaConfiguracionProductosController.window.title"),
+ Messagebox.OK, Messagebox.INFORMATION);
+ } catch (InterruptedException ex) {
+ }
+ }
+ }
+
+ public void onClick$btnPesquisa(Event ev) throws InterruptedException {
+
+ if (fecInicio.getValue() != null && fecFinal.getValue() != null) {
+ if (fecInicio.getValue().after(fecFinal.getValue())) {
+ Messagebox.show(
+ Labels.getLabel("busquedaConfiguracionProductosController.MSG.busquedaPeriodo"),
+ Labels.getLabel("busquedaConfiguracionProductosController.window.title"),
+ Messagebox.OK, Messagebox.INFORMATION);
+ } else {
+ refreshLista();
+ }
+ } else {
+ refreshLista();
+ }
+
+ refreshLista();
+
+ fecInicio.focus();
+ }
+
+ public void onClick$btnRefresh(Event ev) {
+ refreshLista();
+ }
+
+ public void onClick$btnNovo(Event ev) {
+ verConfiguracionProducto(new ConfiguracionProducto());
+ }
+
+ public Combobox getCmbTipoEventoExtra() {
+ return cmbTipoEventoExtra;
+ }
+
+ public void setCmbTipoEventoExtra(Combobox cmbTipoEventoExtra) {
+ this.cmbTipoEventoExtra = cmbTipoEventoExtra;
+ }
+
+ public List getLsTipoEventoExtra() {
+ return lsTipoEventoExtra;
+ }
+
+ public void setLsTipoEventoExtra(List lsTipoEventoExtra) {
+ this.lsTipoEventoExtra = lsTipoEventoExtra;
+ }
+
+ public Datebox getFecInicio() {
+ return fecInicio;
+ }
+
+ public void setFecInicio(Datebox fecInicio) {
+ this.fecInicio = fecInicio;
+ }
+
+ public Datebox getFecFinal() {
+ return fecFinal;
+ }
+
+ public void setFecFinal(Datebox fecFinal) {
+ this.fecFinal = fecFinal;
+ }
+
+ public TipoEventoExtra getTipoEventoExtra() {
+ return tipoEventoExtra;
+ }
+
+ public void setTipoEventoExtra(TipoEventoExtra tipoEventoExtra) {
+ this.tipoEventoExtra = tipoEventoExtra;
+ }
+
+ public MyListbox getConfiguracionProductoList() {
+ return configuracionProductoList;
+ }
+
+ public void setConfiguracionProductoList(MyListbox configuracionProductoList) {
+ this.configuracionProductoList = configuracionProductoList;
+ }
+
+}
diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/configuracioneccomerciales/EditarConfiguracionProductosController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/configuracioneccomerciales/EditarConfiguracionProductosController.java
new file mode 100644
index 000000000..9c6669949
--- /dev/null
+++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/configuracioneccomerciales/EditarConfiguracionProductosController.java
@@ -0,0 +1,324 @@
+package com.rjconsultores.ventaboletos.web.gui.controladores.configuracioneccomerciales;
+
+import java.util.ArrayList;
+import java.util.Calendar;
+import java.util.Date;
+import java.util.List;
+
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.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.Combobox;
+import org.zkoss.zul.Datebox;
+import org.zkoss.zul.Messagebox;
+
+import com.rjconsultores.ventaboletos.entidad.ConfiguracionProducto;
+import com.rjconsultores.ventaboletos.entidad.ConfiguracionProductoParada;
+import com.rjconsultores.ventaboletos.entidad.Parada;
+import com.rjconsultores.ventaboletos.entidad.TipoEventoExtra;
+import com.rjconsultores.ventaboletos.service.ConfiguracionProductoParadaService;
+import com.rjconsultores.ventaboletos.service.ConfiguracionProductoService;
+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.MyTextboxDecimal;
+import com.rjconsultores.ventaboletos.web.utilerias.render.RenderConfiguracionProductoParada;
+
+/**
+ *
+ * @author Luis Espina
+ */
+@Controller("editarConfiguracionProductosController")
+@Scope("prototype")
+public class EditarConfiguracionProductosController extends MyGenericForwardComposer{
+
+ private static final long serialVersionUID = 1L;
+ @Autowired
+ private ConfiguracionProductoService configuracionProductoService;
+
+ @Autowired
+ private ConfiguracionProductoParadaService configuracionProductoParadaService;
+
+ private static Logger log = LogManager.getLogger(EditarConfiguracionProductosController.class);
+ private ConfiguracionProducto configuracionProducto;
+ private BusquedaConfiguracionProductosController winCPC;
+ @SuppressWarnings("unused")
+ private MyListbox lstPrincipal;
+ private Combobox cmbTipoEventoExtra;
+ private List lsTipoEventoExtra;
+ private List configuracionProductoParadaLst;
+ private TipoEventoExtra tipoEventoExtra;
+ private MyTextboxDecimal txtPrecio;
+ private MyListbox configuracionProductoParadaList;
+ private Button btnApagar;
+ private Datebox fecInicio;
+ private Datebox fecFinal;
+ private Combobox cmbParada;
+
+ @SuppressWarnings("unchecked")
+ @Override
+ public void doAfterCompose(Component comp) throws Exception {
+ super.doAfterCompose(comp);
+
+ configuracionProducto = (ConfiguracionProducto) Executions.getCurrent().getArg().get("configuracionProducto");
+ winCPC = (BusquedaConfiguracionProductosController) Executions.getCurrent().getArg().get("principal");
+ lstPrincipal = (MyListbox) Executions.getCurrent().getArg().get("configuracionProductoList");
+ lsTipoEventoExtra = (List) Executions.getCurrent().getArg().get("lsTipoEventoExtra");
+
+ configuracionProductoParadaLst = new ArrayList();
+ configuracionProductoParadaList.setItemRenderer(new RenderConfiguracionProductoParada());
+
+ if (configuracionProducto.getConfiguracionProductoId() == null) {
+ btnApagar.setVisible(Boolean.FALSE);
+ }else {
+ configuracionProductoParadaLst = configuracionProductoParadaService.buscarPorId(configuracionProducto);
+ configuracionProductoParadaList.setData(configuracionProductoParadaLst);
+ }
+ }
+
+ public void onClick$btnAdicionarProductoParada(Event ev) throws InterruptedException {
+ try {
+ if (!cmbParada.getValue().equals("")) {
+ Parada parada = (Parada) cmbParada.getSelectedItem().getValue();
+ ConfiguracionProductoParada configuracionProductoParada = new ConfiguracionProductoParada();
+ configuracionProductoParada.setConfiguracionProducto(configuracionProducto);
+ configuracionProductoParada.setParadaId(parada);
+ configuracionProductoParada.setActivo(Boolean.TRUE);
+ configuracionProductoParada.setFecmodif(Calendar.getInstance().getTime());
+ configuracionProductoParada.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId());
+
+ configuracionProductoParadaLst.add(configuracionProductoParada);
+ configuracionProductoParadaList.setData(new ArrayList());
+ List lsTemp = new ArrayList();
+ for (ConfiguracionProductoParada cpp : configuracionProductoParadaLst) {
+ if (cpp.getActivo()) {
+ lsTemp.add(cpp);
+ }
+ }
+ configuracionProductoParadaList.setData(lsTemp);
+
+ }else {
+ Messagebox.show(
+ Labels.getLabel("editarConfiguracionProductosController.MSG.selectItemParada"),
+ Labels.getLabel("editarConfiguracionProductosController.window.title"),
+ Messagebox.OK, Messagebox.EXCLAMATION);
+ }
+ } catch (Exception ex) {
+ log.error("Erro adicionar cargo" ,ex);
+ Messagebox.show(
+ Labels.getLabel("MSG.Error"),
+ Labels.getLabel("editarConfiguracionProductosController.window.title"),
+ Messagebox.OK, Messagebox.ERROR);
+ }
+ }
+
+ public void onClick$btnRemoverProductoParada(Event ev) throws InterruptedException {
+ try {
+ ConfiguracionProductoParada cpp = (ConfiguracionProductoParada) configuracionProductoParadaList.getSelected();
+ if (cpp != null) {
+ configuracionProductoParadaLst.remove(cpp);
+ cpp.setFecmodif(Calendar.getInstance().getTime());
+ cpp.setActivo(Boolean.FALSE);
+ cpp.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId());
+ configuracionProductoParadaList.updateItem(cpp);
+ configuracionProductoParadaList.removeItem(cpp);
+ configuracionProductoParadaLst.add(cpp);
+ }else {
+ Messagebox.show(
+ Labels.getLabel("editarConfiguracionProductosController.MSG.selectItem"),
+ Labels.getLabel("editarConfiguracionProductosController.window.title"),
+ Messagebox.OK, Messagebox.EXCLAMATION);
+ }
+ } catch (Exception ex) {
+ log.error("Erro remover cargo: " + ex);
+ Messagebox.show(
+ Labels.getLabel("MSG.Error"),
+ Labels.getLabel("editarConfiguracionProductosController.window.title"),
+ Messagebox.OK, Messagebox.ERROR);
+ }
+ }
+
+ public void onClick$btnSalvar(Event ev) throws InterruptedException {
+ cmbTipoEventoExtra.getValue();
+ cmbParada.getValue();
+ Date dataInicio = fecInicio.getValue();
+ Date dataFin = fecFinal.getValue();
+
+ TipoEventoExtra tipoEventoExtra = (TipoEventoExtra) (cmbTipoEventoExtra.getSelectedItem() == null ? null : cmbTipoEventoExtra.getSelectedItem().getValue());
+ if (tipoEventoExtra != null) {
+ configuracionProducto.setTipoeventoextra(tipoEventoExtra);
+ }else {
+ Messagebox.show(
+ Labels.getLabel("editarConfiguracionProductosController.MSG.selectItemTipoEventoExtra"),
+ Labels.getLabel("editarConfiguracionProductosController.window.title"),
+ Messagebox.OK, Messagebox.EXCLAMATION);
+ return;
+ }
+ if (fecInicio.getValue().after(fecFinal.getValue())) {
+ try {
+ Messagebox.show(Labels.getLabel("editarConfiguracionProductosController.MSG.busquedaPeriodo"),
+ Labels.getLabel("editarConfiguracionProductosController.window.title"), Messagebox.OK,
+ Messagebox.INFORMATION);
+ } catch (InterruptedException ex) {
+ log.error(ex);
+ }
+ }else {
+ configuracionProducto.setFecVigenciaInicial(dataInicio);
+ configuracionProducto.setFecVigenciaFinal(dataFin);
+ }
+
+ configuracionProducto.setActivo(Boolean.TRUE);
+ configuracionProducto.setFecmodif(Calendar.getInstance().getTime());
+ configuracionProducto.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId());
+
+ if (configuracionProducto.getConfiguracionProductoId() == null) {
+ configuracionProductoService.suscribir(configuracionProducto);
+
+
+ }else {
+ configuracionProductoService.actualizacion(configuracionProducto);
+ }
+ if (configuracionProductoParadaLst != null || !configuracionProductoParadaLst.isEmpty()) {
+ for (ConfiguracionProductoParada configuracionProductoParada : configuracionProductoParadaLst) {
+ if (configuracionProductoParada.getConfiguracionProductoParadaId() == null) {
+ if (configuracionProductoParada.getActivo()) {
+ configuracionProductoParada.setConfiguracionProducto(configuracionProducto);
+ configuracionProductoParadaService.suscribir(configuracionProductoParada);
+ }
+
+ }else {
+ if (!configuracionProductoParada.getActivo()) {
+ configuracionProductoParadaService.actualizacion(configuracionProductoParada);
+ }
+
+ }
+ }
+ }
+
+ Messagebox.show(
+ Labels.getLabel("editarConfiguracionProductosController.MSG.suscribirOK"),
+ Labels.getLabel("editarConfiguracionProductosController.window.title"),
+ Messagebox.OK, Messagebox.INFORMATION);
+ winCPC.onClick$btnRefresh(new Event(""));
+ closeWindow();
+ }
+
+ public void onClick$btnApagar(Event ev) throws InterruptedException {
+ try {
+ int resp = Messagebox.show(
+ Labels.getLabel("editarConfiguracionCancelacionController.MSG.borrarPergunta"),
+ Labels.getLabel("editarConfiguracionCancelacionController.window.title"),
+ Messagebox.YES | Messagebox.NO, Messagebox.QUESTION);
+
+ if (resp == Messagebox.YES) {
+ if (configuracionProductoParadaLst != null || !configuracionProductoParadaLst.isEmpty()) {
+ for (ConfiguracionProductoParada configuracionProductoParada : configuracionProductoParadaLst) {
+ configuracionProductoParadaService.borrar(configuracionProductoParada);
+ }
+ }
+ configuracionProductoService.borrar(configuracionProducto);
+ Messagebox.show(
+ Labels.getLabel("editarConfiguracionProductosController.MSG.borrarOK"),
+ Labels.getLabel("editarConfiguracionProductosController.window.title"),
+ Messagebox.OK, Messagebox.INFORMATION);
+ winCPC.onClick$btnRefresh(new Event(""));
+ closeWindow();
+ }
+ } catch (Exception ex) {
+ log.error("",ex);
+ Messagebox.show(
+ Labels.getLabel("MSG.Error"),
+ Labels.getLabel("editarConfiguracionProductosController.window.title"),
+ Messagebox.OK, Messagebox.ERROR);
+ }
+ }
+
+ public ConfiguracionProducto getConfiguracionProducto() {
+ return configuracionProducto;
+ }
+
+ public void setConfiguracionProducto(ConfiguracionProducto configuracionProducto) {
+ this.configuracionProducto = configuracionProducto;
+ }
+
+ public Datebox getFecInicio() {
+ return fecInicio;
+ }
+
+ public void setFecInicio(Datebox fecInicio) {
+ this.fecInicio = fecInicio;
+ }
+
+ public Datebox getFecFinal() {
+ return fecFinal;
+ }
+
+ public void setFecFinal(Datebox fecFinal) {
+ this.fecFinal = fecFinal;
+ }
+
+ public Combobox getCmbParada() {
+ return cmbParada;
+ }
+
+ public void setCmbParada(Combobox cmbParada) {
+ this.cmbParada = cmbParada;
+ }
+
+ public Combobox getCmbTipoEventoExtra() {
+ return cmbTipoEventoExtra;
+ }
+
+ public void setCmbTipoEventoExtra(Combobox cmbTipoEventoExtra) {
+ this.cmbTipoEventoExtra = cmbTipoEventoExtra;
+ }
+
+ public MyTextboxDecimal getTxtPrecio() {
+ return txtPrecio;
+ }
+
+ public void setTxtPrecio(MyTextboxDecimal txtPrecio) {
+ this.txtPrecio = txtPrecio;
+ }
+
+ public List getLsTipoEventoExtra() {
+ return lsTipoEventoExtra;
+ }
+
+ public void setLsTipoEventoExtra(List lsTipoEventoExtra) {
+ this.lsTipoEventoExtra = lsTipoEventoExtra;
+ }
+
+ public TipoEventoExtra getTipoEventoExtra() {
+ return tipoEventoExtra;
+ }
+
+ public void setTipoEventoExtra(TipoEventoExtra tipoEventoExtra) {
+ this.tipoEventoExtra = tipoEventoExtra;
+ }
+
+ public List getConfiguracionProductoParadaLst() {
+ return configuracionProductoParadaLst;
+ }
+
+ public void setConfiguracionProductoParadaLst(List configuracionProductoParadaLst) {
+ this.configuracionProductoParadaLst = configuracionProductoParadaLst;
+ }
+
+ public MyListbox getConfiguracionProductoParadaList() {
+ return configuracionProductoParadaList;
+ }
+
+ public void setConfiguracionProductoParadaList(MyListbox configuracionProductoParadaList) {
+ this.configuracionProductoParadaList = configuracionProductoParadaList;
+ }
+
+
+}
diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/confcomerciales/ItemMenuConfiguracionProductos.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/confcomerciales/ItemMenuConfiguracionProductos.java
new file mode 100644
index 000000000..5d7c99dbc
--- /dev/null
+++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/confcomerciales/ItemMenuConfiguracionProductos.java
@@ -0,0 +1,25 @@
+package com.rjconsultores.ventaboletos.web.utilerias.menu.item.confcomerciales;
+
+import org.zkoss.util.resource.Labels;
+
+import com.rjconsultores.ventaboletos.web.utilerias.PantallaUtileria;
+import com.rjconsultores.ventaboletos.web.utilerias.menu.DefaultItemMenuSistema;
+
+public class ItemMenuConfiguracionProductos extends DefaultItemMenuSistema{
+
+ public ItemMenuConfiguracionProductos() {
+ super("indexController.mniConfiguracionProductos.label");
+ }
+ @Override
+ public String getClaveMenu() {
+ return "COM.RJCONSULTORES.ADMINISTRACION.GUI.CONFIGURACIONECCOMERCIALES.MENU.CONFIGURACIONDEPRODUCTOS";
+
+ }
+
+ @Override
+ public void ejecutar() {
+ PantallaUtileria.openWindow("/gui/configuraciones_comerciales/busquedaConfiguracionProductos.zul",
+ Labels.getLabel("busquedaConfiguracionProductosController.window.title"), null, desktop);
+
+ }
+}
diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/menu_original.properties b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/menu_original.properties
index 559fd461c..84bf90df8 100644
--- a/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/menu_original.properties
+++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/menu_original.properties
@@ -2,7 +2,6 @@ catalogos=com.rjconsultores.ventaboletos.web.utilerias.menu.item.catalogos.MenuC
catalogos.mensagemRecusa=com.rjconsultores.ventaboletos.web.utilerias.menu.item.catalogos.ItemMenuMensagemRecusa
catalogos.claseServicio=com.rjconsultores.ventaboletos.web.utilerias.menu.item.catalogos.ItemMenuClaseServicio
catalogos.categoria=com.rjconsultores.ventaboletos.web.utilerias.menu.item.catalogos.ItemMenuCategoria
-catalogos.tipoDocumento=com.rjconsultores.ventaboletos.web.utilerias.menu.item.catalogos.ItemMenuTipoDocumento
catalogos.grupoCategoria=com.rjconsultores.ventaboletos.web.utilerias.menu.item.catalogos.ItemMenuGrupoCategoria
catalogos.curso=com.rjconsultores.ventaboletos.web.utilerias.menu.item.catalogos.ItemMenuCurso
catalogos.escola=com.rjconsultores.ventaboletos.web.utilerias.menu.item.catalogos.ItemMenuEscola
@@ -66,8 +65,6 @@ confComerciales.negCorporativos.grupoContrato=com.rjconsultores.ventaboletos.web
confComerciales.negCorporativos.Contrato=com.rjconsultores.ventaboletos.web.utilerias.menu.item.negcorporativos.ItemMenuContrato
confComerciales.negCorporativos.Transportadora=com.rjconsultores.ventaboletos.web.utilerias.menu.item.negcorporativos.ItemMenuTransportadora
confComerciales.negCorporativos.Voucher=com.rjconsultores.ventaboletos.web.utilerias.menu.item.negcorporativos.ItemMenuVoucher
-confComerciales.negCorporativos.Legalizar=com.rjconsultores.ventaboletos.web.utilerias.menu.item.negcorporativos.ItemMenuLegalizar
-confComerciales.negCorporativos.Faturar=com.rjconsultores.ventaboletos.web.utilerias.menu.item.negcorporativos.ItemMenuFaturarVoucher
confComerciales.impressaofiscal=com.rjconsultores.ventaboletos.web.utilerias.menu.item.impressaofiscal.SubMenuImpressaoFiscal
confComerciales.impressaofiscal.totnaofiscalEmpresa=com.rjconsultores.ventaboletos.web.utilerias.menu.item.impressaofiscal.ItemMenuTotnaofiscalEmpresa
confComerciales.impressaofiscal.formapagoEmpresa=com.rjconsultores.ventaboletos.web.utilerias.menu.item.impressaofiscal.ItemMenuFormapagoEmpresa
@@ -82,6 +79,7 @@ confComerciales.comissao.conferenciaComissao=com.rjconsultores.ventaboletos.web.
confComerciales.comissao.recebimentoMalote=com.rjconsultores.ventaboletos.web.utilerias.menu.item.comissao.ItemMenuRecebimentoMalote
confComerciales.configuracaoVendaTotem=com.rjconsultores.ventaboletos.web.utilerias.menu.item.confcomerciales.ItemMenuConfTotem
confComerciales.geradorcontrato=com.rjconsultores.ventaboletos.web.utilerias.menu.item.confcomerciales.ItemMenuGeradorContrato
+confComerciales.configuracionProductos=com.rjconsultores.ventaboletos.web.utilerias.menu.item.confcomerciales.ItemMenuConfiguracionProductos
esquemaOperacional=com.rjconsultores.ventaboletos.web.utilerias.menu.item.esquemaoperacional.MenuEsquemaOperacional
esquemaOperacional.tipoParadas=com.rjconsultores.ventaboletos.web.utilerias.menu.item.esquemaoperacional.ItemMenuTipoParadas
esquemaOperacional.paradas=com.rjconsultores.ventaboletos.web.utilerias.menu.item.esquemaoperacional.ItemMenuEsquemaOperacionalParadas
@@ -276,9 +274,6 @@ analitico.gerenciais.pacote.boletos=com.rjconsultores.ventaboletos.web.utilerias
analitico.gerenciais.pacote.detalhado=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioVendasPacotesDetalhado
analitico.gerenciais.pacote.resumido=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioVendasPacotesResumido
analitico.gerenciais.relatorioRemessaCNAB=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioRemessaCNAB
-analitico.gerenciais.negociosCorporativos=com.rjconsultores.ventaboletos.web.utilerias.menu.item.negcorporativos.SubMenuNegociosCorporativos
-analitico.gerenciais.negociosCorporativos.RelatorioDetalhesContrato=com.rjconsultores.ventaboletos.web.utilerias.menu.item.negcorporativos.ItemMenuRelatorioDetalheContrato
-analitico.gerenciais.negociosCorporativos.RelatorioSaldosContratos=com.rjconsultores.ventaboletos.web.utilerias.menu.item.negcorporativos.ItemMenuRelatorioSaldosContratos
analitico.integracion=com.rjconsultores.ventaboletos.web.utilerias.menu.item.analitico.integracion.SubMenuIntegracion
analitico.integracion.sisdap=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioSisdap
analitico.integracion.sie=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioSie
@@ -365,9 +360,9 @@ expressos.porCotizar=com.rjconsultores.ventaboletos.web.utilerias.menu.item.expr
expressos.cargaContrato=com.rjconsultores.ventaboletos.web.utilerias.menu.item.expressos.ItemMenuCargaContrato
expressos.programacionVehiculo=com.rjconsultores.ventaboletos.web.utilerias.menu.item.expressos.ItemMenuProgramacionVehiculo
expressos.documentos=com.rjconsultores.ventaboletos.web.utilerias.menu.item.expressos.ItemMenuDocumentos
-expressos.cumplimientoServicio=com.rjconsultores.ventaboletos.web.utilerias.menu.item.expressos.ItemMenuCumplimientoServicio
-expressos.log=com.rjconsultores.ventaboletos.web.utilerias.menu.item.expressos.ItemMenuLog
-expressos.InformeViajesOcasionales=com.rjconsultores.ventaboletos.web.utilerias.menu.item.expressos.ItemMenuInformeViajesOcasionales
+#expressos.cumplimientoServicio=com.rjconsultores.ventaboletos.web.utilerias.menu.item.expressos.ItemMenuCumplimientoServicio
+#expressos.log=com.rjconsultores.ventaboletos.web.utilerias.menu.item.expressos.ItemMenuLog
+#expressos.InformeViajesOcasionales=com.rjconsultores.ventaboletos.web.utilerias.menu.item.expressos.ItemMenuInformeViajesOcasionales
#expressos.seguimientoExpresos=com.rjconsultores.ventaboletos.web.utilerias.menu.item.expressos.ItemMenuSeguimientoExpresos
ayuda=com.rjconsultores.ventaboletos.web.utilerias.menu.item.ayuda.MenuAyuda
ayuda.version=com.rjconsultores.ventaboletos.web.utilerias.menu.item.ayuda.ItemMenuVersion
\ No newline at end of file
diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderConfiguracionProducto.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderConfiguracionProducto.java
new file mode 100644
index 000000000..e7d566efe
--- /dev/null
+++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderConfiguracionProducto.java
@@ -0,0 +1,35 @@
+package com.rjconsultores.ventaboletos.web.utilerias.render;
+
+import java.text.SimpleDateFormat;
+
+import org.zkoss.zul.Listcell;
+import org.zkoss.zul.Listitem;
+import org.zkoss.zul.ListitemRenderer;
+
+import com.rjconsultores.ventaboletos.entidad.ConfiguracionProducto;
+
+public class RenderConfiguracionProducto implements ListitemRenderer{
+
+ @Override
+ public void render(Listitem lstm, Object o) throws Exception {
+ ConfiguracionProducto configuracionProducto = (ConfiguracionProducto) o;
+
+ Listcell lc = new Listcell(configuracionProducto.getConfiguracionProductoId() == null ? "" : configuracionProducto.getConfiguracionProductoId().toString());
+ lc.setParent(lstm);
+
+ lc = new Listcell(configuracionProducto.getPrecio() == null ? "" : configuracionProducto.getPrecio().toString());
+ lc.setParent(lstm);
+
+ SimpleDateFormat sf = new SimpleDateFormat("dd/MM/yyyy");
+ lc = new Listcell(configuracionProducto.getFecVigenciaInicial() == null ? "" : (sf.format(configuracionProducto.getFecVigenciaInicial())));
+ lc.setParent(lstm);
+
+ lc = new Listcell(configuracionProducto.getFecVigenciaFinal() == null ? "" : (sf.format(configuracionProducto.getFecVigenciaFinal())));
+ lc.setParent(lstm);
+
+ lc = new Listcell(configuracionProducto.getTipoeventoextra() == null ? "" : configuracionProducto.getTipoeventoextra().getDescTipoEvento());
+ lc.setParent(lstm);
+ lstm.setAttribute("data", configuracionProducto);
+ }
+
+}
diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderConfiguracionProductoParada.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderConfiguracionProductoParada.java
new file mode 100644
index 000000000..c03e1bc9c
--- /dev/null
+++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderConfiguracionProductoParada.java
@@ -0,0 +1,27 @@
+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.ConfiguracionProductoParada;
+
+public class RenderConfiguracionProductoParada implements ListitemRenderer{
+
+ @Override
+ public void render(Listitem lstm, Object o) throws Exception {
+ ConfiguracionProductoParada cpp = (ConfiguracionProductoParada) o;
+
+ Listcell lc = new Listcell(cpp.getConfiguracionProductoParadaId() == null ? "" : cpp.getConfiguracionProductoParadaId().toString());
+ lc.setParent(lstm);
+
+ lc = new Listcell(cpp.getParadaId() == null ? "" : cpp.getParadaId().getDescparada());
+ lc.setParent(lstm);
+
+ lc = new Listcell(cpp.getConfiguracionProducto().getConfiguracionProductoId() == null ? "" : cpp.getConfiguracionProducto().getConfiguracionProductoId().toString());
+ lc.setParent(lstm);
+
+ lstm.setAttribute("data", cpp);
+ }
+
+}
diff --git a/src/java/spring-config.xml b/src/java/spring-config.xml
index 0dae0c21b..ce6c94fd1 100644
--- a/src/java/spring-config.xml
+++ b/src/java/spring-config.xml
@@ -484,6 +484,8 @@
com.rjconsultores.ventaboletos.entidad.ConfComprovantePassagem
com.rjconsultores.ventaboletos.entidad.Voucher
com.rjconsultores.ventaboletos.entidad.EmpresaConfigLayout
+ com.rjconsultores.ventaboletos.entidad.ConfiguracionProducto
+ com.rjconsultores.ventaboletos.entidad.ConfiguracionProductoParada
diff --git a/tests/spring-test.xml b/tests/spring-test.xml
index c851af63a..3691ea254 100644
--- a/tests/spring-test.xml
+++ b/tests/spring-test.xml
@@ -476,6 +476,8 @@
com.rjconsultores.ventaboletos.entidad.EmpresaEmailConfig
com.rjconsultores.ventaboletos.entidad.CtrlFechamentoCaixa
com.rjconsultores.ventaboletos.entidad.PtovtaAntifraude
+ com.rjconsultores.ventaboletos.entidad.ConfiguracionProducto
+ com.rjconsultores.ventaboletos.entidad.ConfiguracionProductoParada
diff --git a/web/WEB-INF/i3-label_en.label b/web/WEB-INF/i3-label_en.label
index a5bebd004..800ec2f62 100644
--- a/web/WEB-INF/i3-label_en.label
+++ b/web/WEB-INF/i3-label_en.label
@@ -717,6 +717,20 @@ busquedaConfiguracionCancelacionController.lhPunto.label = Point of Sale (Agency
busquedaConfiguracionCancelacionController.lhTiempo.Fim = End
busquedaConfiguracionCancelacionController.lhTiempo.Inicio = Home
busquedaConfiguracionCancelacionController.lhTiempo.label = Prior time allowed
+#Configuracion producto
+busquedaConfiguracionProductosController.window.title = Product Configuration
+busquedaConfiguracionProductosController.btnRefresh.tooltiptext = Refresh
+busquedaConfiguracionProductosController.btnNovo.tooltiptext = Include
+busquedaConfiguracionProductosController.btnCerrar.tooltiptext = Close
+busquedaConfiguracionProductosController.tipoeventoextra.label = Extra Event Type
+busquedaConfiguracionProductosController.btnPesquisa.label = Search
+busquedaConfiguracionProductosController.lhId.label = ID
+busquedaConfiguracionProductosController.lhPrecio.label = Price
+busquedaConfiguracionProductosController.lhFecVigenciaInicial.label = Start Date
+busquedaConfiguracionProductosController.lhFecVigenciaFinal.label = End Date
+busquedaConfiguracionProductosController.lhTipoEventoExtra.label = Extra Event Type
+busquedaConfiguracionProductosController.comissaoTipoEventoExtra.label = Extra Event Type
+busquedaConfiguracionProductosController.MSG.busquedaPeriodo = Start date later than end date
# Muestra a CANCELACION configuracional Pesquisa
busquedaConfiguracionCancelacionController.window.title = Cancellation Setting
busquedaConfiguracionCategoriaController.btnCerrar.tooltiptext = Close
@@ -3428,6 +3442,28 @@ editarConfiguracionAntecipaController.btnSalvar.tooltiptext = Save
editarConfiguracionAntecipaController.lblData.value = Date
editarConfiguracionAntecipaController.lblPercentual.value = Percentage
editarConfiguracionAntecipaController.lblRetem.value = retain
+#ditar Configuracion Producto
+editarConfiguracionProductosController.window.title = Product Configuration
+editarConfiguracionProductosController.btnApagar.tooltiptext = Delete
+editarConfiguracionProductosController.btnFechar.tooltiptext = Close
+editarConfiguracionProductosController.btnSalvar.tooltiptext = Save
+editarConfiguracionProductosController.tabConfiguracionProducto.label = Product Configuration
+editarConfiguracionProductosController.tabConfiguracionProductoParada.label = Stop Configuration
+editarConfiguracionProductosController.btnAddCorrida.tooltiptext = Include
+editarConfiguracionProductosController.btnBorrarCorrida.tooltiptext = Delete
+editarConfiguracionProductosController.idcpp.label = ID
+editarConfiguracionProductosController.idcp.label = Product Configuration ID
+editarConfiguracionProductosController.parada.label = Stop
+editarConfiguracionProductosController.tipoeventoextra.label = Extra Event Type
+editarConfiguracionProductosController.fecVigenciaInicial.label = Start Date
+editarConfiguracionProductosController.fecVigenciaFinal.label = End Date
+editarConfiguracionProductosController.MSG.selectItem = Select an item
+editarConfiguracionProductosController.MSG.selectItemParada = Select a stop
+editarConfiguracionProductosController.MSG.selectItemTipoEventoExtra = Select an extra event type
+editarConfiguracionProductosController.MSG.busquedaPeriodo = Start date later than end date
+editarConfiguracionProductosController.MSG.suscribirOK = Product configuration successfully registered
+editarConfiguracionProductosController.MSG.borrarOK = Product configuration successfully deleted
+editarConfiguracionProductosController.MSG.borrarPergunta = Do you want to delete the cancellation configuration?
editarConfiguracionCancelacionController.MSG.borrarOK = Cancellation Setting Deleted Successfully
editarConfiguracionCancelacionController.MSG.borrarPergunta = Do you want to delete the cancellation setting?
editarConfiguracionCancelacionController.MSG.obsAntes = Before leaving the service
diff --git a/web/WEB-INF/i3-label_es_MX.label b/web/WEB-INF/i3-label_es_MX.label
index 47f4d854e..33550da2d 100644
--- a/web/WEB-INF/i3-label_es_MX.label
+++ b/web/WEB-INF/i3-label_es_MX.label
@@ -712,6 +712,20 @@ busquedaConfiguracionCancelacionController.lhPunto.label = Punto de venta ( Agen
busquedaConfiguracionCancelacionController.lhTiempo.Fim = Final
busquedaConfiguracionCancelacionController.lhTiempo.Inicio = InÃcio
busquedaConfiguracionCancelacionController.lhTiempo.label = Tiempo prévio permitido
+#Configuracion producto
+busquedaConfiguracionProductosController.window.title = Configuración de productos
+busquedaConfiguracionProductosController.btnRefresh.tooltiptext = Actualizar
+busquedaConfiguracionProductosController.btnNovo.tooltiptext = Incluir
+busquedaConfiguracionProductosController.btnCerrar.tooltiptext = Cerrar
+busquedaConfiguracionProductosController.tipoeventoextra.label = Tipo Evt. Extra
+busquedaConfiguracionProductosController.btnPesquisa.label = Búsqueda
+busquedaConfiguracionProductosController.lhId.label = ID
+busquedaConfiguracionProductosController.lhPrecio.label = Precio
+busquedaConfiguracionProductosController.lhFecVigenciaInicial.label = Vigencia inicial
+busquedaConfiguracionProductosController.lhFecVigenciaFinal.label = Vigencia final
+busquedaConfiguracionProductosController.lhTipoEventoExtra.label = Tipo evento extra
+busquedaConfiguracionProductosController.comissaoTipoEventoExtra.label = Tipo Evento Extra
+busquedaConfiguracionProductosController.MSG.busquedaPeriodo = Fecha de inÃcio posterior a la fecha final
# Muestra a CANCELACION configuracional Búsqueda
busquedaConfiguracionCancelacionController.window.title = Configuración de cancelación
busquedaConfiguracionCategoriaController.btnCerrar.tooltiptext = Cerrar
@@ -3427,6 +3441,28 @@ editarConfiguracionAntecipaController.btnSalvar.tooltiptext = Guardar
editarConfiguracionAntecipaController.lblData.value = Fecha
editarConfiguracionAntecipaController.lblPercentual.value = Porcentaje
editarConfiguracionAntecipaController.lblRetem.value = Conserva
+#ditar Configuracion Producto
+editarConfiguracionProductosController.window.title = Configuracion Producto
+editarConfiguracionProductosController.btnApagar.tooltiptext = Eliminar
+editarConfiguracionProductosController.btnFechar.tooltiptext = Cerrar
+editarConfiguracionProductosController.btnSalvar.tooltiptext = Guardar
+editarConfiguracionProductosController.tabConfiguracionProducto.label = Configuración Producto
+editarConfiguracionProductosController.tabConfiguracionProductoParada.label = Configuración Parada
+editarConfiguracionProductosController.btnAddCorrida.tooltiptext = Incluir
+editarConfiguracionProductosController.btnBorrarCorrida.tooltiptext = Eliminar
+editarConfiguracionProductosController.idcpp.label = ID
+editarConfiguracionProductosController.idcp.label = ID Configuracion producto
+editarConfiguracionProductosController.parada.label = Parada
+editarConfiguracionProductosController.tipoeventoextra.label = Tipo Evt. Extra
+editarConfiguracionProductosController.fecVigenciaInicial.label = Vigencia inicial
+editarConfiguracionProductosController.fecVigenciaFinal.label = Vigencia final
+editarConfiguracionProductosController.MSG.selectItem = Seleccione un elemento
+editarConfiguracionProductosController.MSG.selectItemParada = Seleccione una parada
+editarConfiguracionProductosController.MSG.selectItemTipoEventoExtra = Seleccione un tipo evento extra
+editarConfiguracionProductosController.MSG.busquedaPeriodo = Fecha de inÃcio posterior a la fecha final
+editarConfiguracionProductosController.MSG.suscribirOK = Configuración de producto se registró exitosamente
+editarConfiguracionProductosController.MSG.borrarOK = Configuración de producto se eliminó exitosamente
+editarConfiguracionProductosController.MSG.borrarPergunta = Desea eliminar la configuración de cancelación?
editarConfiguracionCancelacionController.MSG.borrarOK = Configuración de cancelación se eliminó exitosamente
editarConfiguracionCancelacionController.MSG.borrarPergunta = Desea eliminar la configuración de cancelación?
editarConfiguracionCancelacionController.MSG.obsAntes = Antes de la salida del servicio
diff --git a/web/WEB-INF/i3-label_fr_FR.label b/web/WEB-INF/i3-label_fr_FR.label
index f5aff4bca..0f4e98e4b 100644
--- a/web/WEB-INF/i3-label_fr_FR.label
+++ b/web/WEB-INF/i3-label_fr_FR.label
@@ -715,6 +715,20 @@ busquedaConfiguracionCancelacionController.lhPunto.label = Point de Vente (Agenc
busquedaConfiguracionCancelacionController.lhTiempo.Fim = Fin
busquedaConfiguracionCancelacionController.lhTiempo.Inicio = Accueil
busquedaConfiguracionCancelacionController.lhTiempo.label = Temps préalable autorisé
+#Configuracion producto
+busquedaConfiguracionProductosController.window.title = Configuration des produits
+busquedaConfiguracionProductosController.btnRefresh.tooltiptext = Actualiser
+busquedaConfiguracionProductosController.btnNovo.tooltiptext = Inclure
+busquedaConfiguracionProductosController.btnCerrar.tooltiptext = Fermer
+busquedaConfiguracionProductosController.tipoeventoextra.label = Type Événement Supplémentaire
+busquedaConfiguracionProductosController.btnPesquisa.label = Recherche
+busquedaConfiguracionProductosController.lhId.label = ID
+busquedaConfiguracionProductosController.lhPrecio.label = Prix
+busquedaConfiguracionProductosController.lhFecVigenciaInicial.label = Début de validité
+busquedaConfiguracionProductosController.lhFecVigenciaFinal.label = Fin de validité
+busquedaConfiguracionProductosController.lhTipoEventoExtra.label = Type d'événement supplémentaire
+busquedaConfiguracionProductosController.comissaoTipoEventoExtra.label = Type Événement Supplémentaire
+busquedaConfiguracionProductosController.MSG.busquedaPeriodo = Date de début postérieure à la date de fin
# Muestra a CANCELACION configuracional Pesquisa
busquedaConfiguracionCancelacionController.window.title = Paramètre d'annulation
busquedaConfiguracionCategoriaController.btnCerrar.tooltiptext = Fermer
@@ -3425,6 +3439,28 @@ editarConfiguracionAntecipaController.btnSalvar.tooltiptext = Enregistrer
editarConfiguracionAntecipaController.lblData.value = Date
editarConfiguracionAntecipaController.lblPercentual.value = Pourcentage
editarConfiguracionAntecipaController.lblRetem.value = retenir
+#ditar Configuracion Producto
+editarConfiguracionProductosController.window.title = Configuration Produit
+editarConfiguracionProductosController.btnApagar.tooltiptext = Supprimer
+editarConfiguracionProductosController.btnFechar.tooltiptext = Fermer
+editarConfiguracionProductosController.btnSalvar.tooltiptext = Enregistrer
+editarConfiguracionProductosController.tabConfiguracionProducto.label = Configuration Produit
+editarConfiguracionProductosController.tabConfiguracionProductoParada.label = Configuration Arrêt
+editarConfiguracionProductosController.btnAddCorrida.tooltiptext = Inclure
+editarConfiguracionProductosController.btnBorrarCorrida.tooltiptext = Supprimer
+editarConfiguracionProductosController.idcpp.label = ID
+editarConfiguracionProductosController.idcp.label = ID Configuration Produit
+editarConfiguracionProductosController.parada.label = Arrêt
+editarConfiguracionProductosController.tipoeventoextra.label = Type Événement Supplémentaire
+editarConfiguracionProductosController.fecVigenciaInicial.label = Début de validité
+editarConfiguracionProductosController.fecVigenciaFinal.label = Fin de validité
+editarConfiguracionProductosController.MSG.selectItem = Sélectionnez un élément
+editarConfiguracionProductosController.MSG.selectItemParada = Sélectionnez un arrêt
+editarConfiguracionProductosController.MSG.selectItemTipoEventoExtra = Sélectionnez un type d'événement supplémentaire
+editarConfiguracionProductosController.MSG.busquedaPeriodo = Date de début postérieure à la date de fin
+editarConfiguracionProductosController.MSG.suscribirOK = Configuration du produit enregistrée avec succès
+editarConfiguracionProductosController.MSG.borrarOK = Configuration du produit supprimée avec succès
+editarConfiguracionProductosController.MSG.borrarPergunta = Voulez-vous supprimer la configuration d'annulation ?
editarConfiguracionCancelacionController.MSG.borrarOK = Paramètre d'annulation supprimé avec succès
editarConfiguracionCancelacionController.MSG.borrarPergunta = Voulez-vous supprimer le paramètre d'annulation ?
editarConfiguracionCancelacionController.MSG.obsAntes = Avant de quitter le service
diff --git a/web/WEB-INF/i3-label_pt_BR.label b/web/WEB-INF/i3-label_pt_BR.label
index f16590009..f03e0f4e7 100644
--- a/web/WEB-INF/i3-label_pt_BR.label
+++ b/web/WEB-INF/i3-label_pt_BR.label
@@ -713,6 +713,20 @@ busquedaConfiguracionCancelacionController.lhPunto.label = Ponto de Venda ( Agê
busquedaConfiguracionCancelacionController.lhTiempo.Fim = Final
busquedaConfiguracionCancelacionController.lhTiempo.Inicio = InÃcio
busquedaConfiguracionCancelacionController.lhTiempo.label = Tempo prévio permitido
+#Configuracion producto
+busquedaConfiguracionProductosController.window.title = Configuração dos produtos
+busquedaConfiguracionProductosController.btnRefresh.tooltiptext = Atualizar
+busquedaConfiguracionProductosController.btnNovo.tooltiptext = Incluir
+busquedaConfiguracionProductosController.btnCerrar.tooltiptext = Fechar
+busquedaConfiguracionProductosController.tipoeventoextra.label = Tipo Evento Extra
+busquedaConfiguracionProductosController.btnPesquisa.label = Pesquisa
+busquedaConfiguracionProductosController.lhId.label = ID
+busquedaConfiguracionProductosController.lhPrecio.label = Preço
+busquedaConfiguracionProductosController.lhFecVigenciaInicial.label = InÃcio de Vigência
+busquedaConfiguracionProductosController.lhFecVigenciaFinal.label = Fim de Vigência
+busquedaConfiguracionProductosController.lhTipoEventoExtra.label = Tipo de Evento Extra
+busquedaConfiguracionProductosController.comissaoTipoEventoExtra.label = Tipo Evento Extra
+busquedaConfiguracionProductosController.MSG.busquedaPeriodo = Data de inÃcio posterior à data final
# Muestra a CANCELACION configuracional Pesquisa
busquedaConfiguracionCancelacionController.window.title = Configuração de Cancelamento
busquedaConfiguracionCategoriaController.btnCerrar.tooltiptext = Fechar
@@ -3421,6 +3435,28 @@ editarConfiguracionAntecipaController.btnSalvar.tooltiptext = Salvar
editarConfiguracionAntecipaController.lblData.value = Data
editarConfiguracionAntecipaController.lblPercentual.value = Percentual
editarConfiguracionAntecipaController.lblRetem.value = Retem
+#editar Configuracion Producto
+editarConfiguracionProductosController.window.title = Configuração Produto
+editarConfiguracionProductosController.btnApagar.tooltiptext = Excluir
+editarConfiguracionProductosController.btnFechar.tooltiptext = Fechar
+editarConfiguracionProductosController.btnSalvar.tooltiptext = Salvar
+editarConfiguracionProductosController.tabConfiguracionProducto.label = Configuração Produto
+editarConfiguracionProductosController.tabConfiguracionProductoParada.label = Configuração Parada
+editarConfiguracionProductosController.btnAddCorrida.tooltiptext = Incluir
+editarConfiguracionProductosController.btnBorrarCorrida.tooltiptext = Excluir
+editarConfiguracionProductosController.idcpp.label = ID
+editarConfiguracionProductosController.idcp.label = ID Configuração Produto
+editarConfiguracionProductosController.parada.label = Parada
+editarConfiguracionProductosController.tipoeventoextra.label = Tipo Evento Extra
+editarConfiguracionProductosController.fecVigenciaInicial.label = InÃcio de Vigência
+editarConfiguracionProductosController.fecVigenciaFinal.label = Fim de Vigência
+editarConfiguracionProductosController.MSG.selectItem = Selecione um item
+editarConfiguracionProductosController.MSG.selectItemParada = Selecione uma parada
+editarConfiguracionProductosController.MSG.selectItemTipoEventoExtra = Selecione um tipo de evento extra
+editarConfiguracionProductosController.MSG.busquedaPeriodo = Data de inÃcio posterior à data final
+editarConfiguracionProductosController.MSG.suscribirOK = Configuração do produto registrada com sucesso
+editarConfiguracionProductosController.MSG.borrarOK = Configuração do produto excluÃda com sucesso
+editarConfiguracionProductosController.MSG.borrarPergunta = Deseja excluir a configuração de cancelamento?
editarConfiguracionCancelacionController.MSG.borrarOK = Configuração de Cancelamento Excluida com Sucesso
editarConfiguracionCancelacionController.MSG.borrarPergunta = Deseja Eliminar a configuração de cancelamento?
editarConfiguracionCancelacionController.MSG.obsAntes = Antes da saÃda do serviço
diff --git a/web/gui/configuraciones_comerciales/busquedaConfiguracionProductos.zul b/web/gui/configuraciones_comerciales/busquedaConfiguracionProductos.zul
new file mode 100644
index 000000000..fc5df0031
--- /dev/null
+++ b/web/gui/configuraciones_comerciales/busquedaConfiguracionProductos.zul
@@ -0,0 +1,84 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/web/gui/configuraciones_comerciales/editarConfiguracionProductos.zul b/web/gui/configuraciones_comerciales/editarConfiguracionProductos.zul
new file mode 100644
index 000000000..3aa1eaee5
--- /dev/null
+++ b/web/gui/configuraciones_comerciales/editarConfiguracionProductos.zul
@@ -0,0 +1,124 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+