Correçoes do campo de busca no mapa e ajustes de interface no dash
This commit is contained in:
@@ -146,11 +146,11 @@ module Analytics
|
||||
}
|
||||
end
|
||||
|
||||
# Pontos [lat, lng] das entregas concluídas para o heatmap.
|
||||
# Pontos [lat, lng] das entregas ATENDIDAS (sucesso + falhas) para o heatmap.
|
||||
# Prefere as coordenadas de CHECKOUT (saída); cai para as de CHECKIN.
|
||||
def pontos_mapa
|
||||
@pontos_mapa ||= linhas.filter_map do |r|
|
||||
next unless r['status'] == 'completed'
|
||||
next unless Entrega::STATUS_ATENDIDO.include?(r['status'])
|
||||
lat = num(r['checkout_latitude']) || num(r['latitude'])
|
||||
lng = num(r['checkout_longitude']) || num(r['longitude'])
|
||||
next if lat.nil? || lng.nil? || (lat.zero? && lng.zero?)
|
||||
@@ -165,12 +165,13 @@ module Analytics
|
||||
# Limite de marcadores no modo "Pontos" (Leaflet fica pesado com milhares).
|
||||
MAX_PONTOS = 2000
|
||||
|
||||
# Pontos detalhados (modo "Pontos" do mapa) — um por entrega CONCLUÍDA com
|
||||
# coordenada de CHECKOUT (onde a entrega foi registrada). Inclui dados para o
|
||||
# popup (NF, destinatário, endereço, unidade, motorista, data).
|
||||
# Pontos detalhados (modo "Pontos" do mapa) — um por entrega ATENDIDA
|
||||
# (sucesso OU insucesso: óbito e demais pilares de falha), com coordenada de
|
||||
# CHECKOUT (ou planejada como fallback). Inclui dados para o popup (NF,
|
||||
# destinatário, endereço, unidade, motorista, veículo, data, status, motivo).
|
||||
def pontos_detalhados
|
||||
@pontos_detalhados ||= linhas.filter_map do |r|
|
||||
next unless r['status'] == 'completed'
|
||||
next unless Entrega::STATUS_ATENDIDO.include?(r['status'])
|
||||
lat = num(r['checkout_latitude']) || num(r['latitude'])
|
||||
lng = num(r['checkout_longitude']) || num(r['longitude'])
|
||||
next if lat.nil? || lng.nil? || (lat.zero? && lng.zero?)
|
||||
@@ -183,6 +184,8 @@ module Analytics
|
||||
motorista: r['driver'],
|
||||
veiculo: r['vehicle'],
|
||||
checkout: data_de(r['checkout'])&.strftime('%d/%m/%Y'),
|
||||
sucesso: r['status'] == 'completed',
|
||||
motivo: r['observation'].presence,
|
||||
foto: foto_url(r['foto_da_fachada'])
|
||||
}
|
||||
end.first(MAX_PONTOS)
|
||||
|
||||
Reference in New Issue
Block a user