class Expensesconcept < ActiveRecord::Base
	##--- Asociaciones
	has_and_belongs_to_many :pointsales
	has_many :expenses

  	##--- Llevar registro de Actividad del usuario
	audited

	enum status: [:erased, :active, :inactive]
	enum expense_from_purchase: [:no, :yes]
	##--- Validaciones previas de guardar
	validates_presence_of :name, message: "Debe capturar el nombre del concepto."
	# validates_presence_of :pointsale_ids, message: "Debe elegir por lo menos un  punto de venta.", :unless => :allpoints?, :if => :valid_pointsales?


	def valid_pointsales
		self.pointsales.count > 0
	end

	##--- Tipo de vistas / consultas
	scope :activos, -> { where( "status = 1").order(" name ASC") }
	scope :vigentes, -> { where( "status != 0").order(" status ASC, name ASC") }
end
