Sha256: 24cb9a1c195e4af887821cd2243eb5ef0d0b5ee24225cc88da83c201d8298a52

Contents?: true

Size: 1.11 KB

Versions: 6

Compression:

Stored size: 1.11 KB

Contents

module DHLEcommerceAPI
  # Component item
  class Shipment::ShipmentItem < Base
    # add some validations?
    DEFAULT_ATTRIBUTES = { 
      shipment_id: nil,
      package_desc: "",
      total_weight: nil,
      total_weight_uom: "G",
      dimension_uom: "CM",
      height: nil,
      length: nil,
      width: nil,
      product_code: "PDO",
      cod_value: nil,
      insurance_value: nil,
      total_value: 300,
      currency: "MYR",
      remarks: nil,
      is_routing_info_required: "Y",
      consignee_address: { 
        company_name: "",
        name: "",
        address1: "",
        address2: nil,
        address3: nil,
        city: "",
        state: "",
        district: nil,
        country: "MY",
        post_code: "",
        phone: "",
        email: nil 
      }
    }

    def initialize(attributes = {}, persisted = false)
      status = attributes["response_status"]
      if status.present? && status["code"] != "200"
        error_messages = status["message_details"].map{|err| err["message_detail"]}
        handle_errors(status["code"], error_messages) 
      end
      super
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
dhl_ecommerce_api-0.1.7 lib/dhl_ecommerce_api/resources/shipment/shipment_item.rb
dhl_ecommerce_api-0.1.4 lib/dhl_ecommerce_api/resources/shipment/shipment_item.rb
dhl_ecommerce_api-0.1.3 lib/dhl_ecommerce_api/resources/shipment/shipment_item.rb
dhl_ecommerce_api-0.1.2 lib/dhl_ecommerce_api/resources/shipment/shipment_item.rb
dhl_ecommerce_api-0.1.1 lib/dhl_ecommerce_api/resources/shipment/shipment_item.rb
dhl_ecommerce_api-0.1.0 lib/dhl_ecommerce_api/resources/shipment/shipment_item.rb