Class: Workarea::Listrak::Models::OrderItem
- Inherits:
-
Object
- Object
- Workarea::Listrak::Models::OrderItem
- Defined in:
- app/services/workarea/listrak/models/order_item.rb
Instance Attribute Summary collapse
-
#order ⇒ Object
readonly
Returns the value of attribute order.
-
#order_item ⇒ Object
readonly
Returns the value of attribute order_item.
Instance Method Summary collapse
- #as_json ⇒ Object
-
#discount_description ⇒ String
Description of the discount for the line item.
-
#discount_price ⇒ Float
Total discounted cost of product.
-
#discount_type ⇒ String
Type of discount for the line item.
-
#initialize(order, order_item) ⇒ OrderItem
constructor
A new instance of OrderItem.
-
#item_discount_total ⇒ Float
Total amount of the discount for the line item.
-
#item_total ⇒ Float
Total line item cost (quantity times price).
-
#meta1 ⇒ String
Additional Optional Information.
-
#meta2 ⇒ String
Additional Optional Information.
-
#meta3 ⇒ String
Additional Optional Information.
-
#meta4 ⇒ String
Additional Optional Information.
-
#meta5 ⇒ String
Additional Optional Information.
-
#order_number ⇒ String
Order number.
-
#price ⇒ Float
Price of one unit purchased.
-
#quantity ⇒ Object
Total number of units purchased.
-
#ship_date ⇒ String
Timestamp when item shipped (ET).
-
#shipping_method ⇒ String
Shipping method (e.g. UPS Ground).
-
#sku ⇒ String
Unique stock number of product.
-
#status ⇒ String
Status indicator.
-
#tracking_number ⇒ Object
Shipment tracking number.
Constructor Details
#initialize(order, order_item) ⇒ OrderItem
Returns a new instance of OrderItem.
7 8 9 10 |
# File 'app/services/workarea/listrak/models/order_item.rb', line 7 def initialize(order, order_item) @order = order @order_item = order_item end |
Instance Attribute Details
#order ⇒ Object (readonly)
Returns the value of attribute order.
5 6 7 |
# File 'app/services/workarea/listrak/models/order_item.rb', line 5 def order @order end |
#order_item ⇒ Object (readonly)
Returns the value of attribute order_item.
5 6 7 |
# File 'app/services/workarea/listrak/models/order_item.rb', line 5 def order_item @order_item end |
Instance Method Details
#as_json ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'app/services/workarea/listrak/models/order_item.rb', line 12 def as_json { discountDescription: discount_description, discountType: discount_type, discountedPrice: discount_price, itemTotal: item_total, itemDiscountTotal: item_discount_total, meta1: , meta2: , meta3: , meta4: , meta5: , orderNumber: order_number, price: price, quantity: quantity, shipDate: ship_date, shippingMethod: shipping_method, sku: sku, status: status, trackingNumber: tracking_number } end |
#discount_description ⇒ String
Description of the discount for the line item
39 40 |
# File 'app/services/workarea/listrak/models/order_item.rb', line 39 def discount_description end |
#discount_price ⇒ Float
Total discounted cost of product
55 56 57 58 59 60 |
# File 'app/services/workarea/listrak/models/order_item.rb', line 55 def discount_price order_item.price_adjustments .select { |pa| pa.data['discount_value'].present? && pa.price == 'item' } .sum { |d| d.data['discount_value'] } .abs end |
#discount_type ⇒ String
Type of discount for the line item
“NotSet” “PriceOverride” “PriceRule” “Promotion” “SeniorCitizen” “Markdown” “Coupon” “QuantityDiscount” “Rebate” “CashDiscount” “TradeDiscount” “TradeInKind” “PromptPaymentDiscount” “GeneralDiscount” “GiftVoucher” “FlexibleDiscount” “RewardProgram” “ManufacturerReward” “CreditCardReward”
48 49 |
# File 'app/services/workarea/listrak/models/order_item.rb', line 48 def discount_type end |
#item_discount_total ⇒ Float
Total amount of the discount for the line item
74 75 76 77 78 79 |
# File 'app/services/workarea/listrak/models/order_item.rb', line 74 def item_discount_total order_item.price_adjustments .select { |pa| pa.data['discount_value'].present? && pa.price == 'item' } .sum { |d| d.data['discount_value'] } .abs end |
#item_total ⇒ Float
Total line item cost (quantity times price)
66 67 68 |
# File 'app/services/workarea/listrak/models/order_item.rb', line 66 def item_total order_item.total_value.to_f end |
#meta1 ⇒ String
Additional Optional Information
limited to 500 characters
87 88 |
# File 'app/services/workarea/listrak/models/order_item.rb', line 87 def end |
#meta2 ⇒ String
Additional Optional Information
limited to 500 characters
96 97 |
# File 'app/services/workarea/listrak/models/order_item.rb', line 96 def end |
#meta3 ⇒ String
Additional Optional Information
limited to 500 characters
105 106 |
# File 'app/services/workarea/listrak/models/order_item.rb', line 105 def end |
#meta4 ⇒ String
Additional Optional Information
limited to 500 characters
114 115 |
# File 'app/services/workarea/listrak/models/order_item.rb', line 114 def end |
#meta5 ⇒ String
Additional Optional Information
limited to 500 characters
123 124 |
# File 'app/services/workarea/listrak/models/order_item.rb', line 123 def end |
#order_number ⇒ String
Order number
limited to 50 characters
132 133 134 |
# File 'app/services/workarea/listrak/models/order_item.rb', line 132 def order_number order.id.to_s end |
#price ⇒ Float
Price of one unit purchased
140 141 142 |
# File 'app/services/workarea/listrak/models/order_item.rb', line 140 def price order_item.original_unit_price.to_f end |
#quantity ⇒ Object
Total number of units purchased
return [Integer]
148 149 150 |
# File 'app/services/workarea/listrak/models/order_item.rb', line 148 def quantity order_item.quantity end |
#ship_date ⇒ String
Timestamp when item shipped (ET)
156 157 |
# File 'app/services/workarea/listrak/models/order_item.rb', line 156 def ship_date end |
#shipping_method ⇒ String
Shipping method (e.g. UPS Ground)
limited to 32 characters
165 166 |
# File 'app/services/workarea/listrak/models/order_item.rb', line 165 def shipping_method end |
#sku ⇒ String
Unique stock number of product
limited to 100 characters
174 175 176 |
# File 'app/services/workarea/listrak/models/order_item.rb', line 174 def sku order_item.sku end |
#status ⇒ String
Status indicator
“NotSet” “Misc” “PreOrder” “BackOrder” “Pending” “Hold” “Processing” “Shipped” “Completed” “Returned” “Canceled” “Unknown” “Closed”
184 185 |
# File 'app/services/workarea/listrak/models/order_item.rb', line 184 def status end |
#tracking_number ⇒ Object
Shipment tracking number
limited to 32 characters
191 192 |
# File 'app/services/workarea/listrak/models/order_item.rb', line 191 def tracking_number end |