Correção da função filtro de Pagamentos
This commit is contained in:
@@ -88,17 +88,26 @@ class DashboardController < ApplicationController
|
||||
end
|
||||
|
||||
def carregar_dados_pagamentos
|
||||
finalizadas = @consolidacoes_mes.where(status: :finalizada)
|
||||
cms = ConsolidacaoMotorista.where(consolidacao_id: finalizadas.select(:id))
|
||||
intervalo = @periodo_inicio.beginning_of_day..@periodo_fim.end_of_day
|
||||
|
||||
@pag_pago_qtd = cms.pagos.count
|
||||
@pag_pend_qtd = cms.pendentes.count
|
||||
@pag_pago_valor = cms.pagos.sum(:valor_total)
|
||||
@pag_pend_valor = cms.pendentes.sum(:valor_total)
|
||||
# PAGOS: filtrados pela DATA DO PAGAMENTO (pago_em) dentro do período do topo
|
||||
# — "quanto foi pago neste período".
|
||||
pagos = ConsolidacaoMotorista
|
||||
.joins(:consolidacao)
|
||||
.where(consolidacoes: { status: :finalizada, deleted_at: nil })
|
||||
.where(pago_em: intervalo)
|
||||
@pag_pago_qtd = pagos.count
|
||||
@pag_pago_valor = pagos.sum(:valor_total)
|
||||
|
||||
@tabela_pagamentos = finalizadas.recentes.map do |c|
|
||||
{ consolidacao: c, status: c.status_pagamento, pago: c.valor_pago, pendente: c.valor_pendente }
|
||||
end
|
||||
# PENDENTES: consolidações finalizadas cujo PERÍODO cruza o filtro, ainda sem
|
||||
# pagamento (pendente não tem data de pagamento para filtrar).
|
||||
finalizadas_ids = @consolidacoes_mes.where(status: :finalizada).select(:id)
|
||||
pendentes = ConsolidacaoMotorista.where(consolidacao_id: finalizadas_ids).pendentes
|
||||
@pag_pend_qtd = pendentes.count
|
||||
@pag_pend_valor = pendentes.sum(:valor_total)
|
||||
|
||||
@pagamentos_feitos = pagos.includes(:consolidacao, :pagador).order(pago_em: :desc)
|
||||
@pagamentos_pendentes = pendentes.includes(:consolidacao).order(consolidacao_id: :desc)
|
||||
end
|
||||
|
||||
def build_grafico_diario(entregas, preco_entrega)
|
||||
|
||||
Reference in New Issue
Block a user