class Elibri::ONIX::Release_3_0::Price

Constants

ATTRIBUTES
RELATIONS

Attributes

amount[RW]
currency_code[RW]
minimum_order_quantity[RW]
position_on_product[RW]
printed_on_product[RW]
tax_rate_percent[RW]
tax_type[RW]
to_xml[RW]
type[RW]

Public Class Methods

new(data) click to toggle source
# File lib/elibri_onix/onix_3_0/price.rb, line 26
def initialize(data)
  @to_xml = data.to_s
  @type = data.at_css('PriceType').try(:text)
  @minimum_order_quantity = data.at_css('MinimumOrderQuantity').try(:text).try(:to_i)
  @amount = BigDecimal(data.at_css('PriceAmount').try(:text))
  @currency_code = data.at_css('CurrencyCode').try(:text)
  @printed_on_product = data.at_css('PrintedOnProduct').try(:text)
  @position_on_product = data.at_css('PositionOnProduct').try(:text)
  if data.at_css('Tax')
    @tax_type = data.at_css('Tax').at_css('TaxType').try(:text)
    @tax_rate_percent = data.at_css('Tax').at_css('TaxRatePercent').text.to_i if data.at_css('Tax').at_css('TaxRatePercent')
  end
end

Public Instance Methods

printed_on_product?() click to toggle source
# File lib/elibri_onix/onix_3_0/price.rb, line 40
def printed_on_product?
  @printed_on_product == "02"
end
vat() click to toggle source
# File lib/elibri_onix/onix_3_0/price.rb, line 45
def vat
  @tax_type == Elibri::ONIX::Dict::Release_3_0::TaxType::VAT ? @tax_rate_percent : nil
end