Module: ProductVariations

Included in:
Ecommerce
Defined in:
lib/user/ecommerce/product_variations.rb

Instance Method Summary collapse

Instance Method Details

#create_product_variation(data) ⇒ Object

Create product variation.

Create a product variation with data.

Parameters

data

(Hash) – Data to be submitted.

Example

data = {
  title: 'New Product Variation',
  sku: 'NEW-PRODUCT-VARIATION-SKU',
  product_id: 5,
  supplier: 36,
  prices: [
    { id: 1, value: 300 }
  ]
}
@data = @cxf_user.create_product_variation(data)


98
99
100
# File 'lib/user/ecommerce/product_variations.rb', line 98

def create_product_variation(data)
  @client.raw('post', '/ecommerce/product-variations', nil, data_transform(data))
end

#delete_product_variation(id) ⇒ Object

Delete product variation.

Delete a product variation.

Parameters

id

(Integer) – Product variation id.

Example

@data = @cxf_user.delete_product_variation(528)


130
131
132
# File 'lib/user/ecommerce/product_variations.rb', line 130

def delete_product_variation(id)
  @client.raw('delete', "/ecommerce/product-variations/#{id}")
end

#generate_product_variation(product_id, data) ⇒ Object

Generate product variation.

Generate a product variation.

Parameters

product_id

(Integer) – Product id.

data

(Hash) – Data to be submitted.



15
16
17
18
19
# File 'lib/user/ecommerce/product_variations.rb', line 15

def generate_product_variation(product_id, data)
  # TODO: Research use
  # TODO: Notify line 247 had a '/' before Exception
  @client.raw('post', "/ecommerce/product-variations/generate/#{product_id}", nil, data_transform(data))
end

#get_product_from_product_variation(product_id) ⇒ Object

Get product from product variation.

Get a product from a product variation.

Parameters

product_id

(Integer) – Product id.

Example

@data = @cxf_user.get_product_from_product_variation(1)


53
54
55
# File 'lib/user/ecommerce/product_variations.rb', line 53

def get_product_from_product_variation(product_id)
  @client.raw('get', "/ecommerce/product-variations/product/#{product_id}")
end

#get_product_variation(id) ⇒ Object

Get product variation.

Get a product variation info.

Parameters

id

(Integer) – Product variation id.

Example

@data = @cxf_user.get_product_variation(100)


77
78
79
# File 'lib/user/ecommerce/product_variations.rb', line 77

def get_product_variation(id)
  @client.raw('get', "/ecommerce/product-variations/#{id}")
end

#get_product_variationsObject

Get product variations.

Get a collection of product variations.

Parameters

options

(Hash) – List of Resource Collection Options shown above can be used as parameter.

Example

@data = @cxf_user.get_product_variations


65
66
67
# File 'lib/user/ecommerce/product_variations.rb', line 65

def get_product_variations
  @client.raw('get', '/ecommerce/product-variations')
end

#set_prices_to_product_variations(data) ⇒ Object

Set prices to product variations.

Set prices to product variations.

Parameters

data

(Hash) – Data to be submitted.

Example

skus = [
  { id: 100 }
]
prices = [
  { id: 1, value: 1259 },
  { id: 2, value: 1260 }
]
data = {
  skus: skus,
  prices: prices
}.to_json

@data = @cxf_user.set_prices_to_product_variations(data)


41
42
43
# File 'lib/user/ecommerce/product_variations.rb', line 41

def set_prices_to_product_variations(data)
  @client.raw('post', '/ecommerce/product-variations/set-prices', nil, data_transform(data))
end

#update_product_variation(id, data) ⇒ Object

Update product variation.

Update a product variation info.

Parameters

id

(Integer) – Product variation id.

data

(Hash) – Data to be submitted.

Example

data = {
  title: 'New Product Variation Modified',
  cost: 123,
  prices: [
    { id: 1, value: 400 }
  ]
}
@data = @cxf_user.update_product_variation(528, data)


118
119
120
# File 'lib/user/ecommerce/product_variations.rb', line 118

def update_product_variation(id, data)
  @client.raw('put', "/ecommerce/product-variations/#{id}", nil, data_transform(data))
end