class Obra::Fiscalizacao < ApplicationRecord
	include TradutorConcern
	has_paper_trail

	belongs_to :obra, required: true, class_name: 'Contabilidade::Obra'
	belongs_to :engenheiro_da_obra, required: true, class_name: 'Contabilidade::EngenheiroDaObra'
	belongs_to :medicao_da_obra, required: true, class_name: 'Contabilidade::MedicaoDaObra'

	has_many :fotos_da_fiscalizacao, class_name: 'Obra::FotoDaFiscalizacao', dependent: :destroy
	has_many :verificacoes_da_fiscalizacao, class_name: 'Obra::VerificacaoDaFiscalizacao', dependent: :destroy
	has_many :providencias_da_fiscalizacao, class_name: 'Obra::ProvidenciaDaFiscalizacao', dependent: :destroy

	validates_presence_of :data_da_fiscalizacao, :art
	validates_length_of :art, maximum: 20
	validates_presence_of :qualidade_da_execucao, :desempenho_da_construtora


	enum qualidade_da_execucao: {
		qualidade_otima: 		3,
		qualidade_boa: 			2,
		qualidade_regular: 	1,
		qualidade_ruim: 		0
	}

	enum desempenho_da_construtora: {
		desempenho_otimo: 		3,
		desempenho_bom: 			2,
		desempenho_regular: 	1,
		desempenho_ruim: 			0
	}

end
