Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adaptar el anuario para usar mapas para elegir los lugares #130

Open
numeropi opened this issue Dec 1, 2020 · 19 comments
Open

Adaptar el anuario para usar mapas para elegir los lugares #130

numeropi opened this issue Dec 1, 2020 · 19 comments
Assignees
Labels

Comments

@numeropi
Copy link
Collaborator

numeropi commented Dec 1, 2020

Como fase 0 de poder representar los lugares en los canvas de mapa que aparecen en las páginas Add/Edit/View de Cita o de Lugar, es necesario geolocalizarlas mucho más precisamente.

Haré un script(de un solo uso) en python (donde tengo más soltura para conectar API's y datos) para leer las filas de Lugar y leyendo el Municipio y la Comarca, sacar las coordenadas a través de alguna API(quizás google o GeoNames o Nominatim) de geolocalización inversa.

Horas invertidas en puesta a punto del entorno local hasta ahora: 5h

@numeropi
Copy link
Collaborator Author

Repetido con #123

@numeropi
Copy link
Collaborator Author

He creado el siguiente script para sacar las coordenadas lon, lat de los lugares a partir de la APi de google usando
"nombrelugar, nombremunicipio, albacete, ES" como string de búsqueda.
Ha encontrado la gran mayoría menos unos 15, incluidos en el .txt para que lo encontréis vosotros y podáis pasármelos por aquí si queréis en formato .sql

Faltaría si puedes ayudar @viktorKhan a crearme los archivos .sql update y rollback para que los campos coordenadaX y coordenadaY (que actualmente no se están usando) pasaran a llamarse longitud y latitud y fueran de tipo float (supuestamente el código de AOA no está usando esos parámetros todavía y no habría problema).

script_rellenar_coords_lugares.zip

+3h(=8h)

@numeropi
Copy link
Collaborator Author

Nota: Cuando visualizemos los lugares vía clusters en el layer del mapa veremos fácilmente si se han detectado bien. Siempre se pueden ajustar los lugares manualmente via sql en un futuro.

@Terekab
Copy link
Collaborator

Terekab commented Jan 1, 2021

Adjunto el archivo con las localidades con coordenadas desconocidas.

lugares_no_encontrados_LOCALIZADOS.txt

@numeropi
Copy link
Collaborator Author

numeropi commented Feb 2, 2021

image

mezcladas las nuevas coordenadas en un update_lugares_coords.sql que añadiré a la carpeta changes más un fichero update_20210201_0000_update_coordenadas_lugar_int_to_decimal.sql

para actualizar los campos de coordenadas.

-- Lugar
UPDATE cowctkq_lugar SET  coordenadaX = NULL WHERE true;
ALTER TABLE `%prefix%_lugar`
CHANGE COLUMN `coordenadaX` `lng` DECIMAL(11, 8)  SIGNED COMMENT 'Longitud del lugar' ;

UPDATE cowctkq_lugar SET  coordenadaY = NULL WHERE true;
ALTER TABLE `%prefix%_lugar`
CHANGE COLUMN `coordenadaY` `lat` DECIMAL(10, 8)  SIGNED COMMENT 'Latitud del lugar' ;
 

+3h = 11h

@numeropi numeropi changed the title Actualizar las coordenadas de la tabla Lugar Adaptar el anuario para usar mapas para elegir los lugares Mar 25, 2021
@numeropi
Copy link
Collaborator Author

numeropi commented Mar 25, 2021

Probad la rama en local para revisar la funcionalidad.
https://github.com/sao-albacete/aoa/tree/feature/AOA-130

  • Añadir/Ver/Editar lugares ya funciona con el widget de mapas de Google.
  • Añadir/Ver/Editar lugares ya funciona con el widget de mapa mostrando los lugares.
  • El mapa cluster de puntos aparecer tanto en el index de lugares como en la ventana modal de seleccionar un lugar durante la edición/creación de una cita.
  • Añadido método en el controlador para autocalcular la cuadrícula UTM al guardar un lugar (3 vías, edit/add/ajax_add).

6 marzo: +6h
7 marzo: +6h
8 marzo: +6h
16 marzo: +7h
18 marzo: +5h
19 marzo: +7h
19 marzo: +8h
20 marzo: +6h
29 sep: +2h arreglando errores comentados por Victor

+53h. Total= +64h(contando las 11 anteriores...)

@viktorKhan
Copy link
Member

Hola @numeropi

Antes de nada, disculpa la tardanza en contestar.

He estado probando tus cambios y me parece que has hecho un trabajo increíble, enhorabuena.

He encontrado un par de cosillas que me gustaría que revisases:

h2. Autocompletado de especies y lugares al crear citas
En las páginas de "Nueva cita" y "Nueva Cita multiple" han dejado de desplegarse los selectores cuando empiezas a escribier el nombre de una especie o un lugar. Tampoco funciona el calendario para seleccionar fecha. Parece que hay algún problema con el JS ya que he inspeccionado la respuesta que devuelve el servidor para el caso de la carga del listado de especies (GET http://local.anuario.albacete.org/especie/buscar_especies?term=garz) y parece que la petición viaja y retorna correctamente, pero finalmente el resultado no es mostrado correctamente.

h2. Cluster de puntos duplicados y sin estilo
Al cargar el mapa con los lugares, los clusters the puntos aparecen como un número duplicado en distintas posiciones y sin ningún estilo.
image
¿Se podrían mostrar los números con algún estilo en lugar del número sin más, como por ejemplo así?
image

Cualquier cosa me comentas, ¡gracias!

@numeropi
Copy link
Collaborator Author

Lo reviso en breve, en principio los números en los clusters tenían un círculo de fondo, será también algo de la carga del JS o CSS...

@numeropi
Copy link
Collaborator Author

numeropi commented Sep 29, 2021

Arreglado el tema de los círculos en los cluster... ojo con google que a veces cambia sus repositorios...

new MarkerClusterer(map_cluster, markers, {
imagePath:
"https://unpkg.com/@googlemaps/[email protected]/images/m",
});
image

image
no usar window.setInterval(function (){ $(".ui-corner-all").remove(); }, 300); porque era lo que autocerraba los autocomplete o los datetime-pickers

pullea los 2 ultimos commits y me dices...

@viktorKhan
Copy link
Member

@numeropi creo que se te olvido hacer push de tus últimos commits, el último que hay es mio del 28 de septiembre https://github.com/sao-albacete/aoa/pull/141/commits

@viktorKhan
Copy link
Member

@Terekab hay dos lugares cuya localización caen fuera del mapa de Albacete por alguna razón
image

Son estas:
Finca el Carrascal, El Ballestero
Cueva Negra, Villapalacios

¿Podrías localizar sus coordenadas para que las podamos actualizar a su ubicación correcta como parte de esta issue?

@numeropi
Copy link
Collaborator Author

numeropi commented Sep 30, 2021

Tienes razón, no se me llegó a pushear al final... ya está ahora.
a319688

Os dejo a vosotros la parte del merge 😅

La razón serà googlemaps que los geolocalizó en esa zona y no encontró la buena localización. buscando en OSM me salen:

https://www.openstreetmap.org/search?query=Carrascal%2C%20El%20Ballestero#map=19/38.81703/-2.50726
https://www.openstreetmap.org/search?query=Cueva%20%2C%20Villapalacios#map=17/38.59986/-2.68758

@Terekab
Copy link
Collaborator

Terekab commented Nov 23, 2021

He estado probando este issue, y he visto varios errores que ahora comento.

  • En la pantalla de "Detalle del lugar" no se ven las coordenadas geográficas, y tampoco el mapa, se ve en gris.
    no_mapa_detalle lugar

  • En la pantalla "Lugares", no se ven los lugares, sólo el mapa de AB con los municipios, no los clústeres ni las chinchetas.
    lugares_no_cluster

  • Al crear una nueva localidad, te va a la pantalla editar lugar. Creo que sería mejor que fuera a la pantalla "Lugares". Además, está activo el campo municipio, que está en gris y debería no poder seleccionarse.
    municipio_noseleccionable

Esto produce que la localidad creada figure una utm al pinchar y un municipio al seleccionar que no corresponde con el que has seleccionado al pinchar.
lugar_creado_utm_munipio_distintos

  • En la pantalla "Editar lugar" no se ve la chincheta, ni los clúster y no puedes editarla. Y está activo el campo municipio, que está en gris y debería no poder seleccionarse.
    lugarcreado_boton_guardar

  • Al crear una nueva cita o citas múltiples y seleccionar desde mapa no sales las chinchetas ni los clúster
    nueva_cita_seleccionarpormapa

@raul-galindo
Copy link
Collaborator

debug.log
error.log
Subidos los log de error y debug, después de añadir las modificaciones de la base de datos y como consecuencia de esto da error la aplicación.

@numeropi
Copy link
Collaborator Author

Se queja que
Column not found: 1054 Unknown column 'Lugar.coordenadaX' in 'field list'

podéis verificar si en los script de bbdd se está creando Lugar.coordenadaX y Lugar.coordenadaY ? Si no, @viktorKhan podrías crearlos?

@viktorKhan
Copy link
Member

@numeropi , según se decías en este comentario #130 (comment), había que lanzar estas dos instrucciones para renombrar las columnas coordenadaX y coordenadaY:

-- Lugar
UPDATE cowctkq_lugar SET  coordenadaX = NULL WHERE true;
ALTER TABLE `%prefix%_lugar`
CHANGE COLUMN `coordenadaX` `lng` DECIMAL(11, 8)  SIGNED COMMENT 'Longitud del lugar' ;

UPDATE cowctkq_lugar SET  coordenadaY = NULL WHERE true;
ALTER TABLE `%prefix%_lugar`
CHANGE COLUMN `coordenadaY` `lat` DECIMAL(10, 8)  SIGNED COMMENT 'Latitud del lugar' ;

Estas instrucciones están en el script -> scripts/db/changes/update_20210201_0000_update_coordenadas_lugar_int_to_decimal.sql

Es necesario ejecutarlo para desplegar estos cambios, o sólo hay que lanzar el script -> scripts/db/changes/update_20210202_2121_fill_lugar_coordinates.sql ?

@numeropi
Copy link
Collaborator Author

Tienes razón, ya no me acordaba! Entonces esta todo en los scripts...

@viktorKhan
Copy link
Member

@numeropi He visto que hay algunos ficheros de la app donde todavía hay referencias a los nombres coordenadaX y coordenadaY, en lugar de usar lng y lat, por ejemplo estos:

  • app/Model/CuadriculaUtm.php
  • app/View/Lugar/view.ctp

Entiendo que se deberían usar siempre los campos lng y lat ¿no? ¿Lo podrías cambiar?

@numeropi
Copy link
Collaborator Author

Acabo de pushear los cambios. Sorry la tardanza.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants