leonardo 2014-12-17 20:20:36 +00:00
parent c6005bbd98
commit a24e53b6c5
7 changed files with 349 additions and 40 deletions

View File

@ -1,5 +1,9 @@
package com.rjconsultores.ventaboletos.web.gui.controladores.catalogos;
import java.math.BigDecimal;
import java.util.Calendar;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;
@ -9,11 +13,18 @@ import org.zkoss.zk.ui.Executions;
import org.zkoss.zk.ui.event.Event;
import org.zkoss.zul.Messagebox;
import com.rjconsultores.ventaboletos.entidad.Empresa;
import com.rjconsultores.ventaboletos.entidad.OrgaoCancelacion;
import com.rjconsultores.ventaboletos.entidad.OrgaoConcedente;
import com.rjconsultores.ventaboletos.service.OrgaoCancelacionService;
import com.rjconsultores.ventaboletos.service.OrgaoConcedenteService;
import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado;
import com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEmpresa;
import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer;
import com.rjconsultores.ventaboletos.web.utilerias.MyListbox;
import com.rjconsultores.ventaboletos.web.utilerias.MyTextbox;
import com.rjconsultores.ventaboletos.web.utilerias.MyTextboxDecimal;
import com.rjconsultores.ventaboletos.web.utilerias.render.RenderOrgaoCancelacion;
@Controller("editarOrgaoConcedenteController")
@Scope("prototype")
@ -23,9 +34,17 @@ public class EditarOrgaoConcedenteController extends MyGenericForwardComposer {
@Autowired
private OrgaoConcedenteService orgaoConcedenteService;
private OrgaoConcedente orgaoConcedente;
@Autowired
private OrgaoCancelacionService orgaoCancelacionService;
private MyListbox orgaoConcedenteList;
private MyListbox orgaoCancelacionList;
private MyTextbox txtNome;
private MyTextboxDecimal txtPorcMulta;
private MyTextboxDecimal txtPorcCambio;
private MyComboboxEmpresa cmbEmpresa;
private List<OrgaoCancelacion> lsOrgaoCancelacion;
public OrgaoConcedente getOrgaoConcedente() {
return orgaoConcedente;
}
@ -39,7 +58,9 @@ public class EditarOrgaoConcedenteController extends MyGenericForwardComposer {
super.doAfterCompose(comp);
orgaoConcedente = (OrgaoConcedente) Executions.getCurrent().getArg().get("orgaoConcedente");
orgaoConcedenteList = (MyListbox) Executions.getCurrent().getArg().get("orgaoConcedenteList");
orgaoCancelacionList.setItemRenderer(new RenderOrgaoCancelacion());
lsOrgaoCancelacion = orgaoCancelacionService.buscarPorOrgao(orgaoConcedente);
orgaoCancelacionList.setData(lsOrgaoCancelacion);
txtNome.focus();
}
@ -55,4 +76,43 @@ public class EditarOrgaoConcedenteController extends MyGenericForwardComposer {
closeWindow();
}
private Boolean parametroRepetido(Empresa empresa){
for (OrgaoCancelacion o : lsOrgaoCancelacion){
if (o.getEmpresa().equals(empresa)){
return true;
}
}
return false;
}
public void onClick$btnAdicionarParametros(Event ev) throws InterruptedException {
if (parametroRepetido((Empresa)cmbEmpresa.getSelectedItem().getValue())){
Messagebox.show(
Labels.getLabel("editarOrgaoConcedenteController.MSG.parametroRepetido"),
Labels.getLabel("editarOrgaoConcedenteController.window.title"),
Messagebox.OK, Messagebox.INFORMATION);
return;
}
OrgaoCancelacion oc = new OrgaoCancelacion();
oc.setEmpresa((Empresa)cmbEmpresa.getSelectedItem().getValue());
oc.setOrgao(orgaoConcedente);
oc.setPorccambio(new BigDecimal(txtPorcCambio.getValue()));
oc.setPorcmulta(new BigDecimal(txtPorcMulta.getValue()));
oc.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId());
oc.setFecmodif(Calendar.getInstance().getTime());
oc.setActivo(Boolean.TRUE);
oc = orgaoCancelacionService.suscribirActualizacion(oc);
lsOrgaoCancelacion.add(oc);
orgaoCancelacionList.setData(lsOrgaoCancelacion);
}
public void onClick$btnRemoverParametros(Event ev) throws InterruptedException {
OrgaoCancelacion oc = (OrgaoCancelacion)orgaoCancelacionList.getSelected();
orgaoCancelacionService.borrar(oc);
lsOrgaoCancelacion.remove(oc);
orgaoCancelacionList.setData(lsOrgaoCancelacion);
}
}

View File

@ -0,0 +1,149 @@
package com.rjconsultores.ventaboletos.web.utilerias;
import java.util.ArrayList;
import java.util.List;
import org.apache.log4j.Logger;
import org.zkoss.util.resource.Labels;
import org.zkoss.zk.ui.WrongValueException;
import org.zkoss.zk.ui.event.Event;
import org.zkoss.zk.ui.event.EventListener;
import org.zkoss.zk.ui.event.InputEvent;
import org.zkoss.zkplus.databind.BindingListModel;
import org.zkoss.zkplus.databind.BindingListModelList;
import org.zkoss.zkplus.spring.SpringUtil;
import org.zkoss.zul.Combobox;
import com.rjconsultores.ventaboletos.entidad.Empresa;
import com.rjconsultores.ventaboletos.service.EmpresaService;
public class MyComboboxEmpresa extends Combobox {
private static final long serialVersionUID = 1L;
private static Logger log = Logger.getLogger(MyComboboxParada.class);
public final static int minLength = 2;
private EmpresaService empresaService;
private List<Empresa> lsEmpresa;
private Empresa initialValue;
private Integer indiceSelected = null;
private boolean sinTodos = false;
private Integer ID_TODOS = -1;
public MyComboboxEmpresa() {
super();
empresaService = (EmpresaService) SpringUtil.getBean("empresaService");
lsEmpresa = new ArrayList<Empresa>();
this.setAutodrop(false);
this.setAutocomplete(false);
this.addEventListener("onOK", new EventListener() {
@Override
public void onEvent(Event event) throws Exception {
String strEmpresa = MyComboboxEmpresa.this.getText().toUpperCase();
if (strEmpresa.length() < MyComboboxEmpresa.minLength) {
return;
}
if (!strEmpresa.isEmpty()) {
lsEmpresa = empresaService.buscaLike(strEmpresa);
if (sinTodos) {
log.debug("Sin todos");
Empresa e = empresaService.obtenerID(ID_TODOS);
lsEmpresa.remove(e);
}
BindingListModel listModelParada = new BindingListModelList(lsEmpresa, true);
MyComboboxEmpresa.this.setModel(listModelParada);
setIndiceSelected(null);
if (!lsEmpresa.isEmpty()) {
setIndiceSelected(0);
}
MyComboboxEmpresa.this.open();
} else {
lsEmpresa.clear();
BindingListModel listModelEmpresa = new BindingListModelList(lsEmpresa, true);
MyComboboxEmpresa.this.setModel(listModelEmpresa);
}
}
});
this.addEventListener("onChanging", new EventListener() {
@Override
public void onEvent(Event event) throws Exception {
InputEvent ev = (InputEvent) event;
String strEmpresa = ev.getValue();
if (strEmpresa.length() < 2) {
lsEmpresa.clear();
BindingListModel listModelEmpresa = new BindingListModelList(lsEmpresa, true);
MyComboboxEmpresa.this.setModel(listModelEmpresa);
MyComboboxEmpresa.this.close();
}
}
});
}
public Empresa getInitialValue() {
return initialValue;
}
public void setInitialValue(Empresa initialValue) {
if (initialValue == null) {
return;
}
List<Empresa> ls = new ArrayList<Empresa>();
ls.add(initialValue);
this.setModel(new BindingListModelList(ls, false));
this.setText(initialValue.getNombempresa());
}
/**
*
* @param checaBusqueda
* @throws WrongValueException
*/
public String getValue(boolean checaBusqueda) throws WrongValueException {
if (checaBusqueda) {
if (this.getSelectedItem() == null) {
throw new WrongValueException(this, Labels.getLabel("MSG.Error.combobox.hacerBusqueda"));
}
}
return super.getValue();
}
public boolean isSinTodos() {
return sinTodos;
}
public void setSinTodos(boolean sinTodos) {
this.sinTodos = sinTodos;
}
public void setComboItemByEmpresa(Empresa empresa) {
List<Empresa> ls = new ArrayList<Empresa>();
ls.add(empresa);
this.setModel(new BindingListModelList(ls, false));
this.setText(empresa.getNombempresa());
}
public Integer getIndiceSelected() {
return indiceSelected;
}
public void setIndiceSelected(Integer indiceSelected) {
this.indiceSelected = indiceSelected;
}
}

View File

@ -0,0 +1,30 @@
package com.rjconsultores.ventaboletos.web.utilerias.render;
import java.text.DecimalFormat;
import org.zkoss.util.resource.Labels;
import org.zkoss.zul.Listcell;
import org.zkoss.zul.Listitem;
import org.zkoss.zul.ListitemRenderer;
import com.rjconsultores.ventaboletos.entidad.OrgaoCancelacion;
import com.rjconsultores.ventaboletos.entidad.OrgaoConcedente;
public class RenderOrgaoCancelacion implements ListitemRenderer {
public void render(Listitem lstm, Object o) throws Exception {
OrgaoCancelacion orgaoCancelacion = (OrgaoCancelacion) o;
DecimalFormat df = new DecimalFormat("#0.00");
Listcell lc = new Listcell(orgaoCancelacion.getEmpresa().getNombempresa());
lc.setParent(lstm);
lc = new Listcell(df.format(orgaoCancelacion.getPorccambio()));
lc.setParent(lstm);
lc = new Listcell(df.format(orgaoCancelacion.getPorccambio()));
lc.setParent(lstm);
lstm.setAttribute("data", orgaoCancelacion);
}
}

View File

@ -155,8 +155,8 @@
</value>
<value>com.rjconsultores.ventaboletos.entidad.MotivoViaje</value>
<value>com.rjconsultores.ventaboletos.entidad.Nodo</value>
<value>com.rjconsultores.ventaboletos.entidad.OrgaoConcedente
</value>
<value>com.rjconsultores.ventaboletos.entidad.OrgaoCancelacion</value>
<value>com.rjconsultores.ventaboletos.entidad.OrgaoConcedente</value>
<value>com.rjconsultores.ventaboletos.entidad.OrgaoTramo</value>
<value>com.rjconsultores.ventaboletos.entidad.Pais</value>
<value>com.rjconsultores.ventaboletos.entidad.Parada</value>

View File

@ -4156,6 +4156,12 @@ editarOrgaoConcedenteController.lhDesc.label = Nombre
editarOrgaoConcedenteController.MSG.suscribirOK = Instituición concedente se registró exitosamente
editarOrgaoConcedenteController.MSG.borrarPergunta = Deseas eliminar instituición concedente
editarOrgaoConcedenteController.MSG.borrarOK = Instituición concedente se eliminó existosamente
editarOrgaoConcedenteController.MSG.parametroRepetido=Ya existe parámetro para esta empresa.
editarOrgaoConcedenteController.tabOrgaoConcedente.value=Instituición concedente
editarOrgaoConcedenteController.tabParametrosCancelacion.value=Parámetros Cancelamento
editarOrgaoConcedenteController.empresa.label=Empresa
editarOrgaoConcedenteController.porcMulta.label=Porc Multa
editarOrgaoConcedenteController.porcCambio.label=Porc Cambio
# Busqueda Indice Tarifa

View File

@ -4205,7 +4205,12 @@ editarOrgaoConcedenteController.lhDesc.label = Nome
editarOrgaoConcedenteController.MSG.suscribirOK = Órgão Concedente Registrao com Sucesso.
editarOrgaoConcedenteController.MSG.borrarPergunta = Deseja eliminar Órgão Concedente
editarOrgaoConcedenteController.MSG.borrarOK = Órgão Concedente eliminado com sucesso.
editarOrgaoConcedenteController.MSG.parametroRepetido=Já existe parâmetro para esta empresa.
editarOrgaoConcedenteController.tabOrgaoConcedente.value=Órgão Concedente
editarOrgaoConcedenteController.tabParametrosCancelacion.value=Parâmetros Cancelamento
editarOrgaoConcedenteController.empresa.label=Empresa
editarOrgaoConcedenteController.porcMulta.label=Porc Multa
editarOrgaoConcedenteController.porcCambio.label=Porc Cambio
# Busqueda Coeficiente Tarifa
busquedaCoeficienteTarifaController.window.title = Coeficiente Tarifario

View File

@ -6,7 +6,7 @@
<zk xmlns="http://www.zkoss.org/2005/zul">
<window id="winEditarOrgaoConcedente" border="normal"
apply="${editarOrgaoConcedenteController}" width="400px" height="457x"
apply="${editarOrgaoConcedenteController}" width="480px" height="457px"
contentStyle="overflow:auto"
title="${c:l('editarOrgaoConcedenteController.window.title')}">
<toolbar>
@ -20,40 +20,99 @@
tooltiptext="${c:l('editarOrgaoConcedenteController.btnFechar.tooltiptext')}" />
</hbox>
</toolbar>
<grid fixedLayout="true">
<columns>
<column width="40%" />
<column width="60%" />
</columns>
<rows>
<row>
<label
value="${c:l('editarOrgaoConcedenteController.lhDesc.label')}" />
<textbox id="txtNome" constraint="no empty"
width="100%" maxlength="20"
value="@{winEditarOrgaoConcedente$composer.orgaoConcedente.descOrgao}"
use="com.rjconsultores.ventaboletos.web.utilerias.MyTextbox" />
</row>
<row>
<label
value="${c:l('busquedaOrgaoConcedenteController.indDefaultSeguro.label')}" />
<checkbox
checked="@{winEditarOrgaoConcedente$composer.orgaoConcedente.indDefaultSeguro}" />
</row>
<row>
<label
value="${c:l('busquedaOrgaoConcedenteController.indSubSeguro.label')}" />
<checkbox
checked="@{winEditarOrgaoConcedente$composer.orgaoConcedente.indSubSeguro}" />
</row>
<row>
<label
value="${c:l('busquedaOrgaoConcedenteController.indNomDocObligatorio.label')}" />
<checkbox
checked="@{winEditarOrgaoConcedente$composer.orgaoConcedente.indNomDocObligatorio}" />
</row>
</rows>
</grid>
<tabbox id="tb" height="92%">
<tabs id="tabs">
<tab id="tabControl"
label="${c:l('editarOrgaoConcedenteController.tabOrgaoConcedente.value')}" />
<tab id="tabCategoria"
label="${c:l('editarOrgaoConcedenteController.tabParametrosCancelacion.value')}" />
</tabs>
<tabpanels>
<tabpanel>
<grid fixedLayout="true">
<columns>
<column width="40%" />
<column width="60%" />
</columns>
<rows>
<row>
<label
value="${c:l('editarOrgaoConcedenteController.lhDesc.label')}" />
<textbox id="txtNome"
constraint="no empty" width="100%" maxlength="20"
value="@{winEditarOrgaoConcedente$composer.orgaoConcedente.descOrgao}"
use="com.rjconsultores.ventaboletos.web.utilerias.MyTextbox" />
</row>
<row>
<label
value="${c:l('busquedaOrgaoConcedenteController.indDefaultSeguro.label')}" />
<checkbox
checked="@{winEditarOrgaoConcedente$composer.orgaoConcedente.indDefaultSeguro}" />
</row>
<row>
<label
value="${c:l('busquedaOrgaoConcedenteController.indSubSeguro.label')}" />
<checkbox
checked="@{winEditarOrgaoConcedente$composer.orgaoConcedente.indSubSeguro}" />
</row>
<row>
<label
value="${c:l('busquedaOrgaoConcedenteController.indNomDocObligatorio.label')}" />
<checkbox
checked="@{winEditarOrgaoConcedente$composer.orgaoConcedente.indNomDocObligatorio}" />
</row>
</rows>
</grid>
</tabpanel>
<tabpanel>
<grid fixedLayout="true">
<columns>
<column width="40%" />
<column width="60%" />
</columns>
<rows>
<row>
<label value="${c:l('editarOrgaoConcedenteController.empresa.label')}"/>
<combobox id="cmbEmpresa" use="com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEmpresa"
mold="rounded" buttonVisible="true" width="90%" sinTodos="false"/>
</row>
<row>
<label value="${c:l('editarOrgaoConcedenteController.porcMulta.label')}"/>
<textbox id="txtPorcMulta" constraint="no empty" width="60%" maxlength="60"
use="com.rjconsultores.ventaboletos.web.utilerias.MyTextboxDecimal"
value="@{winEditarConfiguracionReservacion$composer.reservacionCtrl.descConfig}"/>
</row>
<row>
<label value="${c:l('editarOrgaoConcedenteController.porcCambio.label')}"/>
<textbox id="txtPorcCambio" constraint="no empty" width="60%" maxlength="60"
use="com.rjconsultores.ventaboletos.web.utilerias.MyTextboxDecimal"
value="@{winEditarConfiguracionReservacion$composer.reservacionCtrl.descConfig}"/>
</row>
</rows>
</grid>
<toolbar>
<hbox>
<button id="btnAdicionarParametros" height="20"
image="/gui/img/add.png" width="35px"
tooltiptext="${c:l('editarConfiguracionReservacionController.btnAddParametros.tooltiptext')}"/>
<button id="btnRemoverParametros" height="20"
image="/gui/img/remove.png" width="35px"
tooltiptext="${c:l('editarConfiguracionReservacionController.btnBorrarParametros.tooltiptext')}"/>
</hbox>
</toolbar>
<listbox id="orgaoCancelacionList" use="com.rjconsultores.ventaboletos.web.utilerias.MyListbox"
multiple="false">
<listhead sizable="true">
<listheader image="/gui/img/create_doc.gif"
label="${c:l('editarOrgaoConcedenteController.empresa.label')}"/>
<listheader image="/gui/img/create_doc.gif"
label="${c:l('editarOrgaoConcedenteController.porcMulta.label')}"/>
<listheader image="/gui/img/create_doc.gif"
label="${c:l('editarOrgaoConcedenteController.porcCambio.label')}"/>
</listhead>
</listbox>
</tabpanel>
</tabpanels>
</tabbox>
</window>
</zk>