Module: Amazon::MWS::Orders

Defined in:
lib/amazon/mws/request/orders.rb

Instance Method Summary collapse

Instance Method Details

#get_list_order_items(params = {}) ⇒ Object



50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
# File 'lib/amazon/mws/request/orders.rb', line 50

def get_list_order_items(params ={})
  amazon_order_id = params[:amazon_order_id]

  query_params = {
    "Action"   => "ListOrderItems"
  }
  if amazon_order_id
    query_params.merge!({"AmazonOrderId" => amazon_order_id})
  end
  response = post(order_path, query_params)
  if params[:raw_xml]
    return response
  end
  RequestOrderItemsResponse.format(response)
end

#get_list_order_items_by_next_token(params = {}) ⇒ Object



66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
# File 'lib/amazon/mws/request/orders.rb', line 66

def get_list_order_items_by_next_token(params ={})
  next_token = params[:next_token]

  query_params = {
    "Action"   => "ListOrderItemsByNextToken"
  }

  if next_token
    query_params.merge!({"NextToken" => next_token})
  end
  response = post(order_path, query_params)
  if params[:raw_xml]
    return response
  end
  RequestOrderItemsByNextTokenResponse.format(response)
end

#get_orders(params = {}) ⇒ Object



83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
# File 'lib/amazon/mws/request/orders.rb', line 83

def get_orders(params ={})

  query_params = {
    "Action"   => "GetOrder"
  }

  if params[:amazon_order_id]
    params[:amazon_order_id].to_a.each_with_index{|id,i| query_params.merge!({"AmazonOrderId.Id.#{i+1}" => id})}
  end

  response = post(order_path, query_params)
  if params[:raw_xml]
    return response
  end
  RequestGetOrderResponse.format(response)
end

#get_orders_list(params = {}) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/amazon/mws/request/orders.rb', line 5

def get_orders_list(params ={})
  query_params = { "Action"   => "ListOrders" }
  query_params.merge!({"CreatedAfter" => params[:created_after]}) if params[:created_after]
  query_params.merge!({"CreatedBefore" => params[:created_before]}) if params[:created_before]
  query_params.merge!({"LastUpdatedAfter" =>params[:last_updated_after]}) if params[:last_updated_after]
  query_params.merge!({"LastUpdatedBefore" => params[:last_updated_before]}) if params[:last_updated_before]
  query_params.merge!({"BuyerEmail" => params[:buyer_email]}) if params[:buyer_email]
  query_params.merge!({"SellerOrderId" => params[:seller_order_id]}) if params[:seller_order_id]
  query_params.merge!({"MaxResultsPerPage" => params[:results_per_page]}) if params[:results_per_page]

  if params[:fulfillment_channel]
    params[:fulfillment_channel].to_a.each_with_index{|channel,i| query_params.merge!({"FulfillmentChannel.Channel.#{i+1}" => channel})}
  end

  if params[:order_status]
    params[:order_status].to_a.each_with_index{|status,i| query_params.merge!({"OrderStatus.Status.#{i+1}" => status})}
  end

  if params[:marketplace_id]
    params[:marketplace_id].to_a.each_with_index{|id,i| query_params.merge!({"MarketplaceId.Id.#{i+1}" => id})}
  end

  response = post(order_path, query_params)
  if params[:raw_xml]
    return response
  end
  RequestOrdersResponse.format(response)
end

#get_orders_list_by_next_token(params = {}) ⇒ Object



34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# File 'lib/amazon/mws/request/orders.rb', line 34

def get_orders_list_by_next_token(params ={})
  next_token = params[:next_token]

  query_params = {
    "Action"   => "ListOrdersByNextToken"
  }
  if next_token
    query_params.merge!({"NextToken" => next_token})
  end
  response = post(order_path, query_params)
  if params[:raw_xml]
    return response
  end
  RequestOrdersByNextTokenResponse.format(response)
end