Class: Musoni::Client

Inherits:
Endpoint show all
Defined in:
lib/musoni_ruby/endpoints/client.rb

Instance Attribute Summary collapse

Attributes inherited from Endpoint

#attributes, #config, #endpoint, #id, #pagination, #response

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Endpoint

#fail?, #initialize, #success?

Constructor Details

This class inherits a constructor from Musoni::Endpoint

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class Musoni::Endpoint

Instance Attribute Details

#accounts(offset: 1, limit: 100) ⇒ Object

Musoni::Client.find(26, fetch:false).accounts(offset:1,limit:100)



75
76
77
# File 'lib/musoni_ruby/endpoints/client.rb', line 75

def accounts(offset:1,limit:100)
  find_all(offset:offset,limit:limit)
end

#identifier=(value) ⇒ Object (writeonly)

, :transactions



3
4
5
# File 'lib/musoni_ruby/endpoints/client.rb', line 3

def identifier=(value)
  @identifier = value
end

#identifiers(offset: 1, limit: 100, link: nil) ⇒ Object

Musoni::Client.find(26, fetch:false).identifiers(offset:1,limit:100) Musoni::Client.find(26, fetch:false).identifiers(tempalate,query:{})



70
71
72
# File 'lib/musoni_ruby/endpoints/client.rb', line 70

def identifiers(offset:1,limit:100,link:nil)
  find_all(offset:offset,limit:limit,link:link)
end

Class Method Details

.all(offset: 1, limit: 100) ⇒ Object

Musoni::Client.all



8
9
10
11
# File 'lib/musoni_ruby/endpoints/client.rb', line 8

def all(offset:1,limit:100)
  url = "/clients"
  clients = Musoni::Fetch.get(url,query:{offset:offset,limit:limit}).pageItems
end

.create(options = {}) ⇒ Object

client_attributes = :officeId=>“2”,:firstname=>“Firstname”,:staffId=>“1”,:lastname=>“Lastname”,:middlename=>“MiddleName”,:externalId=>rand(100000),:mobileNo=>“072345678”,:submittedOnDate=>“11-05-2015”,:active=>“true”,:activationDate=>“12-05-2015” Musoni::Client.create(client_attributes)



22
23
24
25
26
# File 'lib/musoni_ruby/endpoints/client.rb', line 22

def create(options={})
  url = "/clients"
  response = Musoni::Fetch.post(url,options)
  client = new(options.merge!(id:response.clientId ,response:response)) rescue response
end

.find(client_id, fetch: true) ⇒ Object

Musoni::Client.find(id)



14
15
16
17
18
# File 'lib/musoni_ruby/endpoints/client.rb', line 14

def find(client_id,fetch: true)
  url = "/clients/#{client_id}"
  response = Musoni::Fetch.get(url) if fetch
  client = new(id:client_id,response:response)
end

Instance Method Details

#create_identifier(options = {}) ⇒ Object

identifier=National ID” client.create_identifier(identifier)



32
33
34
35
# File 'lib/musoni_ruby/endpoints/client.rb', line 32

def create_identifier(options={})
  url = "/clients/#{self.id}/identifiers"
  @identifier = Musoni::Fetch.post(url,options)
end