class Contabilidade::Contigenciamento < ApplicationRecord
	has_paper_trail
	include AASM
	include TradutorConcern

	belongs_to :fonte_de_recurso, class_name: 'Base::FonteDeRecursos'
	belongs_to :decreto, class_name: 'Contabilidade::Decreto'
	has_one :orcamento_do_contingenciamento, class_name: 'Contabilidade::OrcamentoDoContingenciamento'

	validates_presence_of :valor, :fonte_de_recurso_id, :tipo, :decreto_id

	enum tipo: {
		orcamentario: 0,
		financeiro: 1,
	}

	after_create :gera_orcamento_do_contigencimaneto

	def gera_orcamento_do_contigencimaneto
		Contabilidade::OrcamentoDoContingenciamento.create(contigenciamento_id: self.id)
	end
end
