supplier.rb 1.2 KB

123456789101112131415161718192021222324252627
  1. class Supplier < ActiveRecord::Base
  2. ## Associaciones
  3. belongs_to :contact
  4. has_one :billing_information
  5. has_many :purchases
  6. has_many :pre_purchases
  7. has_many :pointsales, :through => :purchases
  8. # belongs_to :spmx_state , :through => :billing_information
  9. accepts_nested_attributes_for :contact, :reject_if => :all_blank
  10. accepts_nested_attributes_for :billing_information, :reject_if => :all_blank
  11. enum status: [ :erased, :active, :inactive ]
  12. ##--- Llevar registro de Actividad del usuario
  13. audited
  14. ##--- Validaciones previas de guardar
  15. validates_presence_of :nick_name, message: "Debe capturar el nombre del Proveedor."
  16. validates_presence_of :phone, message: "Debe capturar el teléfono del proveedor."
  17. validates_presence_of :email, message: "Debe capturar el correo electrónico del proveedor."
  18. validates_format_of :email, :with => /\A([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})\z/i ,message: "El formato del correo electrónico es inválido", :allow_blank => true
  19. ##--- Tipo de vistas / consultas
  20. scope :vigentes, -> { where( "status != 0").order(" status ASC, nick_name ASC") }
  21. scope :activos, -> { where( "status = 1").order(" status ASC, nick_name ASC") }
  22. end