class Eancom::Edifact::QTY

Constants

TAG
TYPE

Public Class Methods

new( tag: nil, quantity_type_code_qualifier:, quantity:, measurement_unit_code: nil ) click to toggle source
Calls superclass method Eancom::Edifact::Segment::new
# File lib/eancom/edifact/segments/qty.rb, line 7
def initialize(
  tag: nil,
  quantity_type_code_qualifier:,
  quantity:,
  measurement_unit_code: nil
)
  @tag = tag
  @quantity_type_code_qualifier = quantity_type_code_qualifier
  @quantity = quantity
  @measurement_unit_code = measurement_unit_code

  super(tag: tag || TAG)
end

Public Instance Methods

group_name() click to toggle source
# File lib/eancom/edifact/segments/qty.rb, line 29
def group_name
  'quantities'
end
segment_type() click to toggle source
# File lib/eancom/edifact/segments/qty.rb, line 33
def segment_type
  TYPE
end
to_json_hash() click to toggle source
# File lib/eancom/edifact/segments/qty.rb, line 21
def to_json_hash
  hash = { identifier => {} }
  hash[identifier].merge!({ quantity: @quantity }) if @quantity
  hash.merge!(measurement_unit_code: find_identifier(:measurement_unit_code)) if @measurement_unit_code
  hash.merge!(identifier: @identifier) if @identifier
  hash
end

Private Instance Methods

identifier() click to toggle source
# File lib/eancom/edifact/segments/qty.rb, line 39
def identifier
  @identifier ||= structure.find(:quantity_type_code_qualifier).dictionary[@quantity_type_code_qualifier][:identifier]
end