fix: geolocalización GPS corregida con fallback por coordenadas
This commit is contained in:
Binary file not shown.
@@ -1,7 +1,7 @@
|
||||
[
|
||||
{ "colonia": "Zona Centro", "routeId": "RUTA-01", "horarioEstimado": "Matutino (06:30 - 07:15)" },
|
||||
{ "colonia": "Las Arboledas", "routeId": "RUTA-01", "horarioEstimado": "Matutino (07:00 - 07:30)" },
|
||||
{ "colonia": "Sector Norte", "routeId": "RUTA-02", "horarioEstimado": "Matutino (06:30 - 07:10)" },
|
||||
{ "colonia": "Sector Norte - Av. Tecnológico", "routeId": "RUTA-02", "horarioEstimado": "Matutino (06:30 - 07:10)" },
|
||||
{ "colonia": "San Juanico", "routeId": "RUTA-03", "horarioEstimado": "Matutino (06:45 - 07:15)" },
|
||||
{ "colonia": "Los Olivos", "routeId": "RUTA-04", "horarioEstimado": "Matutino (07:00 - 07:40)" },
|
||||
{ "colonia": "Rancho Seco", "routeId": "RUTA-05", "horarioEstimado": "Vespertino (14:15 - 15:00)" },
|
||||
|
||||
@@ -81,6 +81,20 @@ def crear_domicilio(data: schemas.DomicilioCreate,
|
||||
db: Session = Depends(get_db)):
|
||||
colonia_key = data.colonia.lower()
|
||||
colonia_info = simulator.COLONIAS.get(colonia_key)
|
||||
if not colonia_info:
|
||||
# Buscar por similitud parcial
|
||||
for key, value in simulator.COLONIAS.items():
|
||||
if key in colonia_key or colonia_key in key:
|
||||
colonia_info = value
|
||||
break
|
||||
if not colonia_info:
|
||||
# Buscar por route_id si viene en el nombre
|
||||
ruta, _ = simulator.encontrar_ruta_por_coordenadas(data.lat, data.lng)
|
||||
if ruta:
|
||||
colonia_info = next(
|
||||
(v for v in simulator.COLONIAS.values() if v["routeId"] == ruta["routeId"]),
|
||||
None
|
||||
)
|
||||
if not colonia_info:
|
||||
raise HTTPException(status_code=404, detail="Colonia no encontrada en el sistema")
|
||||
dom = models.Domicilio(direccion=data.direccion, colonia=data.colonia,
|
||||
|
||||
Reference in New Issue
Block a user