Ejemplo n.º 1
0
        public string ListOrders(Dictionary <string, object> args)
        {
            var endDate   = DateTime.Now;
            var startDate = new DateTime(endDate.Year - 5, endDate.Month, endDate.Day);

            var limit  = (int)args["limit"];
            var cursor = (string)args["cursor"];

            if (Settings.SelectedApiVersion == ApiVersion.V2)
            {
                Task <OrdersListType> taskV2;
                if (String.IsNullOrEmpty(cursor))
                {
                    var filterV2 = new V2.Api.Request.OrderFilter();
                    filterV2.CreatedEndDate   = endDate;
                    filterV2.CreatedStartDate = startDate;
                    filterV2.Limit            = limit;

                    taskV2 = EndpointV2.GetAllOrders(filterV2);
                }
                else
                {
                    taskV2 = EndpointV2.GetAllOrders(cursor);
                }

                return(GetResult <OrdersListType, V2.Api.Exception.ApiException>(taskV2));
            }

            Task <V3.Payload.Order.OrdersListType> taskV3;

            if (String.IsNullOrEmpty(cursor))
            {
                var filterV3 = new V3.Api.Request.OrderFilter();
                filterV3.CreatedEndDate   = endDate;
                filterV3.CreatedStartDate = startDate;
                filterV3.Limit            = limit;
                taskV3 = EndpointV3.GetAllOrders(filterV3);
                return(GetResult <V3.Payload.Order.OrdersListType, V2.Api.Exception.ApiException>(taskV3));
            }
            else
            {
                taskV3 = EndpointV3.GetAllOrders(cursor);
                return(GetResult <V3.Payload.Order.OrdersListType, V2.Api.Exception.ApiException>(taskV3));
            }
        }
        public async Task CanFilterAllOrders()
        {
            var filter = new OrderFilter();
            filter.CreatedEndDate = DateTime.Now;
            filter.CreatedStartDate = new DateTime(DateTime.Now.Year - 2, DateTime.Now.Month, 1);
            filter.ToExpectedShipDate = DateTime.Now;
            filter.FromExpectedShipDate = new DateTime(DateTime.Now.Year - 2, DateTime.Now.Month, 1);
            filter.CustomerOrderId = "test";
            filter.PurchaseOrderId = "test";
            filter.Status = OrderLineStatusValueType.Shipped;
            filter.Limit = 20;

            var firstPage = await orderApi.GetAllOrders(filter);
            Assert.IsType<OrdersListType>(firstPage);
            Assert.True(firstPage.Elements.Orders.Count > 0);
        }