Class: Gestorh::FolhaAgrupada
- Inherits:
-
GestorhRecord
- Object
- ActiveRecord::Base
- GestorhRecord
- Gestorh::FolhaAgrupada
- Defined in:
- app/models/gestorh/folha_agrupada.rb
Class Method Summary collapse
Instance Method Summary collapse
-
#diarias ⇒ Object
diarias.
- #diarias_negativas ⇒ Object
- #diarias_positivas ⇒ Object
- #eventos_e_valores ⇒ Object
- #gratificacoes ⇒ Object
- #indenizacoes ⇒ Object
- #liquido_total ⇒ Object
- #remuneracao_paradigma ⇒ Object
- #subsidio_com_gratificacao ⇒ Object
-
#subsidio_vantagens_pessoais ⇒ Object
sobrou da show.
- #subsidio_vantagens_pessoais_eventuais ⇒ Object
- #subsidios ⇒ Object
- #vantagens_eventuais ⇒ Object
- #vantagens_pessoais ⇒ Object
Class Method Details
.ransackable_attributes(auth_object = nil) ⇒ Object
103 104 105 106 107 108 109 |
# File 'app/models/gestorh/folha_agrupada.rb', line 103 def self.ransackable_attributes(auth_object = nil) ["ano", "cpf", "desconto_diversos", "desconto_imposto_renda", "desconto_previdencia_publica", "desconto_retencao_teto_constitucional", "desconto_total", "folhas", "matricula", "mes", "mvps_banco", "mvps_cargo", "mvps_funcao", "mvps_grauinstrucao", "mvps_inativo", "mvps_localtrab", "mvps_lotacao", "mvps_nivelsalario", "mvps_reglotacao", "mvps_vinculo", "nome", "numeric_cpf", "remuneracao_orgao_origem", "rendimento_gratificacoes", "rendimento_indenizacoes", "rendimento_remuneracao", "rendimento_subsidio_diferenca_funcao", "rendimento_total", "rendimento_vantagens_eventuais", "rendimento_vantagens_pessoais"] end |
Instance Method Details
#diarias ⇒ Object
diarias
80 81 82 83 84 85 |
# File 'app/models/gestorh/folha_agrupada.rb', line 80 def diarias if Object.const_defined?(:DailyRate) DailyRate.where(cpf: [cpf, numeric_cpf], date: [Date.new(ano, mes)..Date.new(ano, mes).at_end_of_month]) .sum(:pago) end end |
#diarias_negativas ⇒ Object
95 96 97 98 99 100 101 |
# File 'app/models/gestorh/folha_agrupada.rb', line 95 def diarias_negativas if Object.const_defined?(:DailyRate) DailyRate.where(cpf: [cpf, numeric_cpf], pago: [-Float::INFINITY..0], date: [Date.new(ano, mes)..Date.new(ano, mes).at_end_of_month]) .sum(:pago) end end |
#diarias_positivas ⇒ Object
87 88 89 90 91 92 93 |
# File 'app/models/gestorh/folha_agrupada.rb', line 87 def diarias_positivas if Object.const_defined?(:DailyRate) DailyRate.where(cpf: [cpf, numeric_cpf], pago: [0..Float::INFINITY], date: [Date.new(ano, mes)..Date.new(ano, mes).at_end_of_month]) .sum(:pago) end end |
#eventos_e_valores ⇒ Object
17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'app/models/gestorh/folha_agrupada.rb', line 17 def eventos_e_valores # .where.not('cdclassificacaoverba.cv_classificacao': 'DESCONTO_PREVIDENCIA_PUBLICA_IAPEP') Gestorh::MovimentoAcumulado.where(mv_regfolha: folhas, mv_matricula: matricula) .joins(verba: :classificacao_verba) .select("mv_regfolha as folha_id", "mv_verba as codigo_evento", "mv_referencia as fator", "cdverba.vb_nome as nome_evento", "mv_dc as status", "mv_total as valor", "cdclassificacaoverba.cv_classificacao as tipo") .to_a .uniq { |x| [x.codigo_evento, x.status, x.valor] } # uniq temporario para remover verbas com 2 classificacoes end |
#gratificacoes ⇒ Object
59 60 61 |
# File 'app/models/gestorh/folha_agrupada.rb', line 59 def gratificacoes eventos_e_valores.select { |x| x.tipo == "RENDIMENTO_GRATIFICACOES" && x.status == "C" } end |
#indenizacoes ⇒ Object
51 52 53 |
# File 'app/models/gestorh/folha_agrupada.rb', line 51 def indenizacoes eventos_e_valores.select { |x| x.tipo == "RENDIMENTO_INDENIZACOES" && x.status == "C" } end |
#liquido_total ⇒ Object
13 14 15 |
# File 'app/models/gestorh/folha_agrupada.rb', line 13 def liquido_total rendimento_total - desconto_total end |
#remuneracao_paradigma ⇒ Object
31 32 33 34 35 36 37 |
# File 'app/models/gestorh/folha_agrupada.rb', line 31 def remuneracao_paradigma if Date.new(ano, mes, 1) < Date.new(2013, 7, 1) eventos_e_valores.select { |x| x.tipo == "RENDIMENTO_REMUNERACAO" && x.status == "C" } else [] end end |
#subsidio_com_gratificacao ⇒ Object
75 76 77 |
# File 'app/models/gestorh/folha_agrupada.rb', line 75 def subsidio_com_gratificacao subsidios.pluck(:valor).sum end |
#subsidio_vantagens_pessoais ⇒ Object
sobrou da show
64 65 66 |
# File 'app/models/gestorh/folha_agrupada.rb', line 64 def subsidio_vantagens_pessoais eventos_e_valores.select { |x| x.tipo == "RENDIMENTO_VANTAGENS_EVENTUAIS" || x.tipo == "RENDIMENTO_VANTAGENS_PESSOAIS" } end |
#subsidio_vantagens_pessoais_eventuais ⇒ Object
68 69 70 71 72 73 |
# File 'app/models/gestorh/folha_agrupada.rb', line 68 def subsidio_vantagens_pessoais_eventuais eventos_e_valores.select { |x| x.tipo == "RENDIMENTO_SUBSIDIO_DIFERENCA_FUNCAO" || x.tipo == "RENDIMENTO_VANTAGENS_PESSOAIS" || (x.tipo == "RENDIMENTO_VANTAGENS_EVENTUAIS" && x.status == "C") } end |
#subsidios ⇒ Object
43 44 45 46 47 48 49 |
# File 'app/models/gestorh/folha_agrupada.rb', line 43 def subsidios if Date.new(ano, mes, 1) < Date.new(2013, 7, 1) [] else eventos_e_valores.select { |x| (x.tipo == "RENDIMENTO_SUBSIDIO_DIFERENCA_FUNCAO" || x.tipo == "RENDIMENTO_REMUNERACAO") && x.status == "C" } end end |
#vantagens_eventuais ⇒ Object
55 56 57 |
# File 'app/models/gestorh/folha_agrupada.rb', line 55 def vantagens_eventuais eventos_e_valores.select { |x| x.tipo == "RENDIMENTO_VANTAGENS_EVENTUAIS" && x.status == "C" } end |
#vantagens_pessoais ⇒ Object
39 40 41 |
# File 'app/models/gestorh/folha_agrupada.rb', line 39 def vantagens_pessoais eventos_e_valores.select { |x| x.tipo == "RENDIMENTO_VANTAGENS_PESSOAIS" && x.status == "C" } end |