Method: CatalogAPI::Order.list
- Defined in:
- lib/catalogapi/order.rb
.list(options = {}, request = nil) ⇒ Array[CatalogAPI::Order]
Return all orders placed by that user.
42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 |
# File 'lib/catalogapi/order.rb', line 42 def list( = {}, request = nil) external_user_id = [:external_user_id] raise CatalogAPI::Error, 'No External User ID' if external_user_id.nil? request ||= CatalogAPI.request.new(:order_list) request = request.get(.merge(external_user_id: external_user_id)) orders = request.json.dig( :order_list_response, :order_list_result, :orders, :OrderSummary ).to_a request.data += orders.map { |item| CatalogAPI::Order.new(item.merge(external_user_id: external_user_id)) } # Pagination next_page = [:paginated] ? request.next_page : nil request = list(.merge(page: next_page), request) if next_page request end |