Correção dos Graficos do Dsh de pagamento
This commit is contained in:
@@ -125,11 +125,20 @@ class DashboardController < ApplicationController
|
||||
# Visão financeira (custo) das consolidações finalizadas do período, já com o
|
||||
# filtro de operação aplicado.
|
||||
def carregar_dados_financeiro
|
||||
consols = Consolidacao.ativas.where(status: :finalizada)
|
||||
.where('data_inicio <= ? AND data_fim >= ?', @periodo_fim, @periodo_inicio)
|
||||
consols = consols.com_operacoes(@operacao_filtro) if @operacao_filtro.present?
|
||||
consols = consols.to_a
|
||||
intervalo = @periodo_inicio.beginning_of_day..@periodo_fim.end_of_day
|
||||
|
||||
base = Consolidacao.ativas.where(status: :finalizada)
|
||||
base = base.com_operacoes(@operacao_filtro) if @operacao_filtro.present?
|
||||
|
||||
# Consolidações relevantes ao período: as que CRUZAM o período OU que tiveram
|
||||
# algum pagamento feito dentro do período. Sem o 2º caso, pagar uma
|
||||
# consolidação de outro mês não mexia nos gráficos (só na tabela de pagamentos).
|
||||
ids_periodo = base.where('data_inicio <= ? AND data_fim >= ?', @periodo_fim, @periodo_inicio).ids
|
||||
ids_pagos = ConsolidacaoMotorista.where(pago_em: intervalo)
|
||||
.where(consolidacao_id: base.select(:id))
|
||||
.distinct.pluck(:consolidacao_id)
|
||||
|
||||
consols = Consolidacao.where(id: (ids_periodo + ids_pagos).uniq).to_a
|
||||
ids = consols.map(&:id)
|
||||
cms = ConsolidacaoMotorista.where(consolidacao_id: ids)
|
||||
ces = ConsolidacaoEntrega.where(consolidacao_id: ids)
|
||||
|
||||
Reference in New Issue
Block a user