50 lines
1.0 KiB
Ruby
50 lines
1.0 KiB
Ruby
class MOdrRep < ApplicationRecord
|
|
belongs_to :m_odr
|
|
|
|
|
|
has_many :particulars, :dependent => :destroy
|
|
accepts_nested_attributes_for :particulars, :allow_destroy => true
|
|
|
|
|
|
|
|
has_many :m_odr_rep_ribs, :dependent => :destroy
|
|
accepts_nested_attributes_for :m_odr_rep_ribs, :allow_destroy => true
|
|
|
|
belongs_to :m_odr_product
|
|
|
|
belongs_to :m_odr_place
|
|
|
|
has_many :m_odr_files, :dependent => :destroy
|
|
accepts_nested_attributes_for :m_odr_files, :allow_destroy => true
|
|
|
|
|
|
|
|
validates :qte, :presence => true
|
|
validates :m_odr_product_id, :presence => true
|
|
validates :m_odr_place_id, :presence => true
|
|
|
|
belongs_to :m_odr_tracker
|
|
|
|
|
|
attr_accessor :t
|
|
|
|
before_validation do
|
|
if self.t.to_s != ""
|
|
self.m_odr_tracker = MOdrTracker.where(:token => self.t).first
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
before_create { generate_token() }
|
|
|
|
def generate_token()
|
|
begin
|
|
self[:token] = SecureRandom.urlsafe_base64
|
|
end while MOdrRep.exists?(:token => self[:token])
|
|
end
|
|
|
|
end
|