fix: lat/long com ponto decimal (aceita fonte com vírgula)

O rastreio pode trazer a coordenada como texto com vírgula (-23,62); troca
por ponto antes de converter, garantindo a saída numérica com ponto no xlsx
e evitando perder a geo de recorrentes.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-08 12:15:50 -03:00
parent 44ba0a93c6
commit 3f56e87a33

View File

@@ -131,8 +131,11 @@ module SimpliRoute
valor.to_s.strip.gsub(/\s+/, ' ').upcase
end
# Coordenada como Float (com PONTO). O rastreio pode trazer texto com vírgula
# decimal ("-23,62"); coordenadas não usam separador de milhar, então trocar
# a vírgula por ponto é seguro e garante a saída numérica (ponto) no .xlsx.
def to_coord(valor)
Float(valor)
Float(valor.to_s.strip.tr(',', '.'))
rescue ArgumentError, TypeError
nil
end