Class: NewStoreApi::ProviderRateSchema
- Inherits:
-
BaseModel
- Object
- CoreLibrary::BaseModel
- BaseModel
- NewStoreApi::ProviderRateSchema
- Defined in:
- lib/new_store_api/models/provider_rate_schema.rb
Overview
ProviderRateSchema Model.
Instance Attribute Summary collapse
-
#carrier_defined_service_level ⇒ String
Carrier specific name that defines the service level.
-
#id ⇒ String
ID of the provider rate.
-
#return_provider_rate_id ⇒ String
The ID for the provider rate used for the return shipment.
-
#service_level_id ⇒ String
Service level that the provider rate corresponds to.
-
#shipping_carrier_name ⇒ String
The name of shipping provider associated with this provider rate.
-
#shipping_type ⇒ ProviderRateShippingTypeEnum
Required for backwards compatibility purposes.
-
#use_as_customer_facing_cost ⇒ TrueClass | FalseClass
Flag to indicate if the shipping provider cost is used instead of the service level cost defined in the fulfillment configuration.
Class Method Summary collapse
-
.from_hash(hash) ⇒ Object
Creates an instance of the object from a hash.
-
.names ⇒ Object
A mapping from model property names to API property names.
-
.nullables ⇒ Object
An array for nullable fields.
-
.optionals ⇒ Object
An array for optional fields.
Instance Method Summary collapse
-
#initialize(carrier_defined_service_level = nil, id = nil, return_provider_rate_id = nil, service_level_id = nil, shipping_carrier_name = nil, shipping_type = nil, use_as_customer_facing_cost = nil) ⇒ ProviderRateSchema
constructor
A new instance of ProviderRateSchema.
-
#inspect ⇒ Object
Provides a debugging-friendly string with detailed object information.
-
#to_s ⇒ Object
Provides a human-readable string representation of the object.
Methods inherited from BaseModel
#check_for_conflict, #process_additional_properties, #process_array, #process_basic_value, #process_hash, #to_hash, #to_json
Constructor Details
#initialize(carrier_defined_service_level = nil, id = nil, return_provider_rate_id = nil, service_level_id = nil, shipping_carrier_name = nil, shipping_type = nil, use_as_customer_facing_cost = nil) ⇒ ProviderRateSchema
Returns a new instance of ProviderRateSchema.
75 76 77 78 79 80 81 82 83 84 85 86 |
# File 'lib/new_store_api/models/provider_rate_schema.rb', line 75 def initialize(carrier_defined_service_level = nil, id = nil, return_provider_rate_id = nil, service_level_id = nil, shipping_carrier_name = nil, shipping_type = nil, use_as_customer_facing_cost = nil) @carrier_defined_service_level = carrier_defined_service_level @id = id @return_provider_rate_id = return_provider_rate_id @service_level_id = service_level_id @shipping_carrier_name = shipping_carrier_name @shipping_type = shipping_type @use_as_customer_facing_cost = use_as_customer_facing_cost end |
Instance Attribute Details
#carrier_defined_service_level ⇒ String
Carrier specific name that defines the service level. When defining provider rates with the same shipping provider, the value you specify here must be unique and should always match the name defined by the shipping provider API. For example, 'NextDayAirSaver' for UPS and 'GROUND_HOME_DELIVERY' for FedEx. If no value is provided, NewStore uses the unique identifier of the provider rate as the default value.
19 20 21 |
# File 'lib/new_store_api/models/provider_rate_schema.rb', line 19 def carrier_defined_service_level @carrier_defined_service_level end |
#id ⇒ String
ID of the provider rate.
23 24 25 |
# File 'lib/new_store_api/models/provider_rate_schema.rb', line 23 def id @id end |
#return_provider_rate_id ⇒ String
The ID for the provider rate used for the return shipment.
27 28 29 |
# File 'lib/new_store_api/models/provider_rate_schema.rb', line 27 def return_provider_rate_id @return_provider_rate_id end |
#service_level_id ⇒ String
Service level that the provider rate corresponds to.
31 32 33 |
# File 'lib/new_store_api/models/provider_rate_schema.rb', line 31 def service_level_id @service_level_id end |
#shipping_carrier_name ⇒ String
The name of shipping provider associated with this provider rate.
35 36 37 |
# File 'lib/new_store_api/models/provider_rate_schema.rb', line 35 def shipping_carrier_name @shipping_carrier_name end |
#shipping_type ⇒ ProviderRateShippingTypeEnum
Required for backwards compatibility purposes.
39 40 41 |
# File 'lib/new_store_api/models/provider_rate_schema.rb', line 39 def shipping_type @shipping_type end |
#use_as_customer_facing_cost ⇒ TrueClass | FalseClass
Flag to indicate if the shipping provider cost is used instead of the service level cost defined in the fulfillment configuration. If set to true, the cost quoted by the shipping provider is displayed to the customer.
46 47 48 |
# File 'lib/new_store_api/models/provider_rate_schema.rb', line 46 def use_as_customer_facing_cost @use_as_customer_facing_cost end |
Class Method Details
.from_hash(hash) ⇒ Object
Creates an instance of the object from a hash.
89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 |
# File 'lib/new_store_api/models/provider_rate_schema.rb', line 89 def self.from_hash(hash) return nil unless hash # Extract variables from the hash. carrier_defined_service_level = hash.key?('carrier_defined_service_level') ? hash['carrier_defined_service_level'] : nil id = hash.key?('id') ? hash['id'] : nil return_provider_rate_id = hash.key?('return_provider_rate_id') ? hash['return_provider_rate_id'] : nil service_level_id = hash.key?('service_level_id') ? hash['service_level_id'] : nil shipping_carrier_name = hash.key?('shipping_carrier_name') ? hash['shipping_carrier_name'] : nil shipping_type = hash.key?('shipping_type') ? hash['shipping_type'] : nil use_as_customer_facing_cost = hash.key?('use_as_customer_facing_cost') ? hash['use_as_customer_facing_cost'] : nil # Create object from extracted values. ProviderRateSchema.new(carrier_defined_service_level, id, return_provider_rate_id, service_level_id, shipping_carrier_name, shipping_type, use_as_customer_facing_cost) end |
.names ⇒ Object
A mapping from model property names to API property names.
49 50 51 52 53 54 55 56 57 58 59 60 |
# File 'lib/new_store_api/models/provider_rate_schema.rb', line 49 def self.names @_hash = {} if @_hash.nil? @_hash['carrier_defined_service_level'] = 'carrier_defined_service_level' @_hash['id'] = 'id' @_hash['return_provider_rate_id'] = 'return_provider_rate_id' @_hash['service_level_id'] = 'service_level_id' @_hash['shipping_carrier_name'] = 'shipping_carrier_name' @_hash['shipping_type'] = 'shipping_type' @_hash['use_as_customer_facing_cost'] = 'use_as_customer_facing_cost' @_hash end |
.nullables ⇒ Object
An array for nullable fields
68 69 70 71 72 73 |
# File 'lib/new_store_api/models/provider_rate_schema.rb', line 68 def self.nullables %w[ carrier_defined_service_level return_provider_rate_id ] end |
.optionals ⇒ Object
An array for optional fields
63 64 65 |
# File 'lib/new_store_api/models/provider_rate_schema.rb', line 63 def self.optionals [] end |
Instance Method Details
#inspect ⇒ Object
Provides a debugging-friendly string with detailed object information.
126 127 128 129 130 131 132 133 |
# File 'lib/new_store_api/models/provider_rate_schema.rb', line 126 def inspect class_name = self.class.name.split('::').last "<#{class_name} carrier_defined_service_level: #{@carrier_defined_service_level.inspect},"\ " id: #{@id.inspect}, return_provider_rate_id: #{@return_provider_rate_id.inspect},"\ " service_level_id: #{@service_level_id.inspect}, shipping_carrier_name:"\ " #{@shipping_carrier_name.inspect}, shipping_type: #{@shipping_type.inspect},"\ " use_as_customer_facing_cost: #{@use_as_customer_facing_cost.inspect}>" end |
#to_s ⇒ Object
Provides a human-readable string representation of the object.
117 118 119 120 121 122 123 |
# File 'lib/new_store_api/models/provider_rate_schema.rb', line 117 def to_s class_name = self.class.name.split('::').last "<#{class_name} carrier_defined_service_level: #{@carrier_defined_service_level}, id:"\ " #{@id}, return_provider_rate_id: #{@return_provider_rate_id}, service_level_id:"\ " #{@service_level_id}, shipping_carrier_name: #{@shipping_carrier_name}, shipping_type:"\ " #{@shipping_type}, use_as_customer_facing_cost: #{@use_as_customer_facing_cost}>" end |