Class: BlingApi::Seller

Inherits:
Object
  • Object
show all
Defined in:
lib/bling_api/seller.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(id:, nome:, situacao:) ⇒ Seller



25
26
27
28
29
# File 'lib/bling_api/seller.rb', line 25

def initialize(id:, nome:, situacao:)
  @id = id
  @nome = nome
  @situacao = situacao
end

Instance Attribute Details

#idObject (readonly)

Returns the value of attribute id.



24
25
26
# File 'lib/bling_api/seller.rb', line 24

def id
  @id
end

#nomeObject (readonly)

Returns the value of attribute nome.



24
25
26
# File 'lib/bling_api/seller.rb', line 24

def nome
  @nome
end

#situacaoObject (readonly)

Returns the value of attribute situacao.



24
25
26
# File 'lib/bling_api/seller.rb', line 24

def situacao
  @situacao
end

Class Method Details

.build_hash(json_response) ⇒ Object



31
32
33
34
35
36
37
# File 'lib/bling_api/seller.rb', line 31

def self.build_hash json_response
  {
    id: json_response.dig("id"),
    nome: json_response.dig("contato", "nome"),
    situacao: json_response.dig("contato", "situacao")
  }
end

.build_hash_sellers(sellers) ⇒ Object



14
15
16
17
18
19
20
21
22
# File 'lib/bling_api/seller.rb', line 14

def self.build_hash_sellers sellers
  sellers.map do |seller|
    {
      id: seller.dig("id"),
      nome: seller.dig("contato", "nome"),
      situacao: seller.dig("contato", "situacao")
    }
  end
end

.find_by_id(id) ⇒ Object



9
10
11
12
# File 'lib/bling_api/seller.rb', line 9

def self.find_by_id id
  seller = Client.new(BlingApi.configuration.access_token).get_seller(id)
  new(**build_hash(seller))
end

.get_sellers(page: 1, limit: 100, situation: "A") ⇒ Object



4
5
6
7
# File 'lib/bling_api/seller.rb', line 4

def self.get_sellers page: 1, limit: 100, situation: "A"
  sellers = Client.new(BlingApi.configuration.access_token).get_sellers(page, limit, situation)
  build_hash_sellers(sellers)
end