p style="color: #FFF" table style="width: 100%; font-size: 11pt; border: none; " - total_despesa_fixada = 0 - total_acrescimo = 0 - total_reducao = 0 - total_bloqueio = 0 - total_empenhado = 0 - total_liquidado = 0 - total_pago = 0 tbody style="border: none; font-size: 10pt;" - @orcamentos_da_despesa_por_unidade = @orcamentos_da_despesa.sort_by{|orc| orc.elemento_de_despesa_por_subacao.subacao.unidade_orcamentaria.unidade_gestora.codigo_e_nome}.group_by{ |orc| orc.elemento_de_despesa_por_subacao.subacao.unidade_orcamentaria.unidade_gestora }.map{ |k| [k[0], k[1].uniq] } - @orcamentos_da_despesa_por_unidade.each do | unidade, orcamentos_da_despesa| - if unidade.present? && unidade != "" && unidade != "CONSOLIDADO" hr style="border-color: black;" tr style="border: none; " td.text-right style="border: none; height: 15px;" b #{unidade.codigo_e_nome} - orcamentos_da_despesa.sort_by{|orc| orc.elemento_de_despesa_por_subacao.subacao.acao.codigo_e_descricao}.group_by{|orc| orc.elemento_de_despesa_por_subacao.subacao.acao}.each do |acao, orcamentos_da_despesa_da_acao| tr style="border: none;" td.text-right style="border: none; height: 25px;" width="30%" b #{acao.subacao.classificacao_funcional_programatica_com_descricao} td align="center" style="border: none; height: 25px;" width="10%" b #{orcamentos_da_despesa_da_acao.sum(&:valor_fixado).try(:real_contabil)} - total_despesa_fixada += orcamentos_da_despesa_da_acao.sum(&:valor_fixado) td align="center" style="border: none; height: 25px;" width="10%" b #{ Contabilidade::LancamentoDoOrcamentoDaDespesa.where("modulo_type = 'Contabilidade::DotacaoDestino' AND data_do_lancamento BETWEEN ? AND ? AND modulo_id in (?)", @data_inicial, @data_final, orcamentos_da_despesa_da_acao.pluck(:id)).sum(&:valor).valor_contabil } td align="center" style="border: none; height: 25px;" width="10%" b #{ Contabilidade::LancamentoDoOrcamentoDaDespesa.where("modulo_type = 'Contabilidade::DotacaoOrigem' AND data_do_lancamento BETWEEN ? AND ? AND modulo_id in (?)", @data_inicial, @data_final, orcamentos_da_despesa_da_acao.pluck(:id)).sum(&:valor).valor_contabil } td align="center" style="border: none; height: 25px;" width="10%" b #{ Contabilidade::BloqueioDeDotacao.where("data_do_bloqueio BETWEEN ? AND ? AND orcamento_da_despesa_id in (?)", @data_inicial, @data_final, orcamentos_da_despesa_da_acao.pluck(:id)).sum(&:valor).valor_contabil } td align="center" style="border: none; height: 25px;" width="10%" b #{ Contabilidade::LancamentoDoOrcamentoDaDespesa.where("modulo_type = 'Contabilidade::Empenho' AND data_do_lancamento BETWEEN ? AND ? AND modulo_id in (?)", @data_inicial, @data_final, orcamentos_da_despesa_da_acao.pluck(:id)).sum(&:valor).valor_contabil } td align="center" style="border: none; height: 25px;" width="10%" b #{ Contabilidade::Liquidacao.joins(:empenho).where("contabilidade_empenhos.data_do_empenho BETWEEN ? AND ? AND contabilidade_empenhos.orcamento_da_despesa_id in (?)", @data_inicial, @data_final, orcamentos_da_despesa_da_acao.pluck(:id)).sum(&:valor).valor_contabil } td align="center" style="border: none; height: 25px;" width="10%" b #{Contabilidade::Pagamento.joins(liquidacao: :empenho).where("contabilidade_empenhos.data_do_empenho BETWEEN ? AND ? AND contabilidade_empenhos.orcamento_da_despesa_id in (?)", @data_inicial, @data_final, orcamentos_da_despesa_da_acao.pluck(:id)).sum(&:valor).valor_contabil} - orcamentos_da_despesa_da_acao.sort_by{|orc| orc.elemento_de_despesa_por_subacao.elemento_de_despesa.codigo}.group_by{|orc| orc.elemento_de_despesa_por_subacao.elemento_de_despesa}.each do |elemento_de_despesa, orcamentos_da_despesa_do_elemento| tr style="border: none;" td.text-right style="border: none; height: 25px;" width="30%" ==< elemento_de_despesa.codigo_e_descricao td align="center" style="border: none; height: 25px;" width="10%" ==< orcamentos_da_despesa_do_elemento.sum(&:valor_fixado).try(:valor_contabil) td align="center" style="border: none;" width="10%" ==< Contabilidade::LancamentoDoOrcamentoDaDespesa.where("modulo_type = 'Contabilidade::DotacaoDestino' AND data_do_lancamento BETWEEN ? AND ? AND modulo_id in (?)", @data_inicial, @data_final, orcamentos_da_despesa_do_elemento.pluck(:id)).sum(&:valor).valor_contabil td align="center" style="border: none;" width="10%" ==< Contabilidade::LancamentoDoOrcamentoDaDespesa.where("modulo_type = 'Contabilidade::DotacaoOrigem' AND data_do_lancamento BETWEEN ? AND ? AND modulo_id in (?)", @data_inicial, @data_final, orcamentos_da_despesa_do_elemento.pluck(:id)).sum(&:valor).valor_contabil td align="center" style="border: none;" width="10%" ==< Contabilidade::BloqueioDeDotacao.where("data_do_bloqueio BETWEEN ? AND ? AND orcamento_da_despesa_id in (?)", @data_inicial, @data_final, orcamentos_da_despesa_do_elemento.pluck(:id)).sum(&:valor).valor_contabil td align="center" style="border: none;" width="10%" ==< Contabilidade::LancamentoDoOrcamentoDaDespesa.where("modulo_type = 'Contabilidade::Empenho' AND data_do_lancamento BETWEEN ? AND ? AND modulo_id in (?)", @data_inicial, @data_final, Contabilidade::Empenho.where('orcamento_da_despesa_id in(?)', orcamentos_da_despesa_do_elemento.pluck(:id)).pluck(:id)).sum(&:valor).valor_contabil td align="center" style="border: none;" width="10%" ==< Contabilidade::Liquidacao.joins(:empenho).where("contabilidade_empenhos.data_do_empenho BETWEEN ? AND ? AND contabilidade_empenhos.orcamento_da_despesa_id in (?)", @data_inicial, @data_final, orcamentos_da_despesa_do_elemento.pluck(:id)).sum(&:valor).valor_contabil td align="center" style="border: none;" width="10%" ==< Contabilidade::Pagamento.joins(liquidacao: :empenho).where("contabilidade_empenhos.data_do_empenho BETWEEN ? AND ? AND contabilidade_empenhos.orcamento_da_despesa_id in (?)", @data_inicial, @data_final, orcamentos_da_despesa_do_elemento.pluck(:id)).sum(&:valor).valor_contabil - orcamentos_da_despesa_do_elemento.sort_by{ |orc| orc.fonte_de_recursos.codigo_completo_e_descricao }.each do |orcamento_da_despesa| tr style="border: none; " td align="left" style="border: none;" width="30%" ==< orcamento_da_despesa.fonte_de_recursos.codigo_completo_e_descricao td align="center" style="border: none;" width="10%" ==< orcamento_da_despesa.valor_fixado.try(:valor_contabil) td align="center" style="border: none;" width="10%" ==< orcamento_da_despesa.lancamentos_do_orcamento_da_despesa.where('modulo_type = ? AND data_do_lancamento BETWEEN ? AND ?', "Contabilidade::DotacaoDestino", @data_inicial, @data_final).sum(&:valor).try(:valor_contabil) - total_acrescimo += orcamento_da_despesa.lancamentos_do_orcamento_da_despesa.where('modulo_type = ? AND data_do_lancamento BETWEEN ? AND ?', "Contabilidade::DotacaoDestino", @data_inicial, @data_final).sum(&:valor) td align="center" style="border: none;" width="10%" ==< orcamento_da_despesa.lancamentos_do_orcamento_da_despesa.where('modulo_type = ? AND data_do_lancamento BETWEEN ? AND ?', "Contabilidade::DotacaoOrigem", @data_inicial, @data_final).sum(&:valor).try(:valor_contabil) - total_reducao += orcamento_da_despesa.lancamentos_do_orcamento_da_despesa.where('modulo_type = ? AND data_do_lancamento BETWEEN ? AND ?', "Contabilidade::DotacaoOrigem", @data_inicial, @data_final).sum(&:valor) td align="center" style="border: none;" width="10%" ==< orcamento_da_despesa.bloqueio_de_dotacoes.ativos.where('data_do_bloqueio BETWEEN ? AND ?', @data_inicial, @data_final).sum(&:valor).try(:valor_contabil) - total_bloqueio += orcamento_da_despesa.bloqueio_de_dotacoes.ativos.where('data_do_bloqueio BETWEEN ? AND ?', @data_inicial, @data_final).sum(&:valor) td align="center" style="border: none;" width="10%" ==< orcamento_da_despesa.lancamentos_do_orcamento_da_despesa.where('modulo_type = ? AND data_do_lancamento BETWEEN ? AND ?', "Contabilidade::Empenho", @data_inicial, @data_final).sum(&:valor).try(:valor_contabil) - total_empenhado += orcamento_da_despesa.lancamentos_do_orcamento_da_despesa.where('modulo_type = ? AND data_do_lancamento BETWEEN ? AND ?', "Contabilidade::Empenho", @data_inicial, @data_final).sum(&:valor) td align="center" style="border: none;" width="10%" ==< orcamento_da_despesa.empenhos.where('data_do_empenho BETWEEN ? AND ?', @data_inicial, @data_final).sum(&:valor_liquidado).try(:valor_contabil) - total_liquidado += orcamento_da_despesa.empenhos.where('data_do_empenho BETWEEN ? AND ?', @data_inicial, @data_final).sum(&:valor_liquidado) td align="center" style="border: none;" width="10%" ==< (orcamento_da_despesa.liquidacoes.joins(:pagamentos).where('contabilidade_pagamentos.data BETWEEN ? AND ?', @data_inicial, @data_final).sum(&:valor_pago) rescue 0).valor_contabil - total_pago += (orcamento_da_despesa.liquidacoes.joins(:pagamentos).where('contabilidade_pagamentos.data BETWEEN ? AND ?', @data_inicial, @data_final).sum(&:valor_pago) rescue 0) table style="width: 100%; font-size: 9pt; border: none; " tbody tr td align="center" style="border-right: none; padding-top: 5px" width="30%" b Total da Unidade #{unidade.try(:nome)} td align="center" style="border-right: none; border-left:none" width="10%" b #{total_despesa_fixada.try(:valor_contabil)} td align="center" style="border-right: none; border-left:none;" width="10%" b #{total_acrescimo.try(:valor_contabil)} td align="center" style="border-right: none; border-left:none;" width="10%" b #{total_reducao.try(:valor_contabil)} td align="center" style="border-right: none; border-left:none;" width="10%" b #{total_bloqueio.try(:valor_contabil)} td align="center" style="border-right: none; border-left:none;" width="10%" b #{total_empenhado.try(:valor_contabil)} td align="center" style="border-right: none; border-left:none;" width="10%" b #{total_liquidado.try(:valor_contabil)} td align="center" style="border-right: none; border-left:none;" width="10%" b #{total_pago.try(:valor_contabil)}