class Skimlinks::Merchant
Attributes
average_commission[RW]
average_conversion_rate[RW]
categories[RW]
countries[RW]
domains[RW]
id[RW]
logo_url[RW]
name[RW]
preferred[RW]
product_count[RW]
updated_at[RW]
Public Class Methods
build_from_api_response(merchant_data)
click to toggle source
# File lib/skimlinks/merchant.rb, line 8 def build_from_api_response(merchant_data) merchant_data.map do |merchant| self.new \ id: merchant['merchantID'].to_i, name: merchant['merchantName'].presence, preferred: HashWithIndifferentAccess.new(merchant['preferred']), updated_at: merchant['dateUpdated'].present? ? Time.parse(merchant['dateUpdated']) : nil, average_conversion_rate: merchant['averageConversionRate'].presence, average_commission: merchant['averageCommission'].presence, logo_url: merchant['logo'].presence, domains: HashWithIndifferentAccess.new(merchant['domains']), categories: HashWithIndifferentAccess.new(merchant['categories']), countries: Array(merchant['countries'].presence) end.sort_by(&:name) end
new(args = {})
click to toggle source
# File lib/skimlinks/merchant.rb, line 25 def initialize(args = {}) args.each do |k, v| self.send "#{k}=", v end end
Public Instance Methods
preferred?()
click to toggle source
# File lib/skimlinks/merchant.rb, line 31 def preferred? self.preferred.present? end