Skip to content

Commit a168d24

Browse files
committed
Add MaxNumberOfPages to ParameterOrderList
1 parent a2a17db commit a168d24

File tree

2 files changed

+12
-3
lines changed

2 files changed

+12
-3
lines changed

Source/FikaAmazonAPI/Parameter/Order/ParameterOrderList.cs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
namespace FikaAmazonAPI.Parameter.Order
1010
{
11-
public class ParameterOrderList : ParameterBased, IParameterBasedPII
11+
public class ParameterOrderList : ParameterBased, IParameterBasedPII
1212
{
1313
public ParameterOrderList()
1414
{
@@ -53,7 +53,7 @@ public ParameterOrderList()
5353
/// A list of payment method values. Used to select orders paid using the specified payment methods. Possible values: COD (Cash on delivery); CVS (Convenience store payment); Other (Any payment method other than COD or CVS).
5454
/// </summary>
5555
public IList<Constants.PaymentMethods> PaymentMethods { get; set; }
56-
56+
5757
[JsonProperty(ItemConverterType = typeof(StringEnumConverter))]
5858
public IList<Constants.EasyShipShipmentStatuses> EasyShipShipmentStatuses { get; set; }
5959
/// <summary>
@@ -72,7 +72,7 @@ public ParameterOrderList()
7272
/// A string token returned in the response of your previous request.
7373
/// </summary>
7474
public string NextToken { get; set; }
75-
public int? MaxResultsPerPage { get; set; }=100;
75+
public int? MaxResultsPerPage { get; set; } = 100;
7676
/// <summary>
7777
/// Denotes the recommended sourceId where the order should be fulfilled from.
7878
/// </summary>
@@ -81,6 +81,7 @@ public ParameterOrderList()
8181
/// When true, this order is marked to be picked up from a store rather than delivered.
8282
/// </summary>
8383
public bool? IsISPU { get; set; }
84+
public int? MaxNumberOfPages { get; set; }
8485
/// <summary>
8586
/// The store chain store identifier. Linked to a specific store in a store chain.
8687
/// </summary>

Source/FikaAmazonAPI/Services/OrderService.cs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,19 @@ public async Task<OrderList> GetOrdersAsync(ParameterOrderList searchOrderList)
3232
var response = await ExecuteRequestAsync<GetOrdersResponse>(Utils.RateLimitType.Order_GetOrders);
3333
var nextToken = response.Payload.NextToken;
3434
orderList = response.Payload.Orders;
35+
int PageCount = 1;
3536
while (!string.IsNullOrEmpty(nextToken))
3637
{
3738
var orderPayload = GetGetOrdersByNextToken(nextToken, searchOrderList);
3839
orderList.AddRange(orderPayload.Orders);
3940
nextToken = orderPayload.NextToken;
41+
42+
if (searchOrderList.MaxNumberOfPages.HasValue)
43+
{
44+
PageCount++;
45+
if (PageCount >= searchOrderList.MaxNumberOfPages.Value)
46+
break;
47+
}
4048
}
4149
return orderList;
4250
}

0 commit comments

Comments
 (0)