Class: Voucherify::Service::LoyaltyEarningRules

Inherits:
Object
  • Object
show all
Defined in:
lib/voucherify/service/loyalties.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(client) ⇒ LoyaltyEarningRules

Returns a new instance of LoyaltyEarningRules.



49
50
51
# File 'lib/voucherify/service/loyalties.rb', line 49

def initialize(client)
  @client = client
end

Instance Attribute Details

#clientObject (readonly)

Returns the value of attribute client.



47
48
49
# File 'lib/voucherify/service/loyalties.rb', line 47

def client
  @client
end

Instance Method Details

#create(loyalty_id, earning_rules) ⇒ Object



57
58
59
60
61
62
63
# File 'lib/voucherify/service/loyalties.rb', line 57

def create(loyalty_id, earning_rules)
  payload = earning_rules
  if earning_rules.is_a? Hash
    payload = [ earning_rules ]
  end
  @client.post("/loyalties/#{ERB::Util.url_encode(loyalty_id)}/earning-rules", payload.to_json)
end

#delete(loyalty_id, earning_rule_id) ⇒ Object



69
70
71
72
# File 'lib/voucherify/service/loyalties.rb', line 69

def delete(loyalty_id, earning_rule_id)
  @client.delete("/loyalties/#{ERB::Util.url_encode(loyalty_id)}/earning-rules/#{ERB::Util.url_encode(earning_rule_id)}")
  nil
end

#list(loyalty_id, query = {}) ⇒ Object



53
54
55
# File 'lib/voucherify/service/loyalties.rb', line 53

def list(loyalty_id, query = {})
  @client.get("/loyalties/#{ERB::Util.url_encode(loyalty_id)}/earning-rules", query)
end

#update(loyalty_id, earning_rule_id, earning_rule) ⇒ Object



65
66
67
# File 'lib/voucherify/service/loyalties.rb', line 65

def update(loyalty_id, earning_rule_id, earning_rule)
  @client.put("/loyalties/#{ERB::Util.url_encode(loyalty_id)}/earning-rules/#{ERB::Util.url_encode(earning_rule_id)}", earning_rule.to_json)
end