diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/BusquedaSegVKmController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/BusquedaSegVKmController.java new file mode 100644 index 000000000..7f5ff8bdc --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/BusquedaSegVKmController.java @@ -0,0 +1,146 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ +package com.rjconsultores.ventaboletos.web.gui.controladores.tarifas; + +import java.util.HashMap; +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.Paging; +import org.zkoss.zul.Textbox; + +import com.rjconsultores.ventaboletos.entidad.SegVKM; +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.RenderSegVKM; + +/** + * + * @author RJ + */ +@Controller("busquedaSegVKMController") +@Scope("prototype") +public class BusquedaSegVKmController extends MyGenericForwardComposer { + + private static final long serialVersionUID = 1L; + @Autowired + private transient PagedListWrapper plwSerie; + private MyListbox segVKmList; + private Paging pagingSegVKm; + private Textbox txtSerie; + + @Override + public void doAfterCompose(Component comp) throws Exception { + super.doAfterCompose(comp); + + segVKmList.setItemRenderer(new RenderSegVKM()); + segVKmList.addEventListener("onDoubleClick", new EventListener() { + + @Override + public void onEvent(Event event) throws Exception { + SegVKM s = (SegVKM) segVKmList.getSelected(); + verSegVKm(s); + } + }); + + refreshLista(); + + txtSerie.focus(); + } + + private void verSegVKm(SegVKM s) { + if (s == null) { + return; + } + + Map args = new HashMap(); + args.put("segVKM", s); + args.put("segVKmList", segVKmList); + + openWindow("/gui/tarifas/editarSegVKm.zul", + Labels.getLabel("busquedaSegVKmController.window.title"), + args, MODAL); + } + + private void refreshLista() { + + HibernateSearchObject seguroKmBusqueda = + new HibernateSearchObject(SegVKM.class, + pagingSegVKm.getPageSize()); + + seguroKmBusqueda.addFilterEqual("activo", Boolean.TRUE); + + if (!txtSerie.getValue().equals("")) { + seguroKmBusqueda.addFilterLike("serie", + "%" + txtSerie.getText().trim().concat("%")); + } + + seguroKmBusqueda.addSortAsc("serie"); + + plwSerie.init(seguroKmBusqueda, segVKmList, pagingSegVKm); + + if (segVKmList.getData().length == 0) { + try { + Messagebox.show(Labels.getLabel("MSG.ningunRegistro"), + Labels.getLabel("busquedaSegVKmController.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + } catch (InterruptedException ex) { + } + } + } + + public void onClick$btnPesquisa(Event ev) { + refreshLista(); + } + + public void onClick$btnRefresh(Event ev) { + refreshLista(); + } + + public void onClick$btnNovo(Event ev) { + verSegVKm(new SegVKM()); + } + + public PagedListWrapper getPlwSerie() { + return plwSerie; + } + + public void setPlwSerie(PagedListWrapper plwSerie) { + this.plwSerie = plwSerie; + } + + public MyListbox getSegVKmList() { + return segVKmList; + } + + public void setSegVKmList(MyListbox segVKmList) { + this.segVKmList = segVKmList; + } + + public Paging getPagingSegVKm() { + return pagingSegVKm; + } + + public void setPagingSegVKm(Paging pagingSegVKm) { + this.pagingSegVKm = pagingSegVKm; + } + + public Textbox getTxtSerie() { + return txtSerie; + } + + public void setTxtSerie(Textbox txtSerie) { + this.txtSerie = txtSerie; + } +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/EditarSegVKmController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/EditarSegVKmController.java new file mode 100644 index 000000000..ce1f4859c --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/EditarSegVKmController.java @@ -0,0 +1,172 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ +package com.rjconsultores.ventaboletos.web.gui.controladores.tarifas; + +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.zhtml.Messagebox; +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 com.rjconsultores.ventaboletos.entidad.SegVKM; +import com.rjconsultores.ventaboletos.service.SegVKMService; +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; + +/** + * + * @author RJ + */ +@Controller("editarSegVKmController") +@Scope("prototype") +public class EditarSegVKmController extends MyGenericForwardComposer { + + private static final long serialVersionUID = 1L; + @Autowired + private SegVKMService segVKMService; + private SegVKM segVKM; + private MyListbox segVKMList; + private Button btnApagar; + private MyTextbox txtSerie; + private MyTextbox txtKm; + private MyTextbox txtValor; + private static Logger log = Logger.getLogger(EditarSegVKmController.class); + + @Override + public void doAfterCompose(Component comp) throws Exception { + super.doAfterCompose(comp); + + segVKM = (SegVKM) Executions.getCurrent().getArg().get("segVKM"); + segVKMList = (MyListbox) Executions.getCurrent().getArg().get("segVKmList"); + + if (segVKM.getSegVKMId() == null) { + btnApagar.setVisible(Boolean.FALSE); + } + + txtSerie.focus(); + } + + public void onClick$btnSalvar(Event ev) throws InterruptedException { + txtSerie.getValue(); + + try { + segVKM.setActivo(Boolean.TRUE); + segVKM.setFecmodif(Calendar.getInstance().getTime()); + segVKM.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + + if (segVKM.getSegVKMId() == null) { + segVKMService.suscribir(segVKM); + segVKMList.addItemNovo(segVKM); + } else { + segVKMService.actualizacion(segVKM); + segVKMList.updateItem(segVKM); + } + + Messagebox.show( + Labels.getLabel("editarSegVKmController.MSG.suscribirOK"), + Labels.getLabel("editarSegVKmController.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + + closeWindow(); + + } catch (Exception ex) { + log.error("editarSegVKmController: " + ex); + Messagebox.show( + Labels.getLabel("MSG.Error"), + Labels.getLabel("editarSegVKmController.window.title"), + Messagebox.OK, Messagebox.ERROR); + } + } + + public void onClick$btnApagar(Event ev) { + try { + int resp = Messagebox.show( + Labels.getLabel("editarSegVKmController.MSG.borrarPergunta"), + Labels.getLabel("editarSegVKmController.window.title"), + Messagebox.YES | Messagebox.NO, Messagebox.QUESTION); + + if (resp == Messagebox.YES) { + + segVKMService.borrar(segVKM); + + Messagebox.show( + Labels.getLabel("editarSegVKmController.MSG.borrarOK"), + Labels.getLabel("editarSegVKmController.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + + segVKMList.removeItem(segVKM); + + closeWindow(); + } + } catch (Exception ex) { + log.error(ex); + } + } + + public SegVKMService getSegVKMService() { + return segVKMService; + } + + public void setSegVKMService(SegVKMService segVKMService) { + this.segVKMService = segVKMService; + } + + public SegVKM getSegVKM() { + return segVKM; + } + + public void setSegVKM(SegVKM segVKM) { + this.segVKM = segVKM; + } + + public MyListbox getSegVKMList() { + return segVKMList; + } + + public void setSegVKMList(MyListbox segVKMList) { + this.segVKMList = segVKMList; + } + + public Button getBtnApagar() { + return btnApagar; + } + + public void setBtnApagar(Button btnApagar) { + this.btnApagar = btnApagar; + } + + public MyTextbox getTxtSerie() { + return txtSerie; + } + + public void setTxtSerie(MyTextbox txtSerie) { + this.txtSerie = txtSerie; + } + + public MyTextbox getTxtKm() { + return txtKm; + } + + public void setTxtKm(MyTextbox txtKm) { + this.txtKm = txtKm; + } + + public MyTextbox getTxtValor() { + return txtValor; + } + + public void setTxtValor(MyTextbox txtValor) { + this.txtValor = txtValor; + } +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/tarifas/ItemMenuSegVKM.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/tarifas/ItemMenuSegVKM.java new file mode 100644 index 000000000..d8cf3ff63 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/tarifas/ItemMenuSegVKM.java @@ -0,0 +1,33 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ +package com.rjconsultores.ventaboletos.web.utilerias.menu.item.tarifas; + +import org.zkoss.util.resource.Labels; + +import com.rjconsultores.ventaboletos.web.utilerias.PantallaUtileria; +import com.rjconsultores.ventaboletos.web.utilerias.menu.DefaultItemMenuSistema; + +/** + * + * @author RJ + */ +public class ItemMenuSegVKM extends DefaultItemMenuSistema { + + public ItemMenuSegVKM() { + super("busquedaSegVKmController.window.title"); + } + + @Override + public String getClaveMenu() { + return "COM.RJCONSULTORES.ADMINISTRACION.GUI.TARIFAS.MENU.SEGVKM"; + } + + @Override + public void ejecutar() { + PantallaUtileria.openWindow("/gui/tarifas/busquedaSegVKm.zul", + Labels.getLabel("busquedaSegVKmController.window.title"), null, desktop); + + } +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderSegVKM.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderSegVKM.java new file mode 100644 index 000000000..de83bab16 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderSegVKM.java @@ -0,0 +1,38 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ + +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.SegVKM; + +/** + * + * @author RJ + */ +public class RenderSegVKM implements ListitemRenderer { + + public void render(Listitem lstm, Object o) throws Exception { + SegVKM seg = (SegVKM) o; + + Listcell lc = new Listcell(seg.getSegVKMId() == null ? "-" : seg.getSegVKMId().toString()); + lc.setParent(lstm); + + lc = new Listcell(seg.getSerie() == null ? "-" : seg.getSerie()); + lc.setParent(lstm); + + lc = new Listcell(seg.getKm() == null ? "-" : seg.getKm().toString()); + lc.setParent(lstm); + + lc = new Listcell(seg.getValor() == null ? "-" : seg.getValor().toString()); + lc.setParent(lstm); + + lstm.setAttribute("data", seg); + } + +} diff --git a/src/java/spring-config.xml b/src/java/spring-config.xml index ec8ddb42e..832e0bd16 100644 --- a/src/java/spring-config.xml +++ b/src/java/spring-config.xml @@ -258,6 +258,7 @@ com.rjconsultores.ventaboletos.entidad.Secretaria com.rjconsultores.ventaboletos.entidad.SeguroKm + com.rjconsultores.ventaboletos.entidad.SegVKM com.rjconsultores.ventaboletos.entidad.SeguroTarifa com.rjconsultores.ventaboletos.entidad.Sistema com.rjconsultores.ventaboletos.entidad.TaxaEmbarqueKm diff --git a/web/WEB-INF/i3-label_es_MX.label b/web/WEB-INF/i3-label_es_MX.label index d6f8334ac..03a11b90a 100644 --- a/web/WEB-INF/i3-label_es_MX.label +++ b/web/WEB-INF/i3-label_es_MX.label @@ -4182,6 +4182,27 @@ editarSeguroKmController.MSG.borrarPergunta=Deseas elminar seguro por KM? editarSeguroKmController.MSG.borrarOK=Seguro por KM se eliminó existosamente editarSeguroKmController.MSG.existe= Ya existe un registro con esse Km +# Pesquisa SegVKM +busquedaSegVKmController.window.title = Seguro VKM +busquedaSegVKmController.btnRefresh.tooltiptext = Atualizar +busquedaSegVKmController.btnNovo.tooltiptext = Incluir +busquedaSegVKmController.btnCerrar.tooltiptext = Fechar +busquedaSegVKmController.serie.label = Série +busquedaSegVKmController.km.label = KM +busquedaSegVKmController.valor.label = Valor + +# Editar SegVKM +editarSegVKmController.window.title = Seguro VKM +editarSegVKmController.btnApagar.tooltiptext = Eliminar +editarSegVKmController.btnSalvar.tooltiptext = Salvar +editarSegVKmController.btnFechar.tooltiptext = Fechar +editarSegVKmController.serie = Série +editarSegVKmController.km = KM +editarSegVKmController.valor = Valor +editarSegVKmController.MSG.suscribirOK = Seguro por KM registrado com sucesso. +editarSegVKmController.MSG.borrarPergunta=Deseja eliminar Seguro por KM? +editarSegVKmController.MSG.borrarOK=Seguro por KM eliminado com sucesso. + # Búsqueda SeguroTarifa busquedaSeguroTarifaController.window.title = Seguro por tarifa busquedaSeguroTarifaController.btnRefresh.tooltiptext = Actualizar diff --git a/web/WEB-INF/i3-label_pt_BR.label b/web/WEB-INF/i3-label_pt_BR.label index b53bab951..b991ce666 100644 --- a/web/WEB-INF/i3-label_pt_BR.label +++ b/web/WEB-INF/i3-label_pt_BR.label @@ -4231,6 +4231,27 @@ editarSeguroKmController.MSG.borrarPergunta=Deseja elminar Seguro por KM? editarSeguroKmController.MSG.borrarOK=Seguro por KM eliminado com sucesso. editarSeguroKmController.MSG.existe= Já existe um registro com esse Km. +# Pesquisa SegVKM +busquedaSegVKmController.window.title = Seguro VKM +busquedaSegVKmController.btnRefresh.tooltiptext = Atualizar +busquedaSegVKmController.btnNovo.tooltiptext = Incluir +busquedaSegVKmController.btnCerrar.tooltiptext = Fechar +busquedaSegVKmController.serie.label = Série +busquedaSegVKmController.km.label = KM +busquedaSegVKmController.valor.label = Valor + +# Editar SegVKM +editarSegVKmController.window.title = Seguro VKM +editarSegVKmController.btnApagar.tooltiptext = Eliminar +editarSegVKmController.btnSalvar.tooltiptext = Salvar +editarSegVKmController.btnFechar.tooltiptext = Fechar +editarSegVKmController.serie = Série +editarSegVKmController.km = KM +editarSegVKmController.valor = Valor +editarSegVKmController.MSG.suscribirOK = Seguro por KM registrado com sucesso. +editarSegVKmController.MSG.borrarPergunta=Deseja eliminar Seguro por KM? +editarSegVKmController.MSG.borrarOK=Seguro por KM eliminado com sucesso. + # Pesquisa SeguroTarifa busquedaSeguroTarifaController.window.title = Seguro por Tarifa busquedaSeguroTarifaController.btnRefresh.tooltiptext = Atualizar diff --git a/web/gui/tarifas/busquedaSegVKm.zul b/web/gui/tarifas/busquedaSegVKm.zul new file mode 100644 index 000000000..c539a270b --- /dev/null +++ b/web/gui/tarifas/busquedaSegVKm.zul @@ -0,0 +1,59 @@ + + + + + + + + + +