Class: NewStoreApi::RoutingInsightsData

Inherits:
BaseModel
  • Object
show all
Defined in:
lib/new_store_api/models/routing_insights_data.rb

Overview

Routing insights information for an order

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from BaseModel

#check_for_conflict, #process_additional_properties, #process_array, #process_basic_value, #process_hash, #to_hash, #to_json

Constructor Details

#initialize(activities = nil, created_at = nil, external_id = nil, sales_order_id = nil, sales_order_item_ids = nil, sales_order_items = nil) ⇒ RoutingInsightsData

Returns a new instance of RoutingInsightsData.



59
60
61
62
63
64
65
66
67
68
# File 'lib/new_store_api/models/routing_insights_data.rb', line 59

def initialize(activities = nil, created_at = nil, external_id = nil,
               sales_order_id = nil, sales_order_item_ids = nil,
               sales_order_items = nil)
  @activities = activities
  @created_at = created_at
  @external_id = external_id
  @sales_order_id = sales_order_id
  @sales_order_item_ids = sales_order_item_ids
  @sales_order_items = sales_order_items
end

Instance Attribute Details

#activitiesArray[RoutingInsightsActivity]

TODO: Write general description for this method

Returns:



15
16
17
# File 'lib/new_store_api/models/routing_insights_data.rb', line 15

def activities
  @activities
end

#created_atDateTime

TODO: Write general description for this method

Returns:

  • (DateTime)


19
20
21
# File 'lib/new_store_api/models/routing_insights_data.rb', line 19

def created_at
  @created_at
end

#external_idString

TODO: Write general description for this method

Returns:

  • (String)


23
24
25
# File 'lib/new_store_api/models/routing_insights_data.rb', line 23

def external_id
  @external_id
end

#sales_order_idUUID | String

TODO: Write general description for this method

Returns:

  • (UUID | String)


27
28
29
# File 'lib/new_store_api/models/routing_insights_data.rb', line 27

def sales_order_id
  @sales_order_id
end

#sales_order_item_idsArray[UUID | String]

TODO: Write general description for this method

Returns:

  • (Array[UUID | String])


31
32
33
# File 'lib/new_store_api/models/routing_insights_data.rb', line 31

def sales_order_item_ids
  @sales_order_item_ids
end

#sales_order_itemsHash[String, SalesOrderItems1]

A mapping of sales order item uuid to routing insights for this item

Returns:



35
36
37
# File 'lib/new_store_api/models/routing_insights_data.rb', line 35

def sales_order_items
  @sales_order_items
end

Class Method Details

.from_hash(hash) ⇒ Object

Creates an instance of the object from a hash.



71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
# File 'lib/new_store_api/models/routing_insights_data.rb', line 71

def self.from_hash(hash)
  return nil unless hash

  # Extract variables from the hash.
  # Parameter is an array, so we need to iterate through it
  activities = nil
  unless hash['activities'].nil?
    activities = []
    hash['activities'].each do |structure|
      activities << (RoutingInsightsActivity.from_hash(structure) if structure)
    end
  end

  activities = nil unless hash.key?('activities')
  created_at = if hash.key?('created_at')
                 (DateTimeHelper.from_rfc3339(hash['created_at']) if hash['created_at'])
               end
  external_id = hash.key?('external_id') ? hash['external_id'] : nil
  sales_order_id =
    hash.key?('sales_order_id') ? hash['sales_order_id'] : nil
  sales_order_item_ids =
    hash.key?('sales_order_item_ids') ? hash['sales_order_item_ids'] : nil
  sales_order_items = SalesOrderItems1.from_hash(hash['sales_order_items']) if
    hash['sales_order_items']

  sales_order_items = nil unless hash.key?('sales_order_items')

  # Create object from extracted values.
  RoutingInsightsData.new(activities,
                          created_at,
                          external_id,
                          sales_order_id,
                          sales_order_item_ids,
                          sales_order_items)
end

.namesObject

A mapping from model property names to API property names.



38
39
40
41
42
43
44
45
46
47
# File 'lib/new_store_api/models/routing_insights_data.rb', line 38

def self.names
  @_hash = {} if @_hash.nil?
  @_hash['activities'] = 'activities'
  @_hash['created_at'] = 'created_at'
  @_hash['external_id'] = 'external_id'
  @_hash['sales_order_id'] = 'sales_order_id'
  @_hash['sales_order_item_ids'] = 'sales_order_item_ids'
  @_hash['sales_order_items'] = 'sales_order_items'
  @_hash
end

.nullablesObject

An array for nullable fields



55
56
57
# File 'lib/new_store_api/models/routing_insights_data.rb', line 55

def self.nullables
  []
end

.optionalsObject

An array for optional fields



50
51
52
# File 'lib/new_store_api/models/routing_insights_data.rb', line 50

def self.optionals
  []
end

Instance Method Details

#inspectObject

Provides a debugging-friendly string with detailed object information.



120
121
122
123
124
125
126
# File 'lib/new_store_api/models/routing_insights_data.rb', line 120

def inspect
  class_name = self.class.name.split('::').last
  "<#{class_name} activities: #{@activities.inspect}, created_at: #{@created_at.inspect},"\
  " external_id: #{@external_id.inspect}, sales_order_id: #{@sales_order_id.inspect},"\
  " sales_order_item_ids: #{@sales_order_item_ids.inspect}, sales_order_items:"\
  " #{@sales_order_items.inspect}>"
end

#to_custom_created_atObject



107
108
109
# File 'lib/new_store_api/models/routing_insights_data.rb', line 107

def to_custom_created_at
  DateTimeHelper.to_rfc3339(created_at)
end

#to_sObject

Provides a human-readable string representation of the object.



112
113
114
115
116
117
# File 'lib/new_store_api/models/routing_insights_data.rb', line 112

def to_s
  class_name = self.class.name.split('::').last
  "<#{class_name} activities: #{@activities}, created_at: #{@created_at}, external_id:"\
  " #{@external_id}, sales_order_id: #{@sales_order_id}, sales_order_item_ids:"\
  " #{@sales_order_item_ids}, sales_order_items: #{@sales_order_items}>"
end