Module: Lazada::API::Product

Included in:
Client
Defined in:
lib/lazada_dino/api/product.rb

Instance Method Summary collapse

Instance Method Details

#create_product(params) ⇒ Object



14
15
16
17
18
19
20
21
22
# File 'lib/lazada_dino/api/product.rb', line 14

def create_product(params)
  url = request_url('CreateProduct')

  params = { 'Product' => product_params(params) }

  response = self.class.post(url, body: params.to_xml(root: 'Request', skip_types: true, dasherize: false))

  Lazada::API::Response.new(response)
end

#get_products(params = {}) ⇒ Object



4
5
6
7
8
9
10
11
12
# File 'lib/lazada_dino/api/product.rb', line 4

def get_products(params = {})
  converted_params = get_product_params(params)
  url = request_url('GetProducts', converted_params)
  response = self.class.get(url)

  process_response_errors! response

  response['SuccessResponse']['Body']['Products']
end

#get_qc_statusObject



53
54
55
56
57
58
59
60
61
# File 'lib/lazada_dino/api/product.rb', line 53

def get_qc_status
  url = request_url('GetQcStatus')

  response = self.class.get(url)

  process_response_errors! response

  response['SuccessResponse']['Body']['Status']
end

#remove_product(seller_sku) ⇒ Object



35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
# File 'lib/lazada_dino/api/product.rb', line 35

def remove_product(seller_sku)
  url = request_url('RemoveProduct')

  params = {
    'Product' => {
      'Skus' => {
        'Sku' => {
          'SellerSku' => seller_sku
        }
      }
    }
  }

  response = self.class.post(url, body: params.to_xml(root: 'Request', skip_types: true))

  Lazada::API::Response.new(response)
end

#update_product(params) ⇒ Object



24
25
26
27
28
29
30
31
32
33
# File 'lib/lazada_dino/api/product.rb', line 24

def update_product(params)
  url = request_url('UpdateProduct')

  params = { 'Product' => product_params(params) }
  response = self.class.post(url, body: params.to_xml(root: 'Request', skip_types: true, dasherize: false))

  process_response_errors! response

  Lazada::API::Response.new(response)
end