class Contabilidade::MapeamentoManual < ApplicationRecord
	has_paper_trail

	belongs_to :periodo_matriz_de_saldo_contabil, class_name: 'Contabilidade::PeriodoMatrizDeSaldoContabil'

	validates_presence_of :periodo_matriz_de_saldo_contabil_id, :anexo, :linha, :tipo, :valor
	validates_presence_of :mes, if: Proc.new{ self.rreo? and self.anexo_03? }, message: "Para o Anexo 3 do RREO, é obrigatório preencher o mês."
	
	enum tipo: {
		rreo: 1,
		rgf: 2
	}
	
	enum mes: {
		janeiro: 1,
		fevereiro: 2,
		marco: 3,
		abril: 4,
		maio: 5,
		junho: 6,
		julho: 7,
		agosto: 8,
		setembro: 9,
		outubro: 10,
		novembro: 11,
		dezembro: 12
	}

	enum anexo: {
		anexo_03: 3,
		anexo_06: 6,
		anexo_08: 8
	}

	enum linha: {
		#Anexo 3
		transferencia_obg_da_uniao_rel_individual: 1,
		transferencia_obg_da_uniao_rel_bancada: 2,

		#Anexo 6
		meta_fiscal_para_o_resultado_primario: 3,
		meta_fiscal_para_o_resultado_nominal: 4,

		#Anexo 8
		total_mde_custeada: 5,
		total_transferidas_fundeb: 6,
		receita_fundeb: 7,
		superavit_exercicio: 8,
		restos_a_pagar_nao_processados: 9,
		cancelamento_no_exercicio: 10,
		total_das_despesas: 11,
		aplicacao_mde: 12
	}
end
