leonardo 2015-07-28 18:21:22 +00:00
parent 11a6ae2911
commit 4ba23f5d1c
9 changed files with 444 additions and 2 deletions

View File

@ -0,0 +1,105 @@
package com.rjconsultores.ventaboletos.web.gui.controladores.catalogos;
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.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.Comboitem;
import org.zkoss.zul.Messagebox;
import org.zkoss.zul.Paging;
import org.zkoss.zul.Textbox;
import com.rjconsultores.ventaboletos.entidad.Ciudad;
import com.rjconsultores.ventaboletos.entidad.Curso;
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.RenderCurso;
@Controller("busquedaCursoController")
@Scope("prototype")
public class BusquedaCursoController extends MyGenericForwardComposer {
private static final long serialVersionUID = 1L;
@Autowired
private transient PagedListWrapper<Curso> plwCurso;
private MyListbox CursoList;
private Paging pagingCurso;
private Textbox txtNombre;
private Combobox cmbCiudad;
@Override
public void doAfterCompose(Component comp) throws Exception {
super.doAfterCompose(comp);
CursoList.setItemRenderer(new RenderCurso());
CursoList.addEventListener("onDoubleClick", new EventListener() {
@Override
public void onEvent(Event event) throws Exception {
Curso curso = (Curso) CursoList.getSelected();
verCurso(curso);
}
});
refreshLista();
txtNombre.focus();
}
@SuppressWarnings({ "rawtypes", "unchecked" })
private void verCurso(Curso e) {
if (e == null) {
return;
}
Map args = new HashMap();
args.put("curso", e);
args.put("cursoList", CursoList);
openWindow("/gui/catalogos/editarCurso.zul",
Labels.getLabel("editarCursoController.window.title"), args, MODAL);
}
private void refreshLista() throws InterruptedException {
HibernateSearchObject<Curso> CursoBusqueda =
new HibernateSearchObject<Curso>(Curso.class, pagingCurso.getPageSize());
CursoBusqueda.addFilterLike("nomcurso", "%" + txtNombre.getText().trim().concat("%"));
CursoBusqueda.addFilterEqual("activo", Boolean.TRUE);
CursoBusqueda.addSortAsc("nomcurso");
CursoBusqueda.addFilterNotEqual("cursoId", -1);
plwCurso.init(CursoBusqueda, CursoList, pagingCurso);
if (CursoList.getData().length == 0) {
Messagebox.show(
Labels.getLabel("MSG.ningunRegistro"),
Labels.getLabel("busquedaCursoController.window.title"),
Messagebox.OK, Messagebox.INFORMATION);
}
}
public void onClick$btnRefresh(Event ev) throws InterruptedException {
refreshLista();
}
public void onClick$btnPesquisa(Event ev) throws InterruptedException {
refreshLista();
}
public void onClick$btnNovo(Event ev) throws InterruptedException {
verCurso(new Curso());
}
}

View File

@ -0,0 +1,139 @@
package com.rjconsultores.ventaboletos.web.gui.controladores.catalogos;
import java.util.Calendar;
import java.util.List;
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.Curso;
import com.rjconsultores.ventaboletos.service.CursoService;
import com.rjconsultores.ventaboletos.utilerias.RegistroConDependenciaException;
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("editarCursoController")
@Scope("prototype")
public class EditarCursoController extends MyGenericForwardComposer {
private static final long serialVersionUID = 1L;
@Autowired
private CursoService CursoService;
private Curso curso;
private MyListbox cursoList;
private static Logger log = Logger.getLogger(EditarCursoController.class);
private MyTextbox txtNome;
private Button btnApagar;
public Curso getCurso() {
return curso;
}
public void setCurso(Curso curso) {
this.curso = curso;
}
@Override
public void doAfterCompose(Component comp) throws Exception {
super.doAfterCompose(comp);
curso = (Curso) Executions.getCurrent().getArg().get("curso");
cursoList = (MyListbox) Executions.getCurrent().getArg().get("cursoList");
if (curso.getCursoId() == null) {
btnApagar.setVisible(Boolean.FALSE);
}
txtNome.focus();
}
public void onClick$btnSalvar(Event ev) throws InterruptedException {
try {
curso.setActivo(Boolean.TRUE);
curso.setFecmodif(Calendar.getInstance().getTime());
curso.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId());
curso.setNomcurso(txtNome.getValue());
List<Curso> lsCurso = CursoService.buscar(curso.getNomcurso());
boolean podeSalvar = false;
if (lsCurso.isEmpty()) {
podeSalvar = true;
} else {
if (curso.getCursoId() == null) {
podeSalvar = false;
} else {
for (Curso e : lsCurso) {
if (e.getCursoId().equals(curso.getCursoId())) {
podeSalvar = true;
}
}
}
}
if (podeSalvar) {
if (curso.getCursoId() == null) {
CursoService.suscribir(curso);
cursoList.addItem(curso);
} else {
CursoService.actualizacion(curso);
cursoList.updateItem(curso);
}
Messagebox.show(
Labels.getLabel("editarCursoController.MSG.suscribirOK"),
Labels.getLabel("editarCursoController.window.title"),
Messagebox.OK, Messagebox.INFORMATION);
closeWindow();
} else {
Messagebox.show(
Labels.getLabel("MSG.Registro.Existe"),
Labels.getLabel("editarCursoController.window.title"),
Messagebox.OK, Messagebox.EXCLAMATION);
}
} catch (Exception ex) {
log.error("editarCursoController: " + ex);
Messagebox.show(
Labels.getLabel("MSG.Error"),
Labels.getLabel("editarCursoController.window.title"),
Messagebox.OK, Messagebox.ERROR);
}
}
public void onClick$btnApagar(Event ev) throws InterruptedException {
try {
int resp = Messagebox.show(
Labels.getLabel("editarCursoController.MSG.borrarPergunta"),
Labels.getLabel("editarCursoController.window.title"),
Messagebox.YES | Messagebox.NO, Messagebox.QUESTION);
if (resp == Messagebox.YES) {
CursoService.borrar(curso);
Messagebox.show(
Labels.getLabel("editarCursoController.MSG.borrarOK"),
Labels.getLabel("editarCursoController.window.title"),
Messagebox.OK, Messagebox.INFORMATION);
cursoList.removeItem(curso);
closeWindow();
}
} catch (RegistroConDependenciaException ex) {
Messagebox.show(ex.getLocalizedMessage(), Labels.getLabel("editarCursoController.window.title"), Messagebox.OK, Messagebox.ERROR);
}
}
}

View File

@ -0,0 +1,26 @@
package com.rjconsultores.ventaboletos.web.utilerias.menu.item.catalogos;
import org.zkoss.util.resource.Labels;
import com.rjconsultores.ventaboletos.web.utilerias.PantallaUtileria;
import com.rjconsultores.ventaboletos.web.utilerias.menu.DefaultItemMenuSistema;
public class ItemMenuCurso extends DefaultItemMenuSistema {
public ItemMenuCurso() {
super("indexController.mniCurso.label");
}
@Override
public String getClaveMenu() {
return "COM.RJCONSULTORES.ADMINISTRACION.GUI.CATALOGO.MENU.CURSO";
}
@Override
public void ejecutar() {
PantallaUtileria.openWindow("/gui/catalogos/busquedaCurso.zul",
Labels.getLabel("busquedaCursoController.window.title"),
getArgs() ,desktop);
}
}

View File

@ -0,0 +1,24 @@
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.Curso;
public class RenderCurso implements ListitemRenderer {
public void render(Listitem lstm, Object o) throws Exception {
Curso curso = (Curso) o;
Listcell lc = new Listcell();
lc = new Listcell(curso.getCursoId().toString());
lc.setParent(lstm);
lc = new Listcell(curso.getNomcurso());
lc.setParent(lstm);
lstm.setAttribute("data", curso);
}
}

View File

@ -111,6 +111,7 @@
<value>com.rjconsultores.ventaboletos.entidad.CuponConvenio</value>
<value>com.rjconsultores.ventaboletos.entidad.CuponSecretaria
</value>
<value>com.rjconsultores.ventaboletos.entidad.Curso</value>
<value>com.rjconsultores.ventaboletos.entidad.DetDiagramaAutobus
</value>
<value>com.rjconsultores.ventaboletos.entidad.DepositoBancario

View File

@ -252,6 +252,7 @@ indexController.mniSubMenuClientePacote.label=Pacote
indexController.mniManutencaoPacote.label=Manutenção Pacote
indexController.mniEscola.label = Escuela
indexController.mniCurso.label = Curso
#PARTE REALIZADA POR MANUEL
indexController.mnCortesias.label = Cortesias para empleados
@ -5380,3 +5381,23 @@ editarEscolaController.txtCiudad.value=Ciudad
editarEscolaController.MSG.suscribirOK=Escuela se registró exitosamente
editarEscolaController.MSG.borrarPergunta=Eliminar Escuela ?
editarEscolaController.MSG.borrarOK=Escuela se eliminó exitosamente
#Busqueda Escola
busquedaEscolaController.window.title=Búsqueda Curso
busquedaEscolaController.btnRefresh.tooltiptext=Actualizar
busquedaEscolaController.btnNovo.tooltiptext=Incluir
busquedaEscolaController.btnCerrar.tooltiptext=Cerrar
busquedaEscolaController.txtNombre.label=Nombre
busquedaEscolaController.btnPesquisa.label=Búsqueda
busquedaEscolaController.lhId.label=ID
busquedaEscolaController.lhNombre.label=Nombre
#Editar Escola
editarEscolaController.window.title=Editar Curso
editarEscolaController.btnApagar.tooltiptext=Borrar
editarEscolaController.btnSalvar.tooltiptext=Guardar
editarEscolaController.btnFechar.tooltiptext=Cerrar
editarEscolaController.MSG.suscribirOK=Curso se registró exitosamente
editarEscolaController.MSG.borrarPergunta=Eliminar Curso ?
editarEscolaController.MSG.borrarOK=Curso se eliminó exitosamente

View File

@ -264,6 +264,7 @@ indexController.mniSubMenuClientePacote.label=Pacote
indexController.mniManutencaoPacote.label=Manutenção Pacote
indexController.mniEscola.label = Escola
indexController.mniCurso.label = Curso
#PARTE REALIZADA POR MANUEL
indexController.mnCortesias.label = Cortesias Para Funcionários
@ -5520,3 +5521,24 @@ editarEscolaController.txtCiudad.value=Cidade
editarEscolaController.MSG.suscribirOK=Escola gravada com sucesso!
editarEscolaController.MSG.borrarPergunta=Deseja eliminar Escola ?
editarEscolaController.MSG.borrarOK=Escola eliminada com sucesso!
#Busqueda Curso
busquedaCursoController.window.title=Pesquisar Curso
busquedaCursoController.btnRefresh.tooltiptext=Atualizar
busquedaCursoController.btnNovo.tooltiptext=Incluir
busquedaCursoController.btnCerrar.tooltiptext=Fechar
busquedaCursoController.txtNombre.label=Nome
busquedaCursoController.btnPesquisa.label=Pesquisa
busquedaCursoController.lhId.label=ID
busquedaCursoController.lhNombre.label=Nome
#Editar Curso
editarCursoController.window.title=Editar Curso
editarCursoController.btnApagar.tooltiptext=Eliminar
editarCursoController.btnSalvar.tooltiptext=Salvar
editarCursoController.btnFechar.tooltiptext=Fechar
editarCursoController.MSG.suscribirOK=Curso gravado com sucesso!
editarCursoController.MSG.borrarPergunta=Deseja eliminar Curso ?
editarCursoController.MSG.borrarOK=Curso eliminado com sucesso!

View File

@ -0,0 +1,60 @@
<?xml version="1.0" encoding="UTF-8"?>
<?page contentType="text/html;charset=UTF-8"?>
<?variable-resolver class="org.zkoss.zkplus.spring.DelegatingVariableResolver"?>
<?init class="org.zkoss.zkplus.databind.AnnotateDataBinderInit" arg0="winBusquedaCurso"?>
<?taglib uri="http://www.zkoss.org/dsp/web/core" prefix="c"?>
<zk xmlns="http://www.zkoss.org/2005/zul">
<window id="winBusquedaCurso"
title="${c:l('busquedaCursoController.window.title')}"
apply="${busquedaCursoController}" contentStyle="overflow:auto"
height="415px" width="800px" border="normal">
<toolbar>
<button id="btnRefresh" image="/gui/img/refresh.png"
width="35px"
tooltiptext="${c:l('busquedaCursoController.btnRefresh.tooltiptext')}" />
<separator orient="vertical" />
<button id="btnNovo" image="/gui/img/add.png" width="35px"
tooltiptext="${c:l('busquedaCursoController.btnNovo.tooltiptext')}" />
<separator orient="vertical" />
<button id="btnCerrar" onClick="winBusquedaCurso.detach()"
image="/gui/img/exit.png" width="35px"
tooltiptext="${c:l('busquedaCursoController.btnCerrar.tooltiptext')}" />
</toolbar>
<grid fixedLayout="true">
<columns>
<column width="20%" />
<column width="80%" />
</columns>
<rows>
<row>
<label
value="${c:l('busquedaCursoController.txtNombre.label')}" />
<textbox id="txtNombre" width="200px"
use="com.rjconsultores.ventaboletos.web.utilerias.MyTextbox" />
</row>
</rows>
</grid>
<toolbar>
<button id="btnPesquisa" image="/gui/img/find.png"
label="${c:l('busquedaCursoController.btnPesquisa.label')}" />
</toolbar>
<paging id="pagingCurso" pageSize="20" />
<listbox id="CursoList"
use="com.rjconsultores.ventaboletos.web.utilerias.MyListbox"
vflex="true" multiple="false">
<listhead sizable="true">
<listheader width="10%" image="/gui/img/builder.gif"
label="${c:l('busquedaCursoController.lhId.label')}"
sort="auto(CursoId)" />
<listheader image="/gui/img/builder.gif"
label="${c:l('busquedaCursoController.lhNombre.label')}"
sort="auto(nomCurso)" />
</listhead>
</listbox>
</window>
</zk>

View File

@ -0,0 +1,44 @@
<?xml version="1.0" encoding="UTF-8"?>
<?page contentType="text/html;charset=UTF-8"?>
<?variable-resolver class="org.zkoss.zkplus.spring.DelegatingVariableResolver"?>
<?init class="org.zkoss.zkplus.databind.AnnotateDataBinderInit" arg0="winEditarCurso"?>
<?taglib uri="http://www.zkoss.org/dsp/web/core" prefix="c"?>
<zk>
<window id="winEditarCurso" border="normal"
apply="${editarCursoController}" width="550px" height="245px"
contentStyle="overflow:auto"
title="${c:l('editarCursoController.window.title')}">
<toolbar>
<hbox spacing="5px" style="padding:1px" align="right">
<button id="btnApagar" height="20"
image="/gui/img/remove.png" width="35px"
tooltiptext="${c:l('editarCursoController.btnApagar.tooltiptext')}" />
<button id="btnSalvar" height="20"
image="/gui/img/save.png" width="35px"
tooltiptext="${c:l('editarCursoController.btnSalvar.tooltiptext')}" />
<button id="btnFechar" height="20"
image="/gui/img/exit.png" width="35px"
onClick="winEditarCurso.detach()"
tooltiptext="${c:l('editarCursoController.btnFechar.tooltiptext')}" />
</hbox>
</toolbar>
<grid fixedLayout="true">
<columns>
<column width="30%" />
<column width="70%" />
</columns>
<rows>
<row>
<label id="lbNome"
value="${c:l('busquedaCursoController.txtNombre.label')}" />
<textbox id="txtNome" constraint="no empty"
width="90%" maxlength="30"
value="@{winEditarCurso$composer.Curso.nomcurso}"
use="com.rjconsultores.ventaboletos.web.utilerias.MyTextbox" />
</row>
</rows>
</grid>
</window>
</zk>