Filtro de conta configurável (account_id texto, conta vazia, opção "all")
account_id na tabela externa é texto e os registros recentes vêm com conta vazia (junho estava 100% em conta vazia), então o filtro fixo em 95907 (.to_i) zerava o dashboard. da_conta_gade agora lê DB_EXISTING_ACCOUNT_ID como lista de contas (texto) ou "all"/vazio para não filtrar. .env.example documentado. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -18,7 +18,12 @@ DB_PASSWORD=senha_segura
|
|||||||
# ── Tabela existente (apenas leitura — NÃO modificar) ────────
|
# ── Tabela existente (apenas leitura — NÃO modificar) ────────
|
||||||
DB_EXISTING_TABLE=db_reem_simplerout_2026
|
DB_EXISTING_TABLE=db_reem_simplerout_2026
|
||||||
DB_EXISTING_SCHEMA=public
|
DB_EXISTING_SCHEMA=public
|
||||||
DB_EXISTING_ACCOUNT_ID=95907
|
# Conta(s) consideradas. A coluna account_id é texto e pode vir vazia.
|
||||||
|
# 95907 → só essa conta
|
||||||
|
# 95907,12345 → várias contas
|
||||||
|
# 95907, → essa conta + os registros de conta vazia
|
||||||
|
# all (ou vazio)→ NÃO filtra por conta (conta tudo da tabela) ← recomendado aqui
|
||||||
|
DB_EXISTING_ACCOUNT_ID=all
|
||||||
|
|
||||||
# ── Rails Security ────────────────────────────────────────────
|
# ── Rails Security ────────────────────────────────────────────
|
||||||
# Gere com: docker-compose exec app bundle exec rails secret
|
# Gere com: docker-compose exec app bundle exec rails secret
|
||||||
|
|||||||
@@ -36,8 +36,17 @@ class Entrega < ApplicationRecord
|
|||||||
where(planned_date: data.beginning_of_month..data.end_of_month)
|
where(planned_date: data.beginning_of_month..data.end_of_month)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Filtra pela(s) conta(s) configurada(s) em DB_EXISTING_ACCOUNT_ID.
|
||||||
|
# A coluna account_id é TEXTO e pode vir vazia, então comparamos como string.
|
||||||
|
# Aceita: "95907" (uma) | "95907,12345" (várias) | "all" ou vazio (sem filtro).
|
||||||
|
# Use "95907," (com vírgula) para incluir também os registros de conta vazia.
|
||||||
scope :da_conta_gade, -> {
|
scope :da_conta_gade, -> {
|
||||||
where(account_id: ENV.fetch('DB_EXISTING_ACCOUNT_ID', 95907).to_i)
|
contas = ENV.fetch('DB_EXISTING_ACCOUNT_ID', '95907').to_s.strip
|
||||||
|
if contas.empty? || contas.casecmp?('all')
|
||||||
|
all
|
||||||
|
else
|
||||||
|
where(account_id: contas.split(',', -1).map(&:strip))
|
||||||
|
end
|
||||||
}
|
}
|
||||||
|
|
||||||
# ── Métodos de classe ────────────────────────────────────────
|
# ── Métodos de classe ────────────────────────────────────────
|
||||||
|
|||||||
Reference in New Issue
Block a user