diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/EditarCatalogoDeParadaController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/EditarCatalogoDeParadaController.java index bc60f1ed8..0ae469a59 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/EditarCatalogoDeParadaController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/EditarCatalogoDeParadaController.java @@ -4,8 +4,10 @@ */ package com.rjconsultores.ventaboletos.web.gui.controladores.esquemaoperacional; +import java.math.BigDecimal; import java.util.List; +import org.apache.commons.lang.StringUtils; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.springframework.beans.factory.annotation.Autowired; @@ -82,6 +84,9 @@ public class EditarCatalogoDeParadaController extends MyGenericForwardComposer { private Checkbox chkIntegracaoW2i; private Checkbox chkDisponibleTotalbus; private Combobox cmbAgruparParada; + + private Textbox txtLatitude; + private Textbox txtLongitude; private List lsTipoParadas; private List lsOrgaosConcedentes; @@ -125,6 +130,14 @@ public class EditarCatalogoDeParadaController extends MyGenericForwardComposer { cmbCiudad.setText(ciudad.toString()); } } + + if (parada.getLatitude() != null) { + txtLatitude.setValue(parada.getLatitude().toString()); + } + + if (parada.getLongitude() != null ) { + txtLongitude.setValue(parada.getLongitude().toString()); + } if (ApplicationProperties.getInstance().isCustomHabilitado(CustomEnum.COD_ANTT_NAO_OBRIGATORIO.getDescricao())) { codAntt.setConstraint(""); @@ -141,6 +154,8 @@ public class EditarCatalogoDeParadaController extends MyGenericForwardComposer { cmbAgruparParada.getValue(); codAntt.getValue(); descProcon.getValue(); + txtLatitude.getValue(); + txtLongitude.getValue(); if (!validaNome()){ Messagebox.show( @@ -149,6 +164,14 @@ public class EditarCatalogoDeParadaController extends MyGenericForwardComposer { Messagebox.OK, Messagebox.INFORMATION); return; } + + if (!validarLatitudeLongitude()) { + Messagebox.show( + Labels.getLabel("editarCatalogoDeParadaController.MSG.latitudeLongitude"), + Labels.getLabel("editarCatalogoDeParadaController.window.title"), + Messagebox.OK, Messagebox.EXCLAMATION); + return; + } try { Nodo nodoCentral = lsNodo.get(0); @@ -158,6 +181,17 @@ public class EditarCatalogoDeParadaController extends MyGenericForwardComposer { parada.setIndIntegracaoW2i(chkIntegracaoW2i.isChecked()); parada.setIndDisponibleTotalBus(chkDisponibleTotalbus.isChecked()); + parada.setLatitude(null); + if (StringUtils.isNotBlank(txtLatitude.getValue())) { + parada.setLatitude(new BigDecimal(txtLatitude.getValue())); + } + + + parada.setLongitude(null); + if (StringUtils.isNotBlank(txtLongitude.getValue())) { + parada.setLongitude(new BigDecimal(txtLongitude.getValue())); + } + if("".equals(cmbAgruparParada.getValue())){ parada.setAgrupamentoParada(null); } @@ -337,4 +371,24 @@ public class EditarCatalogoDeParadaController extends MyGenericForwardComposer { SE, // Sergipe TO // Tocantins } + + public boolean validarLatitudeLongitude() { + try { + + String latitude = txtLatitude.getValue(); + if (StringUtils.isNotBlank(latitude)) { + new BigDecimal(latitude); + } + + String longitude = txtLongitude.getValue(); + if (StringUtils.isNotBlank(longitude)){ + new BigDecimal(longitude); + } + + return true; + } catch (Exception e) { + return false; + } + } + } diff --git a/web/WEB-INF/i3-label_en.label b/web/WEB-INF/i3-label_en.label index a437ae525..5d1f9f870 100644 --- a/web/WEB-INF/i3-label_en.label +++ b/web/WEB-INF/i3-label_en.label @@ -2772,6 +2772,9 @@ editarCatalogoDeParadaController.msg.borrarCodigoOrgaoConcedenteOk = Code Delete editarCatalogoDeParadaController.registroCVEAGRUPAMENTOPARADAexiste = A locale grouping with this CVE already exists editarCatalogoDeParadaController.registroDESCAGRUPAMENTOPARADAexiste = A location grouping with this description already exists editarCatalogoDeParadaController.registroIATAExiste = There is already a location with this IATA code +editarCatalogoDeParadaController.MSG.latitudeLongitude = Invalid Latitude and Longitude Information +editarCatalogoDeParadaController.lhLatitude.value = Latitude +editarCatalogoDeParadaController.lhLongitude.value = Longitude # Editar Desfile de pantalla editarCatalogoDeParadaController.window.title = Location editarCatalogoDeRutaController.MSG.ExcluirEmpresaRutaCloneError = Please save the line before deleting a company. diff --git a/web/WEB-INF/i3-label_es_MX.label b/web/WEB-INF/i3-label_es_MX.label index 753255cbf..b9667d955 100644 --- a/web/WEB-INF/i3-label_es_MX.label +++ b/web/WEB-INF/i3-label_es_MX.label @@ -2768,6 +2768,9 @@ editarCatalogoDeParadaController.msg.borrarCodigoOrgaoConcedenteOk = Código Exc editarCatalogoDeParadaController.registroCVEAGRUPAMENTOPARADAexiste = Ya existe una agrupación de localidades con CVE editarCatalogoDeParadaController.registroDESCAGRUPAMENTOPARADAexiste = Ya existe una agrupación de localidades con esta descripción editarCatalogoDeParadaController.registroIATAExiste = Ya existe una parada con este código IATA +editarCatalogoDeParadaController.MSG.latitudeLongitude = Información de latitud y longitud no válida +editarCatalogoDeParadaController.lhLatitude.value = Latitud +editarCatalogoDeParadaController.lhLongitude.value = Longitud # Editar Desfile de pantalla editarCatalogoDeParadaController.window.title = Parada editarCatalogoDeRutaController.MSG.ExcluirEmpresaRutaCloneError = Favor salvar a linha antes de excluir uma empresa. diff --git a/web/WEB-INF/i3-label_fr_FR.label b/web/WEB-INF/i3-label_fr_FR.label index fea86c135..fd0b71ae8 100644 --- a/web/WEB-INF/i3-label_fr_FR.label +++ b/web/WEB-INF/i3-label_fr_FR.label @@ -2769,6 +2769,9 @@ editarCatalogoDeParadaController.msg.borrarCodigoOrgaoConcedenteOk = Code suppri editarCatalogoDeParadaController.registroCVEAGRUPAMENTOPARADAexiste = Un regroupement de paramètres régionaux avec ce CVE existe déjà editarCatalogoDeParadaController.registroDESCAGRUPAMENTOPARADAexiste = Un regroupement d'emplacements avec cette description existe déjà editarCatalogoDeParadaController.registroIATAExiste = Il existe déjà un emplacement avec ce code IATA +editarCatalogoDeParadaController.MSG.latitudeLongitude = Informations de latitude et de longitude invalides +editarCatalogoDeParadaController.lhLatitude.value = Latitude +editarCatalogoDeParadaController.lhLongitude.value = Longitude # Editar Desfile de pantalla editarCatalogoDeParadaController.window.title = Localisation editarCatalogoDeRutaController.MSG.ExcluirEmpresaRutaCloneError = Veuillez enregistrer la ligne avant de supprimer une entreprise. diff --git a/web/WEB-INF/i3-label_pt_BR.label b/web/WEB-INF/i3-label_pt_BR.label index 55621c15e..2728d8645 100644 --- a/web/WEB-INF/i3-label_pt_BR.label +++ b/web/WEB-INF/i3-label_pt_BR.label @@ -2766,6 +2766,9 @@ editarCatalogoDeParadaController.msg.borrarCodigoOrgaoConcedenteOk = Código Exc editarCatalogoDeParadaController.registroCVEAGRUPAMENTOPARADAexiste = Já existe um agrupamento de localidade com esse CVE editarCatalogoDeParadaController.registroDESCAGRUPAMENTOPARADAexiste = Já existe um agrupamento de localidade com essa descrição editarCatalogoDeParadaController.registroIATAExiste = Já existe uma localidade com este código IATA +editarCatalogoDeParadaController.MSG.latitudeLongitude = Informação de Latitude e Longitude Inválida +editarCatalogoDeParadaController.lhLatitude.value = Latitude +editarCatalogoDeParadaController.lhLongitude.value = Longitude # Editar Desfile de pantalla editarCatalogoDeParadaController.window.title = Localidade editarCatalogoDeRutaController.MSG.ExcluirEmpresaRutaCloneError = Favor salvar a linha antes de excluir uma empresa. diff --git a/web/gui/esquema_operacional/editarParada.zul b/web/gui/esquema_operacional/editarParada.zul index 2dd7dd05e..5f07bcbea 100644 --- a/web/gui/esquema_operacional/editarParada.zul +++ b/web/gui/esquema_operacional/editarParada.zul @@ -134,6 +134,19 @@ + + + + + + +