2017-07-09 17:41:28 +00:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2009-08-08 22:48:11 +00:00
|
|
|
class Contract < ActiveRecord::Base
|
|
|
|
belongs_to :company
|
2017-12-31 20:20:00 +00:00
|
|
|
belongs_to :developer, primary_key: :id
|
2016-08-06 17:37:57 +00:00
|
|
|
belongs_to :firm, foreign_key: "company_id"
|
2011-05-31 10:08:11 +00:00
|
|
|
|
2019-02-12 17:06:06 +00:00
|
|
|
attribute :metadata, :json
|
|
|
|
|
|
|
|
before_save :hi, :update_metadata
|
2011-05-31 10:08:11 +00:00
|
|
|
after_save :bye
|
|
|
|
|
|
|
|
attr_accessor :hi_count, :bye_count
|
|
|
|
|
|
|
|
def hi
|
|
|
|
@hi_count ||= 0
|
|
|
|
@hi_count += 1
|
|
|
|
end
|
|
|
|
|
|
|
|
def bye
|
|
|
|
@bye_count ||= 0
|
|
|
|
@bye_count += 1
|
|
|
|
end
|
2019-02-12 17:06:06 +00:00
|
|
|
|
|
|
|
def update_metadata
|
|
|
|
self.metadata = { company_id: company_id, developer_id: developer_id }
|
|
|
|
end
|
2010-12-12 16:35:27 +00:00
|
|
|
end
|
2018-08-21 15:23:17 +00:00
|
|
|
|
|
|
|
class NewContract < Contract
|
|
|
|
validates :company_id, presence: true
|
|
|
|
end
|