diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarCoeficienteTarifaController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarCoeficienteTarifaController.java index 59161e3fd..80ba79aac 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarCoeficienteTarifaController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarCoeficienteTarifaController.java @@ -15,6 +15,7 @@ import com.rjconsultores.ventaboletos.service.CoeficienteTarifaService; 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; @Controller("editarCoeficienteTarifaController") @Scope("prototype") @@ -27,6 +28,7 @@ public class EditarCoeficienteTarifaController extends MyGenericForwardComposer private MyListbox coeficienteTarifaList; private Button btnApagar; private MyTextbox txtNome; + private MyTextboxDecimal txtCoeficiente; public CoeficienteTarifa getCoeficienteTarifa() { return coeficienteTarifa; @@ -45,6 +47,8 @@ public class EditarCoeficienteTarifaController extends MyGenericForwardComposer if (coeficienteTarifa.getCoeficienteId() == null) { btnApagar.setVisible(Boolean.FALSE); + } else { + txtCoeficiente.setValue(coeficienteTarifa.getCoeficiente().toString()); } txtNome.focus(); @@ -52,6 +56,8 @@ public class EditarCoeficienteTarifaController extends MyGenericForwardComposer public void onClick$btnSalvar(Event ev) throws InterruptedException { txtNome.getValue(); + txtCoeficiente.getValue(); + coeficienteTarifa.setCoeficiente(txtCoeficiente.getValueDecimal()); if (coeficienteTarifa.getCoeficienteId() == null) { coeficienteTarifaService.suscribir(coeficienteTarifa); diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarPuntoVentaController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarPuntoVentaController.java index 81145fc4c..73d588765 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarPuntoVentaController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarPuntoVentaController.java @@ -4,6 +4,29 @@ */ package com.rjconsultores.ventaboletos.web.gui.controladores.catalogos; +import java.math.BigDecimal; +import java.util.ArrayList; +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.zkplus.databind.BindingListModel; +import org.zkoss.zkplus.databind.BindingListModelList; +import org.zkoss.zul.Button; +import org.zkoss.zul.Combobox; +import org.zkoss.zul.Comboitem; +import org.zkoss.zul.Doublebox; +import org.zkoss.zul.Messagebox; +import org.zkoss.zul.Radio; +import org.zkoss.zul.Textbox; + import com.rjconsultores.ventaboletos.entidad.Ciudad; import com.rjconsultores.ventaboletos.entidad.Colonia; import com.rjconsultores.ventaboletos.entidad.Empresa; @@ -23,7 +46,6 @@ import com.rjconsultores.ventaboletos.service.EmpresaService; import com.rjconsultores.ventaboletos.service.FormaPagoService; import com.rjconsultores.ventaboletos.service.MonedaService; import com.rjconsultores.ventaboletos.service.NodoService; -import com.rjconsultores.ventaboletos.service.ParamRecoleccionService; import com.rjconsultores.ventaboletos.service.PtoVtaUsuarioBancarioService; import com.rjconsultores.ventaboletos.service.PtovtaEmpresaService; import com.rjconsultores.ventaboletos.service.PuntoVentaService; @@ -38,983 +60,958 @@ import com.rjconsultores.ventaboletos.web.utilerias.render.FormaPagoDetRender; import com.rjconsultores.ventaboletos.web.utilerias.render.ParamRecoleccionRender; import com.rjconsultores.ventaboletos.web.utilerias.render.PtovtaEmpresaRender; import com.rjconsultores.ventaboletos.web.utilerias.render.PtovtaUsuarioBancarioRender; -import java.math.BigDecimal; -import java.util.ArrayList; -import org.apache.log4j.Logger; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.context.annotation.Scope; -import org.springframework.stereotype.Controller; -import java.util.Calendar; -import java.util.List; -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.zkplus.databind.BindingListModel; -import org.zkoss.zkplus.databind.BindingListModelList; -import org.zkoss.zul.Button; -import org.zkoss.zul.Combobox; -import org.zkoss.zul.Comboitem; -import org.zkoss.zul.Doublebox; -import org.zkoss.zul.Messagebox; -import org.zkoss.zul.Radio; -import org.zkoss.zul.Textbox; /** - * + * * @author Rafius */ @Controller("editarPuntoVentaController") @Scope("prototype") public class EditarPuntoVentaController extends MyGenericForwardComposer { - @Autowired - private PuntoVentaService puntoVentaService; - @Autowired - private EmpresaService empresaService; - @Autowired - private TipoPuntoVentaService tipoPuntoVentaService; - @Autowired - private MonedaService monedaService; - @Autowired - private NodoService nodoService; - @Autowired - private FormaPagoService formaPagoService; - @Autowired - private CiudadService ciudadService; - @Autowired - private ColoniaService coloniaService; - @Autowired - private PtovtaEmpresaService ptovtaEmpresaService; - @Autowired - private PtoVtaUsuarioBancarioService ptoVtaUsuarioBancarioService; - @Autowired - private UsuarioBancarioService usuarioBancarioService; - @Autowired - private ParamRecoleccionService paramRecoleccionService; - private PuntoVenta puntoVenta; - private Textbox txtCP; - private MyListbox puntoVentaList; - private MyListbox paramRecoleccionList; - private MyListbox formaPagoList; - private MyListbox ptovtaEmpresaList; - private MyListbox ptovtaUsuarioBancarioList; - private static Logger log = Logger.getLogger(EditarPuntoVentaController.class); - private List lsEmpresas; - private List lsTipoPuntoVenta; - private List lsMoneda; - private List lsColonia; - private List lsCiudad; - private List lsNodos; - private List lsFormaPago; - private List lsFormaPagoDet; - private List lsParamRecoleccion; - private List lsUsuarioBancario; - private List lsPtovtaEmpresa; - private List lsPtovtaUsuarioBancario; - private MyTextbox txtNome; - private Radio radDatosTarjetaSi; - private Radio radDatosTarjetaNo; - private Radio radAprobacionAutorizado; - private Radio radAprobacionLatente; - private Combobox cmbFormaPago; - private Combobox cmbEmpresa; - private Combobox cmbEmpresaPtoVta; - private Combobox cmbEmpresaPtoVtaUsuarioBancario; - private Combobox cmbParada; - private Combobox cmbTipoPontoVenta; - private Combobox cmbMoneda; - private Combobox cmbNodo; - private Button btnSalvarFormaPago; - private Doublebox txtCargosExtras; - private Button btnApagar; - private Combobox cmbCiudad; - private Combobox cmbColonia; - private Combobox cmbConexion; - private Combobox cmbUsuarioBancario; - private Combobox cmbUsuarioBancarioPtoVtaUsuarioBancario; - private MyTextboxDecimal importeInicial; - private MyTextboxDecimal importeAdicional; - - public Button getBtnApagar() { - return btnApagar; - } - - public void setBtnApagar(Button btnApagar) { - this.btnApagar = btnApagar; - } - - @Override - public void doAfterCompose(Component comp) throws Exception { - lsEmpresas = empresaService.obtenerIndTipo1(); - lsMoneda = monedaService.obtenerTodos(); - lsCiudad = ciudadService.obtenerTodos(); - lsColonia = new ArrayList(); - lsNodos = nodoService.obtenerTodos(); - lsFormaPago = formaPagoService.obtenerTodos(); - lsTipoPuntoVenta = tipoPuntoVentaService.obtenerTodos(); - lsUsuarioBancario = usuarioBancarioService.obtenerTodos(); - - super.doAfterCompose(comp); - try { - txtCP.setDisabled(true); - puntoVenta = (PuntoVenta) Executions.getCurrent().getArg().get("puntoVenta"); - if (puntoVenta.getPuntoventaId() != null) { - puntoVenta = puntoVentaService.obtenerID(puntoVenta.getPuntoventaId()); - if (puntoVenta.getColonia() != null) { - cmbCiudad.setText(puntoVenta.getColonia().getCiudad().getNombciudad()); - cmbColonia.setText(puntoVenta.getColonia().getDesccolonia()); - } - } - - puntoVentaList = (MyListbox) Executions.getCurrent().getArg().get("puntoVentaList"); - - if (puntoVenta.getPuntoventaId() != null) { - if (puntoVenta.getStatusaprobacion() != null) { - if (puntoVenta.getStatusaprobacion().equals("A")) { - radAprobacionAutorizado.setChecked(true); - } else if (puntoVenta.getStatusaprobacion().equals("L")) { - radAprobacionLatente.setChecked(true); - } - } - } - - formaPagoList.setItemRenderer(new FormaPagoDetRender()); - if (puntoVenta.getLsFormaPagoDet() == null) { - puntoVenta.setLsFormaPagoDet(new ArrayList()); - } - lsFormaPagoDet = puntoVenta.getLsFormaPagoDet(); - formaPagoList.setData(lsFormaPagoDet); - - paramRecoleccionList.setItemRenderer(new ParamRecoleccionRender()); - if (puntoVenta.getLsParamRecoleccion() == null) { - puntoVenta.setLsParamRecoleccion(new ArrayList()); - } - - lsParamRecoleccion = puntoVenta.getLsParamRecoleccion(); - paramRecoleccionList.setData(lsParamRecoleccion); - - ptovtaEmpresaList.setItemRenderer(new PtovtaEmpresaRender()); - if (puntoVenta.getLsPtovtaEmpresa() == null) { - puntoVenta.setLsPtovtaEmpresa(new ArrayList()); - } - - lsPtovtaEmpresa = puntoVenta.getLsPtovtaEmpresa(); - ptovtaEmpresaList.setData(lsPtovtaEmpresa); - - ptovtaUsuarioBancarioList.setItemRenderer(new PtovtaUsuarioBancarioRender()); - if (puntoVenta.getLsPtovtaUsuarioBancario() == null) { - puntoVenta.setLsPtovtaUsuarioBancario(new ArrayList()); - } - - lsPtovtaUsuarioBancario = puntoVenta.getLsPtovtaUsuarioBancario(); - ptovtaUsuarioBancarioList.setData(lsPtovtaUsuarioBancario); - - if (puntoVenta.getPuntoventaId() == null) { - btnApagar.setVisible(Boolean.FALSE); - } else { - if (puntoVenta.getParada() != null) { - cmbParada.setText(puntoVenta.getParada().getDescparada()); - } - } - } catch (Exception e) { - log.error("Punto de Venta: " + e); - Messagebox.show( - Labels.getLabel("MSG.Error"), - Labels.getLabel("editarEmpresaController.window.title"), - Messagebox.OK, Messagebox.ERROR); - } - txtNome.focus(); - } - - public void onChange$cmbCiudad(Event ev) { - if (cmbCiudad.getSelectedItem() == null) { - return; - } else { - cmbColonia.setSelectedItem(null); - Ciudad c = (Ciudad) cmbCiudad.getSelectedItem().getValue(); - List lsCol = coloniaService.buscarPorCiudad(c); - BindingListModel dictModel = new BindingListModelList(lsCol, false); - cmbColonia.setModel(dictModel); - } - } - - public void onChange$cmbColonia(Event ev) { - if (cmbColonia.getSelectedItem() == null) { - return; - } else { - Colonia col = (Colonia) cmbColonia.getSelectedItem().getValue(); - txtCP.setValue(col.getCodpostal()); - } - } - - public void onClick$btnSalvar(Event ev) throws InterruptedException { - txtNome.getValue(); - cmbEmpresa.getValue(); - cmbParada.getValue(); - cmbTipoPontoVenta.getValue(); - cmbMoneda.getValue(); - cmbNodo.getValue(); - cmbColonia.setConstraint("no empty"); - cmbColonia.getValue(); - cmbCiudad.getValue(); - try { - if (puntoVenta.getEmpresa() == null) { - Messagebox.show( - Labels.getLabel("editarPuntoVentaController.MSG.empresa"), - Labels.getLabel("editarPuntoVentaController.window.title"), - Messagebox.OK, Messagebox.EXCLAMATION); - } else if (puntoVenta.getTipoPuntoVenta() == null) { - Messagebox.show( - Labels.getLabel("editarPuntoVentaController.MSG.punto"), - Labels.getLabel("editarPuntoVentaController.window.title"), - Messagebox.OK, Messagebox.EXCLAMATION); - } else if (puntoVenta.getMoneda() == null) { - Messagebox.show( - Labels.getLabel("editarPuntoVentaController.MSG.moneda"), - Labels.getLabel("editarPuntoVentaController.window.title"), - Messagebox.OK, Messagebox.EXCLAMATION); - } else if (puntoVenta.getNodo() == null) { - Messagebox.show( - Labels.getLabel("editarPuntoVentaController.MSG.nodo"), - Labels.getLabel("editarPuntoVentaController.window.title"), - Messagebox.OK, Messagebox.EXCLAMATION); - } else if (lsFormaPagoDet.isEmpty()) { - Messagebox.show( - Labels.getLabel("editarPuntoVentaController.MSG.formaDePago"), - Labels.getLabel("editarPuntoVentaController.window.title"), - Messagebox.OK, Messagebox.EXCLAMATION); - } else { - - if (cmbConexion.getValue().equals("")) { - puntoVenta.setConexionBancaria(null); - puntoVenta.setUsuarioBancario(null); - } - - if (cmbUsuarioBancario.getValue() == null) { - puntoVenta.setUsuarioBancario(null); - } - - List lsPv = puntoVentaService.buscar(puntoVenta); - - boolean podeSalvar = false; - - if (lsPv.isEmpty()) { - podeSalvar = true; - } - for (PuntoVenta pv : lsPv) { - if (pv.getPuntoventaId().equals(puntoVenta.getPuntoventaId())) { - podeSalvar = true; - } - } - - if (podeSalvar) { - if (cmbColonia.getSelectedItem() != null) { - puntoVenta.setColonia((Colonia) cmbColonia.getSelectedItem().getValue()); - } - puntoVenta.setActivo(Boolean.TRUE); - puntoVenta.setFecmodif(Calendar.getInstance().getTime()); - puntoVenta.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - puntoVenta.setLsFormaPagoDet(lsFormaPagoDet); - puntoVenta.setLsParamRecoleccion(lsParamRecoleccion); - puntoVenta.setLsPtovtaEmpresa(lsPtovtaEmpresa); - puntoVenta.setLsPtovtaUsuarioBancario(lsPtovtaUsuarioBancario); - - List lsPto = new ArrayList(); - for (PtovtaEmpresa pto : lsPtovtaEmpresa) { - if (!pto.getActivo()) { - ptovtaEmpresaService.borrarFisico(pto); - } else { - pto.setPuntoVenta(puntoVenta); - lsPto.add(pto); - } - } - puntoVenta.setLsPtovtaEmpresa(lsPto); - - List lsPto2 = new ArrayList(); - for (PtoVtaUsuarioBancario pto2 : lsPtovtaUsuarioBancario) { - if (!pto2.getActivo()) { - ptoVtaUsuarioBancarioService.borrarFisico(pto2); - } else { - pto2.setPuntoVenta(puntoVenta); - lsPto2.add(pto2); - } - } - puntoVenta.setLsPtovtaUsuarioBancario(lsPto2); - - if (radAprobacionAutorizado.isChecked()) { - puntoVenta.setStatusaprobacion("A"); - } else if (radAprobacionLatente.isChecked()) { - puntoVenta.setStatusaprobacion("L"); - } - - if (puntoVenta.getPuntoventaId() == null) { - puntoVentaService.suscribir(puntoVenta); - puntoVentaList.addItem(puntoVenta); - } else { - puntoVentaService.actualizacion(puntoVenta); - puntoVentaList.updateItem(puntoVenta); - } - - Messagebox.show( - Labels.getLabel("editarPuntoVentaController.MSG.suscribirOK"), - Labels.getLabel("editarPuntoVentaController.window.title"), - Messagebox.OK, Messagebox.INFORMATION); - - closeWindow(); - } else { - Messagebox.show( - Labels.getLabel("MSG.Registro.Existe"), - Labels.getLabel("editarPuntoVentaController.window.title"), - Messagebox.OK, Messagebox.EXCLAMATION); - } - } - } catch (Exception ex) { - log.error("editarPuntoVentaController: " + ex); - Messagebox.show( - Labels.getLabel("MSG.Error"), - Labels.getLabel("editarPuntoVentaController.window.title"), - Messagebox.OK, Messagebox.ERROR); - } - } - - public void onClick$btnApagar(Event ev) { - try { - int resp = Messagebox.show( - Labels.getLabel("editarPuntoVentaController.MSG.borrarPergunta"), - Labels.getLabel("editarPuntoVentaController.window.title"), - Messagebox.YES | Messagebox.NO, Messagebox.QUESTION); - - if (resp == Messagebox.YES) { - - puntoVentaService.borrar(puntoVenta); - - Messagebox.show( - Labels.getLabel("editarPuntoVentaController.MSG.borrarOK"), - Labels.getLabel("editarPuntoVentaController.window.title"), - Messagebox.OK, Messagebox.INFORMATION); - - puntoVentaList.removeItem(puntoVenta); - - closeWindow(); - } - } catch (Exception ex) { - log.error(ex); - } - } - - public void onClick$btnSalvarFormaPago(Event ev) throws InterruptedException { - cmbFormaPago.getValue(); - txtCargosExtras.getValue(); - try { - FormaPago formaPago = new FormaPago(); - try { - formaPago = (FormaPago) cmbFormaPago.getSelectedItem().getValue(); - Boolean achou = Boolean.FALSE; - if (formaPago != null) { - for (FormaPagoDet fpd : lsFormaPagoDet) { - if (fpd.getFormaPago().getFormapagoId().equals(formaPago.getFormapagoId())) { - achou = Boolean.TRUE; - } - } - if (!achou) { - FormaPagoDet fpd = new FormaPagoDet(); - fpd.setCargosextras(new BigDecimal(txtCargosExtras.getValue())); - fpd.setFormaPago(formaPago); - fpd.setPuntoVenta(puntoVenta); - - - - fpd.setActivo(Boolean.TRUE); - fpd.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - fpd.setFecmodif(Calendar.getInstance().getTime()); - - lsFormaPagoDet.add(fpd); - formaPagoList.setData(lsFormaPagoDet); - } else { - Messagebox.show( - Labels.getLabel("editarPuntoVentaController.MSG.Achou.FormaPago"), - Labels.getLabel("editarPuntoVentaController.window.title"), - Messagebox.OK, Messagebox.EXCLAMATION); - } - } - } catch (Exception e) { - Messagebox.show( - Labels.getLabel("editarPuntoVentaController.MSG.formaDePago"), - Labels.getLabel("editarPuntoVentaController.window.title"), - Messagebox.OK, Messagebox.EXCLAMATION); - } - } catch (Exception ex) { - log.error(ex); - Messagebox.show( - Labels.getLabel("MSG.Error"), - Labels.getLabel("editarPuntoVentaController.window.title"), - Messagebox.OK, Messagebox.ERROR); - } - } - - public void onClick$btnApagarFormaPago(Event ev) { - try { - FormaPagoDet fpd = (FormaPagoDet) formaPagoList.getSelected(); - if (fpd != null) { - fpd.setActivo(Boolean.FALSE); - fpd.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - fpd.setFecmodif(Calendar.getInstance().getTime()); - - formaPagoList.removeItem(fpd); - lsFormaPagoDet.remove(fpd); - } - } catch (Exception ex) { - log.error(ex); - } - } - - public void onClick$btnSalvarParamRecoleccion(Event ev) throws InterruptedException { - importeInicial.getValue(); - importeAdicional.getValue(); - try { - ParamRecoleccion paramRecoleccion = new ParamRecoleccion(); - paramRecoleccion.setImporteinicial(importeInicial.getValueDecimal()); - paramRecoleccion.setImporteadicional(importeAdicional.getValueDecimal()); - - - Boolean achou = Boolean.FALSE; - - for (ParamRecoleccion fpd : lsParamRecoleccion) { - if (fpd.getImporteinicial().equals(paramRecoleccion.getImporteinicial())) { - achou = Boolean.TRUE; - } - } - if (!achou) { - - paramRecoleccion.setPuntoVenta(puntoVenta); - paramRecoleccion.setActivo(Boolean.TRUE); - paramRecoleccion.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - paramRecoleccion.setFecmodif(Calendar.getInstance().getTime()); - - lsParamRecoleccion.add(paramRecoleccion); - paramRecoleccionList.setData(lsParamRecoleccion); - } else { - Messagebox.show( - Labels.getLabel("editarPuntoVentaController.MSG.Achou.ParamRecoleccion"), - Labels.getLabel("editarPuntoVentaController.window.title"), - Messagebox.OK, Messagebox.EXCLAMATION); - } - - - } catch (Exception ex) { - log.error(ex); - Messagebox.show( - Labels.getLabel("MSG.Error"), - Labels.getLabel("editarPuntoVentaController.window.title"), - Messagebox.OK, Messagebox.ERROR); - } - } - - public void onClick$btnApagarParamRecoleccion(Event ev) { - try { - ParamRecoleccion fpd = (ParamRecoleccion) paramRecoleccionList.getSelected(); - if (fpd != null) { - fpd.setActivo(Boolean.FALSE); - fpd.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - fpd.setFecmodif(Calendar.getInstance().getTime()); - - paramRecoleccionList.removeItem(fpd); - lsParamRecoleccion.remove(fpd); - } - } catch (Exception ex) { - log.error(ex); - } - } - - public void onClick$btnSalvarPtovtaEmpresa(Event ev) throws InterruptedException { - cmbEmpresaPtoVta.getValue(); - try { - PtovtaEmpresa ptovtaEmpresa = new PtovtaEmpresa(); - - Boolean achou = Boolean.FALSE; - - ptovtaEmpresa.setEmpresa((Empresa) cmbEmpresaPtoVta.getSelectedItem().getValue()); - - for (PtovtaEmpresa fpd : lsPtovtaEmpresa) { - if (fpd.getEmpresa().equals(ptovtaEmpresa.getEmpresa()) - && fpd.getActivo()) { - achou = Boolean.TRUE; - } - } - if (!achou) { - - ptovtaEmpresa.setPuntoVenta(puntoVenta); - ptovtaEmpresa.setActivo(Boolean.TRUE); - ptovtaEmpresa.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - ptovtaEmpresa.setFecmodif(Calendar.getInstance().getTime()); - - lsPtovtaEmpresa.add(ptovtaEmpresa); - - List lsP = new ArrayList(); - for (PtovtaEmpresa p : lsPtovtaEmpresa) { - if (p.getActivo()) { - lsP.add(p); - } - } - ptovtaEmpresaList.setData(lsP); - //ptovtaEmpresaList.addItem(ptovtaEmpresa); - } else { - Messagebox.show( - Labels.getLabel("editarPuntoVentaController.MSG.Achou.PtovtaEmpresa"), - Labels.getLabel("editarPuntoVentaController.window.title"), - Messagebox.OK, Messagebox.EXCLAMATION); - } - - - } catch (Exception ex) { - log.error(ex); - Messagebox.show( - Labels.getLabel("MSG.Error"), - Labels.getLabel("editarPuntoVentaController.window.title"), - Messagebox.OK, Messagebox.ERROR); - } - } - - public void onClick$btnApagarPtovtaEmpresa(Event ev) { - try { - PtovtaEmpresa fpd = (PtovtaEmpresa) ptovtaEmpresaList.getSelected(); - if (fpd != null) { - lsPtovtaEmpresa.remove(fpd); - ptovtaEmpresaList.removeItem(fpd); - if (fpd.getPtovtaempresaId() != null) { - fpd.setActivo(Boolean.FALSE); - fpd.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - fpd.setFecmodif(Calendar.getInstance().getTime()); - fpd.setPuntoVenta(puntoVenta); - - lsPtovtaEmpresa.add(fpd); - } - } - } catch (Exception ex) { - log.error(ex); - } - } - - public void onChange$cmbConexion(Event ev) { - habilitarCombo(); - } - - private void habilitarCombo() { - Comboitem cbi = cmbConexion.getSelectedItem(); - if (cbi != null) { - String valor = (String) cbi.getValue(); - - if (valor.equals("S")) { - cmbUsuarioBancario.setDisabled(Boolean.FALSE); - } - } - } - - public void onClick$btnSalvarPtovtaUsuarioBancario(Event ev) throws InterruptedException { - cmbEmpresaPtoVtaUsuarioBancario.getValue(); - cmbUsuarioBancarioPtoVtaUsuarioBancario.getValue(); - - try { - PtoVtaUsuarioBancario usuarioBancario = new PtoVtaUsuarioBancario(); - usuarioBancario.setEmpresa((Empresa) cmbEmpresaPtoVtaUsuarioBancario.getSelectedItem().getValue()); - usuarioBancario.setUsuarioBancario((UsuarioBancario) cmbUsuarioBancarioPtoVtaUsuarioBancario.getSelectedItem().getValue()); - - Boolean achou = Boolean.FALSE; - - for (PtoVtaUsuarioBancario fpd : lsPtovtaUsuarioBancario) { - if (fpd.getEmpresa().equals(usuarioBancario.getEmpresa())) { - achou = Boolean.TRUE; - } - } - if (!achou) { - - usuarioBancario.setPuntoVenta(puntoVenta); - usuarioBancario.setActivo(Boolean.TRUE); - usuarioBancario.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - usuarioBancario.setFecmodif(Calendar.getInstance().getTime()); - - - lsPtovtaUsuarioBancario.add(usuarioBancario); - - List lsP = new ArrayList(); - for (PtoVtaUsuarioBancario p : lsPtovtaUsuarioBancario) { - if (p.getActivo()) { - lsP.add(p); - } - } - ptovtaUsuarioBancarioList.setData(lsP); - //ptovtaEmpresaList.addItem(ptovtaEmpresa); - - } else { - Messagebox.show( - Labels.getLabel("editarPuntoVentaController.MSG.Achou.PtovtaUsuario"), - Labels.getLabel("editarPuntoVentaController.window.title"), - Messagebox.OK, Messagebox.EXCLAMATION); - } - - - } catch (Exception ex) { - log.error(ex); - Messagebox.show( - Labels.getLabel("MSG.Error"), - Labels.getLabel("editarPuntoVentaController.window.title"), - Messagebox.OK, Messagebox.ERROR); - } - } - - public void onClick$btnApagarPtovtaUsuarioBancario(Event ev) { - try { - PtoVtaUsuarioBancario fpd = (PtoVtaUsuarioBancario) ptovtaUsuarioBancarioList.getSelected(); - if (fpd != null) { - ptovtaUsuarioBancarioList.removeItem(fpd); - lsPtovtaUsuarioBancario.remove(fpd); - if (fpd.getPtovtaUsuarioBancarioID() != null) { - fpd.setActivo(Boolean.FALSE); - fpd.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - fpd.setFecmodif(Calendar.getInstance().getTime()); - - lsPtovtaUsuarioBancario.add(fpd); - } - } - } catch (Exception ex) { - log.error(ex); - } - } - - public PuntoVenta getPuntoVenta() { - return puntoVenta; - } - - public void setPuntoVenta(PuntoVenta puntoVenta) { - this.puntoVenta = puntoVenta; - } - - public MyListbox getPuntoVentaList() { - return puntoVentaList; - } - - public void setPuntoVentaList(MyListbox puntoVentaList) { - this.puntoVentaList = puntoVentaList; - } - - public PuntoVentaService getPuntoVentaService() { - return puntoVentaService; - } - - public void setPuntoVentaService(PuntoVentaService puntoVentaService) { - this.puntoVentaService = puntoVentaService; - } - - public EmpresaService getEmpresaService() { - return empresaService; - } - - public void setEmpresaService(EmpresaService empresaService) { - this.empresaService = empresaService; - } - - public TipoPuntoVentaService getTipoPuntoVentaService() { - return tipoPuntoVentaService; - } - - public void setTipoPuntoVentaService(TipoPuntoVentaService tipoPuntoVentaService) { - this.tipoPuntoVentaService = tipoPuntoVentaService; - } - - public List getLsEmpresas() { - return lsEmpresas; - } - - public void setLsEmpresas(List lsEmpresas) { - this.lsEmpresas = lsEmpresas; - } - - public List getLsTipoPuntoVenta() { - return lsTipoPuntoVenta; - } - - public void setLsTipoPuntoVenta(List lsTipoPuntoVenta) { - this.lsTipoPuntoVenta = lsTipoPuntoVenta; - } - - public MonedaService getMonedaService() { - return monedaService; - } - - public void setMonedaService(MonedaService monedaService) { - this.monedaService = monedaService; - } - - public List getLsMoneda() { - return lsMoneda; - } - - public void setLsMoneda(List lsMoneda) { - this.lsMoneda = lsMoneda; - } - - public Radio getRadAprobacionAutorizado() { - return radAprobacionAutorizado; - } - - public void setRadAprobacionAutorizado(Radio radAprobacionAutorizado) { - this.radAprobacionAutorizado = radAprobacionAutorizado; - } - - public Radio getRadAprobacionLatente() { - return radAprobacionLatente; - } - - public void setRadAprobacionLatente(Radio radAprobacionLatente) { - this.radAprobacionLatente = radAprobacionLatente; - } - - public Radio getRadDatosTarjetaNo() { - return radDatosTarjetaNo; - } + private static final long serialVersionUID = 1L; + @Autowired + private PuntoVentaService puntoVentaService; + @Autowired + private EmpresaService empresaService; + @Autowired + private TipoPuntoVentaService tipoPuntoVentaService; + @Autowired + private MonedaService monedaService; + @Autowired + private NodoService nodoService; + @Autowired + private FormaPagoService formaPagoService; + @Autowired + private CiudadService ciudadService; + @Autowired + private ColoniaService coloniaService; + @Autowired + private PtovtaEmpresaService ptovtaEmpresaService; + @Autowired + private PtoVtaUsuarioBancarioService ptoVtaUsuarioBancarioService; + @Autowired + private UsuarioBancarioService usuarioBancarioService; + private PuntoVenta puntoVenta; + private Textbox txtCP; + private MyListbox puntoVentaList; + private MyListbox paramRecoleccionList; + private MyListbox formaPagoList; + private MyListbox ptovtaEmpresaList; + private MyListbox ptovtaUsuarioBancarioList; + private static Logger log = Logger.getLogger(EditarPuntoVentaController.class); + private List lsEmpresas; + private List lsTipoPuntoVenta; + private List lsMoneda; + private List lsColonia; + private List lsCiudad; + private List lsNodos; + private List lsFormaPago; + private List lsFormaPagoDet; + private List lsParamRecoleccion; + private List lsUsuarioBancario; + private List lsPtovtaEmpresa; + private List lsPtovtaUsuarioBancario; + private MyTextbox txtNome; + private Radio radDatosTarjetaSi; + private Radio radDatosTarjetaNo; + private Radio radAprobacionAutorizado; + private Radio radAprobacionLatente; + private Combobox cmbFormaPago; + private Combobox cmbEmpresa; + private Combobox cmbEmpresaPtoVta; + private Combobox cmbEmpresaPtoVtaUsuarioBancario; + private Combobox cmbParada; + private Combobox cmbTipoPontoVenta; + private Combobox cmbMoneda; + private Combobox cmbNodo; + private Button btnSalvarFormaPago; + private Doublebox txtCargosExtras; + private Button btnApagar; + private Combobox cmbCiudad; + private Combobox cmbColonia; + private Combobox cmbConexion; + private Combobox cmbUsuarioBancario; + private Combobox cmbUsuarioBancarioPtoVtaUsuarioBancario; + private MyTextboxDecimal importeInicial; + private MyTextboxDecimal importeAdicional; + + public Button getBtnApagar() { + return btnApagar; + } + + public void setBtnApagar(Button btnApagar) { + this.btnApagar = btnApagar; + } + + @Override + public void doAfterCompose(Component comp) throws Exception { + lsEmpresas = empresaService.obtenerIndTipo1(); + lsMoneda = monedaService.obtenerTodos(); + lsCiudad = ciudadService.obtenerTodos(); + lsColonia = new ArrayList(); + lsNodos = nodoService.obtenerTodos(); + lsFormaPago = formaPagoService.obtenerTodos(); + lsTipoPuntoVenta = tipoPuntoVentaService.obtenerTodos(); + lsUsuarioBancario = usuarioBancarioService.obtenerTodos(); + + super.doAfterCompose(comp); + try { + txtCP.setDisabled(true); + puntoVenta = (PuntoVenta) Executions.getCurrent().getArg().get("puntoVenta"); + if (puntoVenta.getPuntoventaId() != null) { + puntoVenta = puntoVentaService.obtenerID(puntoVenta.getPuntoventaId()); + if (puntoVenta.getColonia() != null) { + cmbCiudad.setText(puntoVenta.getColonia().getCiudad().getNombciudad()); + cmbColonia.setText(puntoVenta.getColonia().getDesccolonia()); + } + } + + puntoVentaList = (MyListbox) Executions.getCurrent().getArg().get("puntoVentaList"); + + if (puntoVenta.getPuntoventaId() != null) { + if (puntoVenta.getStatusaprobacion() != null) { + if (puntoVenta.getStatusaprobacion().equals("A")) { + radAprobacionAutorizado.setChecked(true); + } else if (puntoVenta.getStatusaprobacion().equals("L")) { + radAprobacionLatente.setChecked(true); + } + } + } + + formaPagoList.setItemRenderer(new FormaPagoDetRender()); + if (puntoVenta.getLsFormaPagoDet() == null) { + puntoVenta.setLsFormaPagoDet(new ArrayList()); + } + lsFormaPagoDet = puntoVenta.getLsFormaPagoDet(); + formaPagoList.setData(lsFormaPagoDet); + + paramRecoleccionList.setItemRenderer(new ParamRecoleccionRender()); + if (puntoVenta.getLsParamRecoleccion() == null) { + puntoVenta.setLsParamRecoleccion(new ArrayList()); + } + + lsParamRecoleccion = puntoVenta.getLsParamRecoleccion(); + paramRecoleccionList.setData(lsParamRecoleccion); + + ptovtaEmpresaList.setItemRenderer(new PtovtaEmpresaRender()); + if (puntoVenta.getLsPtovtaEmpresa() == null) { + puntoVenta.setLsPtovtaEmpresa(new ArrayList()); + } + + lsPtovtaEmpresa = puntoVenta.getLsPtovtaEmpresa(); + ptovtaEmpresaList.setData(lsPtovtaEmpresa); + + ptovtaUsuarioBancarioList.setItemRenderer(new PtovtaUsuarioBancarioRender()); + if (puntoVenta.getLsPtovtaUsuarioBancario() == null) { + puntoVenta.setLsPtovtaUsuarioBancario(new ArrayList()); + } + + lsPtovtaUsuarioBancario = puntoVenta.getLsPtovtaUsuarioBancario(); + ptovtaUsuarioBancarioList.setData(lsPtovtaUsuarioBancario); + + if (puntoVenta.getPuntoventaId() == null) { + btnApagar.setVisible(Boolean.FALSE); + } else { + if (puntoVenta.getParada() != null) { + cmbParada.setText(puntoVenta.getParada().getDescparada()); + } + } + } catch (Exception e) { + log.error("Punto de Venta: " + e); + Messagebox.show( + Labels.getLabel("MSG.Error"), + Labels.getLabel("editarEmpresaController.window.title"), + Messagebox.OK, Messagebox.ERROR); + } + txtNome.focus(); + } + + public void onChange$cmbCiudad(Event ev) { + if (cmbCiudad.getSelectedItem() == null) { + return; + } else { + cmbColonia.setSelectedItem(null); + Ciudad c = (Ciudad) cmbCiudad.getSelectedItem().getValue(); + List lsCol = coloniaService.buscarPorCiudad(c); + BindingListModel dictModel = new BindingListModelList(lsCol, false); + cmbColonia.setModel(dictModel); + } + } + + public void onChange$cmbColonia(Event ev) { + if (cmbColonia.getSelectedItem() == null) { + return; + } else { + Colonia col = (Colonia) cmbColonia.getSelectedItem().getValue(); + txtCP.setValue(col.getCodpostal()); + } + } + + public void onClick$btnSalvar(Event ev) throws InterruptedException { + txtNome.getValue(); + cmbEmpresa.getValue(); + cmbParada.getValue(); + cmbTipoPontoVenta.getValue(); + cmbMoneda.getValue(); + cmbNodo.getValue(); + cmbColonia.setConstraint("no empty"); + cmbColonia.getValue(); + cmbCiudad.getValue(); + try { + if (puntoVenta.getEmpresa() == null) { + Messagebox.show( + Labels.getLabel("editarPuntoVentaController.MSG.empresa"), + Labels.getLabel("editarPuntoVentaController.window.title"), + Messagebox.OK, Messagebox.EXCLAMATION); + } else if (puntoVenta.getTipoPuntoVenta() == null) { + Messagebox.show( + Labels.getLabel("editarPuntoVentaController.MSG.punto"), + Labels.getLabel("editarPuntoVentaController.window.title"), + Messagebox.OK, Messagebox.EXCLAMATION); + } else if (puntoVenta.getMoneda() == null) { + Messagebox.show( + Labels.getLabel("editarPuntoVentaController.MSG.moneda"), + Labels.getLabel("editarPuntoVentaController.window.title"), + Messagebox.OK, Messagebox.EXCLAMATION); + } else if (puntoVenta.getNodo() == null) { + Messagebox.show( + Labels.getLabel("editarPuntoVentaController.MSG.nodo"), + Labels.getLabel("editarPuntoVentaController.window.title"), + Messagebox.OK, Messagebox.EXCLAMATION); + } else if (lsFormaPagoDet.isEmpty()) { + Messagebox.show( + Labels.getLabel("editarPuntoVentaController.MSG.formaDePago"), + Labels.getLabel("editarPuntoVentaController.window.title"), + Messagebox.OK, Messagebox.EXCLAMATION); + } else { + + if (cmbConexion.getValue().equals("")) { + puntoVenta.setConexionBancaria(null); + puntoVenta.setUsuarioBancario(null); + } + + if (cmbUsuarioBancario.getValue() == null) { + puntoVenta.setUsuarioBancario(null); + } + + List lsPv = puntoVentaService.buscar(puntoVenta); + + boolean podeSalvar = false; + + if (lsPv.isEmpty()) { + podeSalvar = true; + } + for (PuntoVenta pv : lsPv) { + if (pv.getPuntoventaId().equals(puntoVenta.getPuntoventaId())) { + podeSalvar = true; + } + } + + if (podeSalvar) { + if (cmbColonia.getSelectedItem() != null) { + puntoVenta.setColonia((Colonia) cmbColonia.getSelectedItem().getValue()); + } + puntoVenta.setActivo(Boolean.TRUE); + puntoVenta.setFecmodif(Calendar.getInstance().getTime()); + puntoVenta.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + puntoVenta.setLsFormaPagoDet(lsFormaPagoDet); + puntoVenta.setLsParamRecoleccion(lsParamRecoleccion); + puntoVenta.setLsPtovtaEmpresa(lsPtovtaEmpresa); + puntoVenta.setLsPtovtaUsuarioBancario(lsPtovtaUsuarioBancario); + + List lsPto = new ArrayList(); + for (PtovtaEmpresa pto : lsPtovtaEmpresa) { + if (!pto.getActivo()) { + ptovtaEmpresaService.borrarFisico(pto); + } else { + pto.setPuntoVenta(puntoVenta); + lsPto.add(pto); + } + } + puntoVenta.setLsPtovtaEmpresa(lsPto); + + List lsPto2 = new ArrayList(); + for (PtoVtaUsuarioBancario pto2 : lsPtovtaUsuarioBancario) { + if (!pto2.getActivo()) { + ptoVtaUsuarioBancarioService.borrarFisico(pto2); + } else { + pto2.setPuntoVenta(puntoVenta); + lsPto2.add(pto2); + } + } + puntoVenta.setLsPtovtaUsuarioBancario(lsPto2); + + if (radAprobacionAutorizado.isChecked()) { + puntoVenta.setStatusaprobacion("A"); + } else if (radAprobacionLatente.isChecked()) { + puntoVenta.setStatusaprobacion("L"); + } + + if (puntoVenta.getPuntoventaId() == null) { + puntoVentaService.suscribir(puntoVenta); + puntoVentaList.addItem(puntoVenta); + } else { + puntoVentaService.actualizacion(puntoVenta); + puntoVentaList.updateItem(puntoVenta); + } + + Messagebox.show( + Labels.getLabel("editarPuntoVentaController.MSG.suscribirOK"), + Labels.getLabel("editarPuntoVentaController.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + + closeWindow(); + } else { + Messagebox.show( + Labels.getLabel("MSG.Registro.Existe"), + Labels.getLabel("editarPuntoVentaController.window.title"), + Messagebox.OK, Messagebox.EXCLAMATION); + } + } + } catch (Exception ex) { + log.error("editarPuntoVentaController: " + ex); + Messagebox.show( + Labels.getLabel("MSG.Error"), + Labels.getLabel("editarPuntoVentaController.window.title"), + Messagebox.OK, Messagebox.ERROR); + } + } + + public void onClick$btnApagar(Event ev) { + try { + int resp = Messagebox.show( + Labels.getLabel("editarPuntoVentaController.MSG.borrarPergunta"), + Labels.getLabel("editarPuntoVentaController.window.title"), + Messagebox.YES | Messagebox.NO, Messagebox.QUESTION); + + if (resp == Messagebox.YES) { + + puntoVentaService.borrar(puntoVenta); + + Messagebox.show( + Labels.getLabel("editarPuntoVentaController.MSG.borrarOK"), + Labels.getLabel("editarPuntoVentaController.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + + puntoVentaList.removeItem(puntoVenta); + + closeWindow(); + } + } catch (Exception ex) { + log.error(ex); + } + } + + public void onClick$btnSalvarFormaPago(Event ev) throws InterruptedException { + cmbFormaPago.getValue(); + txtCargosExtras.getValue(); + try { + FormaPago formaPago = new FormaPago(); + try { + formaPago = (FormaPago) cmbFormaPago.getSelectedItem().getValue(); + Boolean achou = Boolean.FALSE; + if (formaPago != null) { + for (FormaPagoDet fpd : lsFormaPagoDet) { + if (fpd.getFormaPago().getFormapagoId().equals(formaPago.getFormapagoId())) { + achou = Boolean.TRUE; + } + } + if (!achou) { + FormaPagoDet fpd = new FormaPagoDet(); + fpd.setCargosextras(new BigDecimal(txtCargosExtras.getValue())); + fpd.setFormaPago(formaPago); + fpd.setPuntoVenta(puntoVenta); + + fpd.setActivo(Boolean.TRUE); + fpd.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + fpd.setFecmodif(Calendar.getInstance().getTime()); + + lsFormaPagoDet.add(fpd); + formaPagoList.setData(lsFormaPagoDet); + } else { + Messagebox.show( + Labels.getLabel("editarPuntoVentaController.MSG.Achou.FormaPago"), + Labels.getLabel("editarPuntoVentaController.window.title"), + Messagebox.OK, Messagebox.EXCLAMATION); + } + } + } catch (Exception e) { + Messagebox.show( + Labels.getLabel("editarPuntoVentaController.MSG.formaDePago"), + Labels.getLabel("editarPuntoVentaController.window.title"), + Messagebox.OK, Messagebox.EXCLAMATION); + } + } catch (Exception ex) { + log.error(ex); + Messagebox.show( + Labels.getLabel("MSG.Error"), + Labels.getLabel("editarPuntoVentaController.window.title"), + Messagebox.OK, Messagebox.ERROR); + } + } + + public void onClick$btnApagarFormaPago(Event ev) { + try { + FormaPagoDet fpd = (FormaPagoDet) formaPagoList.getSelected(); + if (fpd != null) { + fpd.setActivo(Boolean.FALSE); + fpd.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + fpd.setFecmodif(Calendar.getInstance().getTime()); + + formaPagoList.removeItem(fpd); + lsFormaPagoDet.remove(fpd); + } + } catch (Exception ex) { + log.error(ex); + } + } + + public void onClick$btnSalvarParamRecoleccion(Event ev) throws InterruptedException { + importeInicial.getValue(); + importeAdicional.getValue(); + try { + ParamRecoleccion paramRecoleccion = new ParamRecoleccion(); + paramRecoleccion.setImporteinicial(importeInicial.getValueDecimal()); + paramRecoleccion.setImporteadicional(importeAdicional.getValueDecimal()); + + Boolean achou = Boolean.FALSE; + + for (ParamRecoleccion fpd : lsParamRecoleccion) { + if (fpd.getImporteinicial().equals(paramRecoleccion.getImporteinicial())) { + achou = Boolean.TRUE; + } + } + if (!achou) { + + paramRecoleccion.setPuntoVenta(puntoVenta); + paramRecoleccion.setActivo(Boolean.TRUE); + paramRecoleccion.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + paramRecoleccion.setFecmodif(Calendar.getInstance().getTime()); + + lsParamRecoleccion.add(paramRecoleccion); + paramRecoleccionList.setData(lsParamRecoleccion); + } else { + Messagebox.show( + Labels.getLabel("editarPuntoVentaController.MSG.Achou.ParamRecoleccion"), + Labels.getLabel("editarPuntoVentaController.window.title"), + Messagebox.OK, Messagebox.EXCLAMATION); + } + + } catch (Exception ex) { + log.error(ex); + Messagebox.show( + Labels.getLabel("MSG.Error"), + Labels.getLabel("editarPuntoVentaController.window.title"), + Messagebox.OK, Messagebox.ERROR); + } + } + + public void onClick$btnApagarParamRecoleccion(Event ev) { + try { + ParamRecoleccion fpd = (ParamRecoleccion) paramRecoleccionList.getSelected(); + if (fpd != null) { + fpd.setActivo(Boolean.FALSE); + fpd.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + fpd.setFecmodif(Calendar.getInstance().getTime()); + + paramRecoleccionList.removeItem(fpd); + lsParamRecoleccion.remove(fpd); + } + } catch (Exception ex) { + log.error(ex); + } + } + + public void onClick$btnSalvarPtovtaEmpresa(Event ev) throws InterruptedException { + cmbEmpresaPtoVta.getValue(); + try { + PtovtaEmpresa ptovtaEmpresa = new PtovtaEmpresa(); + + Boolean achou = Boolean.FALSE; + + ptovtaEmpresa.setEmpresa((Empresa) cmbEmpresaPtoVta.getSelectedItem().getValue()); + + for (PtovtaEmpresa fpd : lsPtovtaEmpresa) { + if (fpd.getEmpresa().equals(ptovtaEmpresa.getEmpresa()) + && fpd.getActivo()) { + achou = Boolean.TRUE; + } + } + if (!achou) { + + ptovtaEmpresa.setPuntoVenta(puntoVenta); + ptovtaEmpresa.setActivo(Boolean.TRUE); + ptovtaEmpresa.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + ptovtaEmpresa.setFecmodif(Calendar.getInstance().getTime()); + + lsPtovtaEmpresa.add(ptovtaEmpresa); + + List lsP = new ArrayList(); + for (PtovtaEmpresa p : lsPtovtaEmpresa) { + if (p.getActivo()) { + lsP.add(p); + } + } + ptovtaEmpresaList.setData(lsP); + // ptovtaEmpresaList.addItem(ptovtaEmpresa); + } else { + Messagebox.show( + Labels.getLabel("editarPuntoVentaController.MSG.Achou.PtovtaEmpresa"), + Labels.getLabel("editarPuntoVentaController.window.title"), + Messagebox.OK, Messagebox.EXCLAMATION); + } + + } catch (Exception ex) { + log.error(ex); + Messagebox.show( + Labels.getLabel("MSG.Error"), + Labels.getLabel("editarPuntoVentaController.window.title"), + Messagebox.OK, Messagebox.ERROR); + } + } + + public void onClick$btnApagarPtovtaEmpresa(Event ev) { + try { + PtovtaEmpresa fpd = (PtovtaEmpresa) ptovtaEmpresaList.getSelected(); + if (fpd != null) { + lsPtovtaEmpresa.remove(fpd); + ptovtaEmpresaList.removeItem(fpd); + if (fpd.getPtovtaempresaId() != null) { + fpd.setActivo(Boolean.FALSE); + fpd.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + fpd.setFecmodif(Calendar.getInstance().getTime()); + fpd.setPuntoVenta(puntoVenta); + + lsPtovtaEmpresa.add(fpd); + } + } + } catch (Exception ex) { + log.error(ex); + } + } + + public void onChange$cmbConexion(Event ev) { + habilitarCombo(); + } + + private void habilitarCombo() { + Comboitem cbi = cmbConexion.getSelectedItem(); + if (cbi != null) { + String valor = (String) cbi.getValue(); + + if (valor.equals("S")) { + cmbUsuarioBancario.setDisabled(Boolean.FALSE); + } + } + } + + public void onClick$btnSalvarPtovtaUsuarioBancario(Event ev) throws InterruptedException { + cmbEmpresaPtoVtaUsuarioBancario.getValue(); + cmbUsuarioBancarioPtoVtaUsuarioBancario.getValue(); + + try { + PtoVtaUsuarioBancario usuarioBancario = new PtoVtaUsuarioBancario(); + usuarioBancario.setEmpresa((Empresa) cmbEmpresaPtoVtaUsuarioBancario.getSelectedItem().getValue()); + usuarioBancario.setUsuarioBancario((UsuarioBancario) cmbUsuarioBancarioPtoVtaUsuarioBancario.getSelectedItem().getValue()); + + Boolean achou = Boolean.FALSE; + + for (PtoVtaUsuarioBancario fpd : lsPtovtaUsuarioBancario) { + if (fpd.getEmpresa().equals(usuarioBancario.getEmpresa())) { + achou = Boolean.TRUE; + } + } + if (!achou) { + + usuarioBancario.setPuntoVenta(puntoVenta); + usuarioBancario.setActivo(Boolean.TRUE); + usuarioBancario.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + usuarioBancario.setFecmodif(Calendar.getInstance().getTime()); + + lsPtovtaUsuarioBancario.add(usuarioBancario); + + List lsP = new ArrayList(); + for (PtoVtaUsuarioBancario p : lsPtovtaUsuarioBancario) { + if (p.getActivo()) { + lsP.add(p); + } + } + ptovtaUsuarioBancarioList.setData(lsP); + // ptovtaEmpresaList.addItem(ptovtaEmpresa); + + } else { + Messagebox.show( + Labels.getLabel("editarPuntoVentaController.MSG.Achou.PtovtaUsuario"), + Labels.getLabel("editarPuntoVentaController.window.title"), + Messagebox.OK, Messagebox.EXCLAMATION); + } + + } catch (Exception ex) { + log.error(ex); + Messagebox.show( + Labels.getLabel("MSG.Error"), + Labels.getLabel("editarPuntoVentaController.window.title"), + Messagebox.OK, Messagebox.ERROR); + } + } + + public void onClick$btnApagarPtovtaUsuarioBancario(Event ev) { + try { + PtoVtaUsuarioBancario fpd = (PtoVtaUsuarioBancario) ptovtaUsuarioBancarioList.getSelected(); + if (fpd != null) { + ptovtaUsuarioBancarioList.removeItem(fpd); + lsPtovtaUsuarioBancario.remove(fpd); + if (fpd.getPtovtaUsuarioBancarioID() != null) { + fpd.setActivo(Boolean.FALSE); + fpd.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + fpd.setFecmodif(Calendar.getInstance().getTime()); + + lsPtovtaUsuarioBancario.add(fpd); + } + } + } catch (Exception ex) { + log.error(ex); + } + } + + public PuntoVenta getPuntoVenta() { + return puntoVenta; + } + + public void setPuntoVenta(PuntoVenta puntoVenta) { + this.puntoVenta = puntoVenta; + } + + public MyListbox getPuntoVentaList() { + return puntoVentaList; + } + + public void setPuntoVentaList(MyListbox puntoVentaList) { + this.puntoVentaList = puntoVentaList; + } + + public PuntoVentaService getPuntoVentaService() { + return puntoVentaService; + } + + public void setPuntoVentaService(PuntoVentaService puntoVentaService) { + this.puntoVentaService = puntoVentaService; + } + + public EmpresaService getEmpresaService() { + return empresaService; + } + + public void setEmpresaService(EmpresaService empresaService) { + this.empresaService = empresaService; + } + + public TipoPuntoVentaService getTipoPuntoVentaService() { + return tipoPuntoVentaService; + } + + public void setTipoPuntoVentaService(TipoPuntoVentaService tipoPuntoVentaService) { + this.tipoPuntoVentaService = tipoPuntoVentaService; + } + + public List getLsEmpresas() { + return lsEmpresas; + } + + public void setLsEmpresas(List lsEmpresas) { + this.lsEmpresas = lsEmpresas; + } + + public List getLsTipoPuntoVenta() { + return lsTipoPuntoVenta; + } + + public void setLsTipoPuntoVenta(List lsTipoPuntoVenta) { + this.lsTipoPuntoVenta = lsTipoPuntoVenta; + } + + public MonedaService getMonedaService() { + return monedaService; + } + + public void setMonedaService(MonedaService monedaService) { + this.monedaService = monedaService; + } + + public List getLsMoneda() { + return lsMoneda; + } + + public void setLsMoneda(List lsMoneda) { + this.lsMoneda = lsMoneda; + } + + public Radio getRadAprobacionAutorizado() { + return radAprobacionAutorizado; + } + + public void setRadAprobacionAutorizado(Radio radAprobacionAutorizado) { + this.radAprobacionAutorizado = radAprobacionAutorizado; + } + + public Radio getRadAprobacionLatente() { + return radAprobacionLatente; + } + + public void setRadAprobacionLatente(Radio radAprobacionLatente) { + this.radAprobacionLatente = radAprobacionLatente; + } + + public Radio getRadDatosTarjetaNo() { + return radDatosTarjetaNo; + } - public void setRadDatosTarjetaNo(Radio radDatosTarjetaNo) { - this.radDatosTarjetaNo = radDatosTarjetaNo; - } + public void setRadDatosTarjetaNo(Radio radDatosTarjetaNo) { + this.radDatosTarjetaNo = radDatosTarjetaNo; + } - public Radio getRadDatosTarjetaSi() { - return radDatosTarjetaSi; - } + public Radio getRadDatosTarjetaSi() { + return radDatosTarjetaSi; + } - public void setRadDatosTarjetaSi(Radio radDatosTarjetaSi) { - this.radDatosTarjetaSi = radDatosTarjetaSi; - } + public void setRadDatosTarjetaSi(Radio radDatosTarjetaSi) { + this.radDatosTarjetaSi = radDatosTarjetaSi; + } - public MyTextbox getTxtNome() { - return txtNome; - } + public MyTextbox getTxtNome() { + return txtNome; + } - public void setTxtNome(MyTextbox txtNome) { - this.txtNome = txtNome; - } + public void setTxtNome(MyTextbox txtNome) { + this.txtNome = txtNome; + } - public MyListbox getFormaPagoList() { - return formaPagoList; - } + public MyListbox getFormaPagoList() { + return formaPagoList; + } - public void setFormaPagoList(MyListbox formaPagoList) { - this.formaPagoList = formaPagoList; - } + public void setFormaPagoList(MyListbox formaPagoList) { + this.formaPagoList = formaPagoList; + } - public List getLsFormaPago() { - return lsFormaPago; - } + public List getLsFormaPago() { + return lsFormaPago; + } - public void setLsFormaPago(List lsFormaPago) { - this.lsFormaPago = lsFormaPago; - } + public void setLsFormaPago(List lsFormaPago) { + this.lsFormaPago = lsFormaPago; + } - public Combobox getCmbFormaPago() { - return cmbFormaPago; - } + public Combobox getCmbFormaPago() { + return cmbFormaPago; + } - public void setCmbFormaPago(Combobox cmbFormaPago) { - this.cmbFormaPago = cmbFormaPago; - } - - public Doublebox getTxtCargosExtras() { - return txtCargosExtras; - } - - public void setTxtCargosExtras(Doublebox txtCargosExtras) { - this.txtCargosExtras = txtCargosExtras; - } - - public List getLsNodos() { - return lsNodos; - } - - public void setLsNodos(List lsNodos) { - this.lsNodos = lsNodos; - } - - public Button getBtnSalvarFormaPago() { - return btnSalvarFormaPago; - } - - public void setBtnSalvarFormaPago(Button btnSalvarFormaPago) { - this.btnSalvarFormaPago = btnSalvarFormaPago; - } - - public FormaPagoService getFormaPagoService() { - return formaPagoService; - } - - public void setFormaPagoService(FormaPagoService formaPagoService) { - this.formaPagoService = formaPagoService; - } - - public List getLsFormaPagoDet() { - return lsFormaPagoDet; - } - - public void setLsFormaPagoDet(List lsFormaPagoDet) { - this.lsFormaPagoDet = lsFormaPagoDet; - } - - public Combobox getCmbCiudad() { - return cmbCiudad; - } - - public void setCmbCiudad(Combobox cmbCiudad) { - this.cmbCiudad = cmbCiudad; - } - - public Combobox getCmbEmpresa() { - return cmbEmpresa; - } - - public void setCmbEmpresa(Combobox cmbEmpresa) { - this.cmbEmpresa = cmbEmpresa; - } - - public Combobox getCmbParada() { - return cmbParada; - } - - public void setCmbParada(Combobox cmbParada) { - this.cmbParada = cmbParada; - } - - public Combobox getCmbMoneda() { - return cmbMoneda; - } - - public void setCmbMoneda(Combobox cmbMoneda) { - this.cmbMoneda = cmbMoneda; - } - - public Combobox getCmbNodo() { - return cmbNodo; - } - - public void setCmbNodo(Combobox cmbNodo) { - this.cmbNodo = cmbNodo; - } - - public Combobox getCmbTipoPontoVenta() { - return cmbTipoPontoVenta; - } - - public void setCmbTipoPontoVenta(Combobox cmbTipoPontoVenta) { - this.cmbTipoPontoVenta = cmbTipoPontoVenta; - } - - /** - * @return the lsColonia - */ - public List getLsColonia() { - return lsColonia; - } - - /** - * @param lsColonia the lsColonia to set - */ - public void setLsColonia(List lsColonia) { - this.lsColonia = lsColonia; - } - - /** - * @return the lsCiudad - */ - public List getLsCiudad() { - return lsCiudad; - } - - /** - * @param lsCiudad the lsCiudad to set - */ - public void setLsCiudad(List lsCiudad) { - this.lsCiudad = lsCiudad; - } - - /** - * @return the cmbColonia - */ - public Combobox getCmbColonia() { - return cmbColonia; - } - - /** - * @param cmbColonia the cmbColonia to set - */ - public void setCmbColonia(Combobox cmbColonia) { - this.cmbColonia = cmbColonia; - } - - /** - * @return the txtCP - */ - public Textbox getTxtCP() { - return txtCP; - } - - /** - * @param txtCP the txtCP to set - */ - public void setTxtCP(Textbox txtCP) { - this.txtCP = txtCP; - } - - public List getLsUsuarioBancario() { - return lsUsuarioBancario; - } - - public void setLsUsuarioBancario(List lsUsuarioBancario) { - this.lsUsuarioBancario = lsUsuarioBancario; - } - - public List getLsParamRecoleccion() { - return lsParamRecoleccion; - } - - public void setLsParamRecoleccion(List lsParamRecoleccion) { - this.lsParamRecoleccion = lsParamRecoleccion; - } - - public MyListbox getParamRecoleccionList() { - return paramRecoleccionList; - } - - public void setParamRecoleccionList(MyListbox paramRecoleccionList) { - this.paramRecoleccionList = paramRecoleccionList; - } - - public List getLsPtovtaEmpresa() { - return lsPtovtaEmpresa; - } - - public void setLsPtovtaEmpresa(List lsPtovtaEmpresa) { - this.lsPtovtaEmpresa = lsPtovtaEmpresa; - } - - public MyListbox getPtovtaEmpresaList() { - return ptovtaEmpresaList; - } - - public void setPtovtaEmpresaList(MyListbox ptovtaEmpresaList) { - this.ptovtaEmpresaList = ptovtaEmpresaList; - } - - public List getLsPtovtaUsuarioBancario() { - return lsPtovtaUsuarioBancario; - } - - public void setLsPtovtaUsuarioBancario(List lsPtovtaUsuarioBancario) { - this.lsPtovtaUsuarioBancario = lsPtovtaUsuarioBancario; - } - - public MyListbox getPtovtaUsuarioBancarioList() { - return ptovtaUsuarioBancarioList; - } - - public void setPtovtaUsuarioBancarioList(MyListbox ptovtaUsuarioBancarioList) { - this.ptovtaUsuarioBancarioList = ptovtaUsuarioBancarioList; - } + public void setCmbFormaPago(Combobox cmbFormaPago) { + this.cmbFormaPago = cmbFormaPago; + } + + public Doublebox getTxtCargosExtras() { + return txtCargosExtras; + } + + public void setTxtCargosExtras(Doublebox txtCargosExtras) { + this.txtCargosExtras = txtCargosExtras; + } + + public List getLsNodos() { + return lsNodos; + } + + public void setLsNodos(List lsNodos) { + this.lsNodos = lsNodos; + } + + public Button getBtnSalvarFormaPago() { + return btnSalvarFormaPago; + } + + public void setBtnSalvarFormaPago(Button btnSalvarFormaPago) { + this.btnSalvarFormaPago = btnSalvarFormaPago; + } + + public FormaPagoService getFormaPagoService() { + return formaPagoService; + } + + public void setFormaPagoService(FormaPagoService formaPagoService) { + this.formaPagoService = formaPagoService; + } + + public List getLsFormaPagoDet() { + return lsFormaPagoDet; + } + + public void setLsFormaPagoDet(List lsFormaPagoDet) { + this.lsFormaPagoDet = lsFormaPagoDet; + } + + public Combobox getCmbCiudad() { + return cmbCiudad; + } + + public void setCmbCiudad(Combobox cmbCiudad) { + this.cmbCiudad = cmbCiudad; + } + + public Combobox getCmbEmpresa() { + return cmbEmpresa; + } + + public void setCmbEmpresa(Combobox cmbEmpresa) { + this.cmbEmpresa = cmbEmpresa; + } + + public Combobox getCmbParada() { + return cmbParada; + } + + public void setCmbParada(Combobox cmbParada) { + this.cmbParada = cmbParada; + } + + public Combobox getCmbMoneda() { + return cmbMoneda; + } + + public void setCmbMoneda(Combobox cmbMoneda) { + this.cmbMoneda = cmbMoneda; + } + + public Combobox getCmbNodo() { + return cmbNodo; + } + + public void setCmbNodo(Combobox cmbNodo) { + this.cmbNodo = cmbNodo; + } + + public Combobox getCmbTipoPontoVenta() { + return cmbTipoPontoVenta; + } + + public void setCmbTipoPontoVenta(Combobox cmbTipoPontoVenta) { + this.cmbTipoPontoVenta = cmbTipoPontoVenta; + } + + /** + * @return the lsColonia + */ + public List getLsColonia() { + return lsColonia; + } + + /** + * @param lsColonia + * the lsColonia to set + */ + public void setLsColonia(List lsColonia) { + this.lsColonia = lsColonia; + } + + /** + * @return the lsCiudad + */ + public List getLsCiudad() { + return lsCiudad; + } + + /** + * @param lsCiudad + * the lsCiudad to set + */ + public void setLsCiudad(List lsCiudad) { + this.lsCiudad = lsCiudad; + } + + /** + * @return the cmbColonia + */ + public Combobox getCmbColonia() { + return cmbColonia; + } + + /** + * @param cmbColonia + * the cmbColonia to set + */ + public void setCmbColonia(Combobox cmbColonia) { + this.cmbColonia = cmbColonia; + } + + /** + * @return the txtCP + */ + public Textbox getTxtCP() { + return txtCP; + } + + /** + * @param txtCP + * the txtCP to set + */ + public void setTxtCP(Textbox txtCP) { + this.txtCP = txtCP; + } + + public List getLsUsuarioBancario() { + return lsUsuarioBancario; + } + + public void setLsUsuarioBancario(List lsUsuarioBancario) { + this.lsUsuarioBancario = lsUsuarioBancario; + } + + public List getLsParamRecoleccion() { + return lsParamRecoleccion; + } + + public void setLsParamRecoleccion(List lsParamRecoleccion) { + this.lsParamRecoleccion = lsParamRecoleccion; + } + + public MyListbox getParamRecoleccionList() { + return paramRecoleccionList; + } + + public void setParamRecoleccionList(MyListbox paramRecoleccionList) { + this.paramRecoleccionList = paramRecoleccionList; + } + + public List getLsPtovtaEmpresa() { + return lsPtovtaEmpresa; + } + + public void setLsPtovtaEmpresa(List lsPtovtaEmpresa) { + this.lsPtovtaEmpresa = lsPtovtaEmpresa; + } + + public MyListbox getPtovtaEmpresaList() { + return ptovtaEmpresaList; + } + + public void setPtovtaEmpresaList(MyListbox ptovtaEmpresaList) { + this.ptovtaEmpresaList = ptovtaEmpresaList; + } + + public List getLsPtovtaUsuarioBancario() { + return lsPtovtaUsuarioBancario; + } + + public void setLsPtovtaUsuarioBancario(List lsPtovtaUsuarioBancario) { + this.lsPtovtaUsuarioBancario = lsPtovtaUsuarioBancario; + } + + public MyListbox getPtovtaUsuarioBancarioList() { + return ptovtaUsuarioBancarioList; + } + + public void setPtovtaUsuarioBancarioList(MyListbox ptovtaUsuarioBancarioList) { + this.ptovtaUsuarioBancarioList = ptovtaUsuarioBancarioList; + } } diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/configuracioneccomerciales/EditarAlertaCtrlController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/configuracioneccomerciales/EditarAlertaCtrlController.java index 6f5983d34..b4f7d9192 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/configuracioneccomerciales/EditarAlertaCtrlController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/configuracioneccomerciales/EditarAlertaCtrlController.java @@ -56,6 +56,7 @@ import org.zkoss.zul.Tab; @Scope("prototype") public class EditarAlertaCtrlController extends MyGenericForwardComposer implements ListitemRenderer { + private static final long serialVersionUID = 1L; @Autowired private AlertaCtrlService arlertaCtrlService; @Autowired @@ -90,8 +91,6 @@ public class EditarAlertaCtrlController extends MyGenericForwardComposer impleme private Radio rdAltaCorrida; private Radio rdBaja; private Radio rdBajaCorrida; - private Radio rdGenerica; - private Radio rdCorrida; private Tab tabGenerico; private Tab tabCorrida; private Tab tabOpcion; diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/MyTextboxDecimal.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/MyTextboxDecimal.java index 7b86de8d9..8ffd478c1 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/utilerias/MyTextboxDecimal.java +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/MyTextboxDecimal.java @@ -19,22 +19,21 @@ import org.zkoss.zul.Textbox; /** * Textbox con validaciones de valores numericos. * - * Validaciones extras: - * maxValue - Indica cuál es el valor máximo permitido en el campo - * precision - Cuál es la precision de número - * scale - Cuál es la scala - * obligatorio - Indica se es obligatorio. El valo inicial es false. - * allowZero - Indica si es permitido valor cero - * allowNegative -Indica si es permitido valores negativos - * defaultZero - Indica se el valor inicial es cero - * + * Validaciones extras: maxValue - Indica cuál es el valor máximo permitido en + * el campo precision - Cuál es la precision de número scale - Cuál es la scala + * obligatorio - Indica se es obligatorio. El valo inicial es false. allowZero - + * Indica si es permitido valor cero allowNegative -Indica si es permitido + * valores negativos defaultZero - Indica se el valor inicial es cero * - * Además de las validaciones extras, si puede ocupar las validaciones del ZK (no emptu, etc) + * + * Además de las validaciones extras, si puede ocupar las validaciones del ZK + * (no emptu, etc) * * @author gleimar */ public class MyTextboxDecimal extends Textbox implements AfterCompose { + private static final long serialVersionUID = 1L; private String maxValue; private Integer precision; private Integer scale; @@ -151,20 +150,21 @@ public class MyTextboxDecimal extends Textbox implements AfterCompose { aplicarMascara(); myConstraint = new MyTextboxDecimalConstraint(); - + super.setConstraint(myConstraint); } /** * Agrega la constraint a las validaciones que ya existen * - * @param Constraint - La constraint que se va a agregar + * @param Constraint + * - La constraint que se va a agregar */ @Override public void setConstraint(Constraint c) { - if ( (c instanceof MyTextboxDecimalConstraint) || (c == null)){ - super.setConstraint(c); - }else{ + if ((c instanceof MyTextboxDecimalConstraint) || (c == null)) { + super.setConstraint(c); + } else { this.constraintTag = c; } } @@ -181,12 +181,12 @@ public class MyTextboxDecimal extends Textbox implements AfterCompose { @Override public void validate(Component comp, Object oVal) throws WrongValueException { - - //Si fue informado alguna constraint, esa es validada primer + + // Si fue informado alguna constraint, esa es validada primer if (constraintTag != null) { constraintTag.validate(comp, oVal); } - + String val = oVal.toString(); if (obligatorio && ((val == null) || (val.trim().equals("")))) { throw new WrongValueException( diff --git a/src/java/spring-config.xml b/src/java/spring-config.xml index aef1dc191..68a9c7f19 100644 --- a/src/java/spring-config.xml +++ b/src/java/spring-config.xml @@ -122,6 +122,7 @@ com.rjconsultores.ventaboletos.entidad.Nodo com.rjconsultores.ventaboletos.entidad.OrgaoConcedente + com.rjconsultores.ventaboletos.entidad.OrgaoTramo com.rjconsultores.ventaboletos.entidad.Pais com.rjconsultores.ventaboletos.entidad.Parada com.rjconsultores.ventaboletos.entidad.ParadaEquivalencia diff --git a/web/gui/catalogos/busquedaCoeficienteTarifa.zul b/web/gui/catalogos/busquedaCoeficienteTarifa.zul index f3a9612b5..fb0467d90 100644 --- a/web/gui/catalogos/busquedaCoeficienteTarifa.zul +++ b/web/gui/catalogos/busquedaCoeficienteTarifa.zul @@ -58,7 +58,7 @@ sort="auto(descCoeficiente)" /> + sort="auto(coeficiente)" /> diff --git a/web/gui/catalogos/editarCoeficienteTarifa.zul b/web/gui/catalogos/editarCoeficienteTarifa.zul index 92ab584a4..c05df3e72 100644 --- a/web/gui/catalogos/editarCoeficienteTarifa.zul +++ b/web/gui/catalogos/editarCoeficienteTarifa.zul @@ -41,9 +41,10 @@