Sha256: 449732437c7851cb659f105efc6849511f539daea1311a824e02988f5ad7e7a9

Contents?: true

Size: 842 Bytes

Versions: 5

Compression:

Stored size: 842 Bytes

Contents

module BaseCrm
  class Deal < ApiClient::Resource::Base

    include BaseCrm::Resource
    include BaseCrm::Noteable
    include BaseCrm::Taskable

    namespace false

    prefix "api/v1"

    always do
      endpoint BaseCrm.config.endpoints.sales
    end

    def source
      if self.source_id
        pass_headers(Source).find(self.source_id)
      end
    rescue ApiClient::Errors::NotFound
    end

    def contact
      pass_headers(Contact).find(self.entity_id)
    rescue ApiClient::Errors::NotFound
    end

    def contacts
      pass_headers(Contact).fetch_for_deal(self)
    end

    def forecasting
      pass_headers(Forecasting).fetch_for_deal(self)
    end

    def noteable_type
      "Deal"
    end

    def taskable_type
      "Deal"
    end

    def self.build_one(result)
      super result['deal']
    end

  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
basecrm-0.1.2 lib/base_crm/deal.rb
basecrm-0.1.1 lib/base_crm/deal.rb
basecrm-0.1.0 lib/base_crm/deal.rb
basecrm-0.0.3 lib/base_crm/deal.rb
basecrm-0.0.2 lib/base_crm/deal.rb