Esempio n. 1
0
        public ListOrderItemsResponse AmazonOrderItemResponse(string AmazonOrderid)
        {
            ListOrderItemsResponse            _objListOrderItem = new ListOrderItemsResponse();
            MarketplaceWebServiceOrdersConfig config            = new MarketplaceWebServiceOrdersConfig();

            config.ServiceURL = CommonValue.strServiceURL;

            MarketplaceWebServiceOrders.MarketplaceWebServiceOrders client = new MarketplaceWebServiceOrdersClient(
                AccessKeyId,
                SecretKeyId,
                ApplicationName,
                ApplicationVersion,
                config);

            ListOrderItemsRequest _req           = new ListOrderItemsRequest();
            List <string>         _marketPlaceId = new List <string>();

            _marketPlaceId.Add(MarketplaceId);



            _req.SellerId      = SellerId;
            _req.MWSAuthToken  = MWSAuthToken;
            _req.AmazonOrderId = AmazonOrderid;

            return(_objListOrderItem = client.ListOrderItems(_req));
        }
Esempio n. 2
0
 public string InvokeListOrderItems(string OrderId)
 {
     try
     {
         Console.WriteLine("Starting {0} at {1}", System.Reflection.MethodBase.GetCurrentMethod().Name, DateTime.Now);
         // Create a request.
         ListOrderItemsRequest request = new ListOrderItemsRequest();
         request.SellerId      = api.SellerId;
         request.MWSAuthToken  = api.MWSAuthToken;
         request.AmazonOrderId = OrderId;
         response = client.ListOrderItems(request);
         Console.WriteLine("Response:");
         rhmd = response.ResponseHeaderMetadata;
         // Is recommended logging the request id and timestamp of every call.
         Console.WriteLine("RequestId: " + rhmd.RequestId);
         Console.WriteLine("Timestamp: " + rhmd.Timestamp);
         string responseXml = response.ToXML();
         Console.WriteLine(responseXml);
         return(responseXml);
     }
     catch (Exception ex)
     {
         Console.WriteLine(ex.Message);
         throw ex;
     }
 }
Esempio n. 3
0
        private ListOrderItemsResponse InvokeListOrderItems(string amazonOrderId)
        {
            ListOrderItemsRequest request = new ListOrderItemsRequest();

            request.SellerId      = sellerId;
            request.MWSAuthToken  = mwsAuthToken;
            request.AmazonOrderId = amazonOrderId;
            return(this.client.ListOrderItems(request));
        }
Esempio n. 4
0
        /// <summary>
        /// Creates a ListOrderItems request object for a given order.
        /// </summary>
        /// <param name="order">The order in which the items for it are being requested.</param>
        /// <returns>A ListOrderItemsRequest object.</returns>
        private ListOrderItemsRequest CreateListOrderItemsRequest(Order order)
        {
            var listItemsRequest = new ListOrderItemsRequest()
            {
                SellerId      = _MerchantId,
                AmazonOrderId = order.AmazonOrderId
            };

            return(listItemsRequest);
        }
Esempio n. 5
0
        public ListOrderItemsResponse InvokeListOrderItems()
        {
            // Create a request.
            ListOrderItemsRequest request = new ListOrderItemsRequest();

            request.SellerId = SellerId;
            const string amazonOrderId = "example";

            request.AmazonOrderId = amazonOrderId;
            return(_client.ListOrderItems(request));
        }
Esempio n. 6
0
        public void LeerLineasPedido(Order order, int pagina, int numero)
        {
            ListOrderItemsRequest request = new ListOrderItemsRequest();

            request.SellerId      = MERCHANT_ID;
            request.AmazonOrderId = order.AmazonOrderId;
            MarketplaceWebServiceOrdersConfig config = new MarketplaceWebServiceOrdersConfig
            {
                ServiceURL = "https://mws.amazonservices.es/Orders/2013-09-01"
            };
            MarketplaceWebServiceOrdersClient client = new MarketplaceWebServiceOrdersClient(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, "AppName", "0.0", config);
            bool retryRequest = true;

            while (retryRequest == true)
            {
                retryRequest = false;
                try
                {
                    //                   Debug.WriteLine(string.Format("{0} Leyendo Linea {1} de la pagina {2} ", DateTime.Now.ToString("f"),numero,pagina));
                    eventAntesLinea?.Invoke(new EventosAmazon {
                        pagina = pagina, linea = numero, retardo = 0
                    });
                    var a = client.ListOrderItems(request);
                    System.Threading.Thread.Sleep(2000);
                    //                   Debug.WriteLine(string.Format("{0} Linea Leida {1} de la pagina {2} ", DateTime.Now.ToString("f"), numero, pagina));
                    GrabarOrderItems(a.ListOrderItemsResult.OrderItems, order);
                    //                   eventDespuesLinea?.Invoke(new EventosAmazon { pagina = pagina, linea = numero, retardo = 0 });
                }
                catch (MarketplaceWebServiceOrdersException ex)
                {
                    if (ex.ErrorCode.Contains("RequestThrottled"))
                    {
                        int retardo = 60000;
                        retryRequest = true;
                        //                      Debug.WriteLine(string.Format("{0} Inicio Troleado {1} de la pagina {2} ", DateTime.Now.ToString("f"), numero, pagina));
                        eventAntesRetardoTroleoLinea?.Invoke(new EventosAmazon {
                            pagina = pagina, linea = numero, retardo = retardo
                        });
                        System.Threading.Thread.Sleep(retardo);
                        eventDespuesRetardoTroleoLinea?.Invoke(new EventosAmazon {
                            pagina = pagina, linea = numero, retardo = retardo
                        });
                        //                       Debug.WriteLine(string.Format("{0} Fin Troleado {1} de la pagina {2} ", DateTime.Now.ToString("f"), numero, pagina));
                    }
                    else
                    {
                        eventError?.Invoke(new EventosAmazon {
                            pagina = pagina, linea = numero, retardo = 0, error = ex.Detail
                        });
                    }
                }
            }
        }
        public static ListOrderItemsResponse InvokeListOrderItems(ServiceCliamDefinition serviceCliamDefinition, string orderId)
        {
            // Create a request.
            ListOrderItemsRequest request = new ListOrderItemsRequest();

            request.SellerId = serviceCliamDefinition.SellerId;

            request.MWSAuthToken = serviceCliamDefinition.AuthToken;

            request.AmazonOrderId = orderId;
            return(GetClient(serviceCliamDefinition).ListOrderItems(request));
        }
Esempio n. 8
0
        /// <summary>
        /// Implement the Process step for PowerShell Cmdlets
        /// </summary>
        protected override void ProcessRecord()
        {
            base.ProcessRecord();

            /*
             * // If no dates are specificied, start a day ago ...
             * if (CreatedBefore == DateTime.MaxValue && CreatedAfter == DateTime.MinValue)
             * {
             * CreatedAfter = DateTime.UtcNow.AddDays(-1);
             * }
             */

            // Amazon's policy doesn't allow calling with a CreatedBefore after two minutes before the request time
            if (CreatedBefore == DateTime.MaxValue)
            {
                CreatedBefore = DateTime.Now.AddMinutes(-2);
            }

            var orderRequest = new ListOrdersRequest
            {
                MarketplaceId = new MarketplaceIdList(),
                OrderStatus   = new OrderStatusList(),
                BuyerEmail    = this.BuyerEmail,
                SellerId      = this.MerchantId,
                SellerOrderId = this.SellerOrderId,
                CreatedAfter  = this.CreatedAfter,
                CreatedBefore = this.CreatedBefore
            };

            orderRequest.OrderStatus.Status.AddRange(OrderStatus);
            orderRequest.MarketplaceId.Id.AddRange(Marketplace);

            var response = marketplaceWebServiceOrdersClient.ListOrders(orderRequest);

            foreach (var order in response.ListOrdersResult.Orders.Order)
            {
                var output = new PSObject(order);
                if (IncludeItems.ToBool())
                {
                    var itemRequest = new ListOrderItemsRequest
                    {
                        AmazonOrderId = order.AmazonOrderId,
                        SellerId      = this.MerchantId,
                    };

                    var items = marketplaceWebServiceOrdersClient.ListOrderItems(itemRequest);
                    output.Properties.Add(new PSNoteProperty("Items", items.ListOrderItemsResult.OrderItems.OrderItem));
                }

                WriteObject(output);
            }
        }
Esempio n. 9
0
        public ListOrderItemsResponse InvokeListOrderItems()
        {
            // Create a request.
            var request  = new ListOrderItemsRequest();
            var sellerId = "example";

            request.SellerId = sellerId;
            var mwsAuthToken = "example";

            request.MWSAuthToken = mwsAuthToken;
            var amazonOrderId = "example";

            request.AmazonOrderId = amazonOrderId;
            return(_client.ListOrderItems(request));
        }
Esempio n. 10
0
        public ListOrderItemsResponse InvokeListOrderItems()
        {
            // Create a request.
            ListOrderItemsRequest request = new ListOrderItemsRequest();
            string sellerId = "example";

            request.SellerId = sellerId;
            string mwsAuthToken = "example";

            request.MWSAuthToken = mwsAuthToken;
            string amazonOrderId = "example";

            request.AmazonOrderId = amazonOrderId;
            return(this.client.ListOrderItems(request));
        }
Esempio n. 11
0
        public ListOrderItemsResponse InvokeListOrderItems(string orderId)
        {
            // Create a request.
            ListOrderItemsRequest request = new ListOrderItemsRequest();
            string sellerId = ConfigurationHelper.SellerId;

            request.SellerId = sellerId;
            string mwsAuthToken = ConfigurationHelper.MWSToken;

            request.MWSAuthToken = mwsAuthToken;
            string amazonOrderId = orderId;

            request.AmazonOrderId = amazonOrderId;
            return(this.client.ListOrderItems(request));
        }
Esempio n. 12
0
        protected void Insert_Items(MarketplaceWebServiceOrders.MarketplaceWebServiceOrders client)
        {
            ListOrderItemsRequest request = new ListOrderItemsRequest();

            request.SellerId = SellerId;

            Base_BL bbl = new Base_BL();

            aml = new Amazon__BL();
            Amazon_Juchuu_Items = D_AmazonJuchuuItems();
            var dtAmazonOrderId = aml.Select_AllOrderByLastRireki();
            int j = 0; int i = 0;

            foreach (DataRow dr in dtAmazonOrderId.Rows)
            {
                j++;
                request.AmazonOrderId = dr["AmazonOrderId"].ToString();

                ListOrderItemsResponse response = client.ListOrderItems(request);
                if (response.IsSetListOrderItemsResult())
                {
                    ListOrderItemsResult listOrderItemsResult = response.ListOrderItemsResult;
                    if (listOrderItemsResult.IsSetOrderItems())
                    {
                        List <OrderItem> orderItems = listOrderItemsResult.OrderItems;

                        foreach (OrderItem orderItem in orderItems)
                        {
                            i++;
                            Amazon_Juchuu_Items_Add(request.AmazonOrderId, orderItem, j, i);
                            //  strbuff += "商品名:" + orderItem.Title + System.Environment.NewLine;
                        }
                    }
                }
            }


            Amazon__Entity ameDetails = new Amazon__Entity();

            ameDetails.StoreCD       = StoreCD;
            ameDetails.APIKey        = APIKey;
            ameDetails.XmlOrderItems = bbl.DataTableToXml(Amazon_Juchuu_Items);
            if (aml.Amazon_InsertOrderItemDetails(ameDetails))
            {
                Console.Write("All Items are Imported Successffully!!!");
                Console.ReadLine();
            }
        }
Esempio n. 13
0
        /**
         * Convert ListOrderItemsRequest to name value pairs
         */
        private IDictionary <String, String> ConvertListOrderItems(ListOrderItemsRequest request)
        {
            IDictionary <String, String> parameters = new Dictionary <String, String>();

            parameters.Add("Action", "ListOrderItems");
            if (request.IsSetSellerId())
            {
                parameters.Add("SellerId", request.SellerId);
            }
            if (request.IsSetAmazonOrderId())
            {
                parameters.Add("AmazonOrderId", request.AmazonOrderId);
            }

            return(parameters);
        }
Esempio n. 14
0
        private AmazonOrderItemDetailsList GetListItemsOrdered(AmazonOrdersItemsRequestInfo requestInfo, ActionAccessType access, RequestsCounterData requestCounter)
        {
            var orderId  = requestInfo.OrderId;
            var sellerId = requestInfo.MerchantId;

            try {
                var req = new ListOrderItemsRequest {
                    AmazonOrderId = orderId,
                    SellerId      = sellerId,
                    MWSAuthToken  = requestInfo.MWSAuthToken
                };

                var response = AmazonWaitBeforeRetryHelper.DoServiceAction(
                    requestInfo.ErrorRetryingInfo,
                    ListOrderItemsTrapForThrottling,
                    "ListOrderItems",
                    access,
                    requestCounter,
                    () => _Service.ListOrderItems(req));

                var list = new AmazonOrderItemDetailsList(DateTime.UtcNow)
                {
                    RequestsCounter = requestCounter
                };

                if (response == null)
                {
                    return(list);
                }
                var result = response.ListOrderItemsResult;

                if (result.IsSetOrderItems())
                {
                    ParseOrderItems(list, result.OrderItems);
                }

                if (result.IsSetNextToken())
                {
                    GetOrderItemsByNextToken(list, requestInfo, result.NextToken, access, requestCounter);
                }

                return(list);
            } catch (MarketplaceWebServiceOrdersException) {
                return(null);
            }
        }
Esempio n. 15
0
        /// <summary>
        /// Fetches the OrderItems for the specified orderId.
        /// </summary>
        public void FetchOrderItems(string orderId, ProcessOrderItemHandler handler)
        {
            if (handler == null)
            {
                throw new ArgumentNullException("handler");
            }

            ListOrderItemsRequest request = new ListOrderItemsRequest();

            request.SellerId      = mwsSellerId;
            request.AmazonOrderId = orderId;

            ListOrderItemsResponse response = null;

            OrderFetcher.InvokeRetriable(LIST_ORDER_ITEMS_DEFAULT_THROTTLE_LIMIT, delegate()
            {
                response = mwsService.ListOrderItems(request);
                foreach (OrderItem orderItem in response.ListOrderItemsResult.OrderItems.OrderItem)
                {
                    handler(orderItem);
                }
            });

            String nextTokenString = response.ListOrderItemsResult.NextToken;

            while (!string.IsNullOrEmpty(nextTokenString))
            {
                // If NextToken is set, continue looping through the orders.
                ListOrderItemsByNextTokenRequest nextRequest = new ListOrderItemsByNextTokenRequest();
                nextRequest.NextToken = nextTokenString;
                nextRequest.SellerId  = mwsSellerId;

                ListOrderItemsByNextTokenResponse nextResponse = null;
                OrderFetcher.InvokeRetriable(LIST_ORDER_ITEMS_DEFAULT_THROTTLE_LIMIT, delegate()
                {
                    nextResponse = mwsService.ListOrderItemsByNextToken(nextRequest);
                    foreach (OrderItem orderItem in nextResponse.ListOrderItemsByNextTokenResult.OrderItems.OrderItem)
                    {
                        handler(orderItem);
                    }
                });

                nextTokenString = nextResponse.ListOrderItemsByNextTokenResult.NextToken;
            }
        }
Esempio n. 16
0
        public static DataSet ListAmazonOrderLine(string amazonOrderid, string merchantId, string marketplaceId, string accessKeyId, string secretAccessKey)
        {
            DataSet               amazonOrderLineDs  = new DataSet();
            const string          applicationName    = "<Your Application Name>";
            const string          applicationVersion = "<Your Application Version>";
            ListOrderItemsRequest request            = new ListOrderItemsRequest();
            string sellerId = merchantId;

            request.SellerId      = sellerId;
            request.AmazonOrderId = amazonOrderid;
            MarketplaceWebServiceOrdersConfig config = new MarketplaceWebServiceOrdersConfig();

            config.ServiceURL = "https://mws.amazonservices.com";
            MarketplaceWebServiceOrdersClient client = new MarketplaceWebServiceOrdersClient(accessKeyId, secretAccessKey, applicationName, applicationVersion, config);

            try
            {
                IMWSResponse response = null;
                response = client.ListOrderItems(request);
                ResponseHeaderMetadata rhmd = response.ResponseHeaderMetadata;
                Console.WriteLine("RequestId: " + rhmd.RequestId);
                Console.WriteLine("Timestamp: " + rhmd.Timestamp);
                string responseXml = response.ToXML();
                System.IO.File.WriteAllText(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location) + "\\AmazonOrderLineList.xml", responseXml);
                amazonOrderLineDs.ReadXml(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location) + "\\AmazonOrderLineList.xml", XmlReadMode.InferSchema);
                return(amazonOrderLineDs);
            }
            catch (MarketplaceWebServiceOrdersException ex)
            {
                // Exception properties are important for diagnostics.
                ResponseHeaderMetadata rhmd = ex.ResponseHeaderMetadata;
                Console.WriteLine("Service Exception:");
                if (rhmd != null)
                {
                    Console.WriteLine("RequestId: " + rhmd.RequestId);
                    Console.WriteLine("Timestamp: " + rhmd.Timestamp);
                }
                Console.WriteLine("Message: " + ex.Message);
                Console.WriteLine("StatusCode: " + ex.StatusCode);
                Console.WriteLine("ErrorCode: " + ex.ErrorCode);
                Console.WriteLine("ErrorType: " + ex.ErrorType);
                throw ex;
            }
        }
Esempio n. 17
0
        private ListOrderItemsResponse GetSalesOrderLineItems(PXGraph graph, ServiceCallParameters objParams)
        {
            ListOrderItemsResponse lineItemsRes = new ListOrderItemsResponse();

            try
            {
                ListOrderItemsRequest request = new ListOrderItemsRequest();
                request.SellerId      = objParams.objSOAmazonSetup.SellerId;
                request.MWSAuthToken  = objParams.objSOAmazonSetup.AuthToken;
                request.AmazonOrderId = objParams.amwOrderID;
                lineItemsRes          = this.clientOrder.ListOrderItems(request);
            }
            catch (Exception ex)
            {
                if (ex is MarketplaceWebServiceOrdersException)
                {
                    MarketplaceWebServiceOrdersException exception = ex as MarketplaceWebServiceOrdersException;
                    if (!string.IsNullOrEmpty(exception.ErrorCode) && exception.ErrorCode.ToLower().Trim() == SOMessages.requestThrottled)
                    {
                        Thread.Sleep(SOHelper.DelayProcess(graph, SOConstants.apiGetListOrderItems));
                        lineItemsRes = GetSalesOrderLineItems(graph, objParams);
                    }
                    else
                    {
                        throw new PXException(!string.IsNullOrEmpty(ex.Message) ? ex.Message :
                                              ex.InnerException != null && ex.InnerException.InnerException != null ? ex.InnerException.InnerException.Message
                            : SOConstants.exceptionIsEmpty);
                    }
                }
                else
                {
                    throw new PXException(!string.IsNullOrEmpty(ex.Message) ? ex.Message :
                                          ex.InnerException != null && ex.InnerException.InnerException != null ? ex.InnerException.InnerException.Message
                            : SOConstants.exceptionIsEmpty);
                }
            }
            return(lineItemsRes);

            #endregion
        }
Esempio n. 18
0
 public Task <ListOrderItemsResponse> ListOrderItems(ListOrderItemsRequest request)
 {
     return(newResponse <ListOrderItemsResponse>());
 }
Esempio n. 19
0
        public static void GetOrderList()
        {
            dt = new DataTable();
            dt.Columns.Add("OrderId");
            MarketplaceWebServiceOrdersConfig config = new MarketplaceWebServiceOrdersConfig();
            string SellerId           = "A3U1G59YKB47LS";
            string MarketplaceId      = "A1VC38T7YXB528";
            string AccessKeyId        = "AKIAJFRPIMOTC4CJGHLQ";
            string SecretKeyId        = "4KI9yuXr7Ni64iFpdjnW1dw3LNdNXIn4rgOnNrZQ";
            string ApplicationVersion = "1.0";
            string ApplicationName    = "ラスタスポーツ";
            string MWSAuthToken       = "amzn.mws.fea748c0-bfe0-4039-0cc0-88b6ce5c0058";
            string serviceURL         = "https://mws.amazonservices.jp";
            string strbuff            = string.Empty;

            config.ServiceURL = serviceURL;
            MarketplaceWebServiceOrders.MarketplaceWebServiceOrders client = new MarketplaceWebServiceOrdersClient(
                AccessKeyId,
                SecretKeyId,
                ApplicationName,
                ApplicationVersion,
                config);


            //ListOrder
            try
            {
                ListOrdersRequest request = new ListOrdersRequest();
                request.SellerId     = SellerId;
                request.CreatedAfter = DateTime.Now.AddDays(-1);
                List <string> lstMarketplace = new List <string>();
                lstMarketplace.Add(MarketplaceId);
                request.MarketplaceId = lstMarketplace;
                request.MWSAuthToken  = MWSAuthToken;
                ListOrdersResponse response = client.ListOrders(request);
                if (response.IsSetListOrdersResult())
                {
                    ListOrdersResult listOrdersResult = response.ListOrdersResult;
                    if (listOrdersResult.IsSetOrders())
                    {
                        List <Order> orders = listOrdersResult.Orders;
                        foreach (Order order in orders)
                        {
                            dt.Rows.Add(order.AmazonOrderId);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                var msge = ex.Message;
            }
            //// ListOrderByNextToken
            try
            {
                ListOrdersRequest request = new ListOrdersRequest();
                request.SellerId     = SellerId;
                request.CreatedAfter = DateTime.Now.AddDays(-1);
                List <string> lstMarketplace = new List <string>();
                lstMarketplace.Add(MarketplaceId);
                request.MarketplaceId     = lstMarketplace;
                request.MaxResultsPerPage = 14;
                request.MWSAuthToken      = MWSAuthToken;
                ListOrdersResponse response = client.ListOrders(request);
                if (response.IsSetListOrdersResult())
                {
                    ListOrdersResult listOrdersResult = response.ListOrdersResult;
                    if (listOrdersResult.IsSetOrders())
                    {
                        if (listOrdersResult.NextToken != null)
                        {
                            ListOrdersByNextTokenRequest request1 = new ListOrdersByNextTokenRequest();

                            request1.SellerId     = SellerId;
                            request1.MWSAuthToken = MWSAuthToken;
                            request1.NextToken    = listOrdersResult.NextToken;
                            ListOrdersByNextTokenResponse response1 = client.ListOrdersByNextToken(request1);
                            if (response1.IsSetListOrdersByNextTokenResult())
                            {
                                ListOrdersByNextTokenResult listOrdersByNextResult = response1.ListOrdersByNextTokenResult;
                                if (listOrdersByNextResult.IsSetOrders())
                                {
                                    List <Order> orders = listOrdersByNextResult.Orders;
                                    foreach (Order order in orders)
                                    {
                                        dt.Rows.Add(order.AmazonOrderId);
                                        //   strbuff += order.AmazonOrderId + System.Environment.NewLine;
                                    }
                                }
                            }
                        }
                    }
                    var val = strbuff;
                }
                Environment.Exit(0);
            }
            catch (Exception ex)
            {
            }

            // //List Order Item
            //try
            //{
            //    foreach (DataRow dr in dt.Rows)
            //    {
            //        ListOrderItemsRequest request = new ListOrderItemsRequest();
            //        request.SellerId = SellerId;
            //        request.AmazonOrderId = dr["OrderId"].ToString();
            //        request.MWSAuthToken = MWSAuthToken;
            //        ListOrderItemsResponse response = client.ListOrderItems(request);
            //        if (response.IsSetListOrderItemsResult())
            //        {
            //            ListOrderItemsResult listOrderItemsResult = response.ListOrderItemsResult;
            //            if (listOrderItemsResult.IsSetOrderItems())
            //            {
            //                List<OrderItem> orderItems = listOrderItemsResult.OrderItems;
            //                foreach (OrderItem orderItem in orderItems)
            //                {
            //                    strbuff += "商品名:" + orderItem.Title + System.Environment.NewLine;
            //                }
            //            }
            //        }
            //    }
            //}
            //catch (Exception ex)
            //{

            //}
            //// ListOrderItem_byNextToken
            try
            {
                foreach (DataRow dr in dt.Rows)
                {
                    ListOrderItemsRequest request = new ListOrderItemsRequest();
                    request.SellerId      = SellerId;
                    request.AmazonOrderId = dr["OrderId"].ToString();
                    request.MWSAuthToken  = MWSAuthToken;

                    ListOrderItemsResponse response = client.ListOrderItems(request);
                    if (response.IsSetListOrderItemsResult())
                    {
                        ListOrderItemsResult listOrderItemsResult = response.ListOrderItemsResult;
                        if (listOrderItemsResult.NextToken != null)
                        {
                            ListOrderItemsByNextTokenRequest request1 = new ListOrderItemsByNextTokenRequest();
                            request1.SellerId     = SellerId;
                            request1.MWSAuthToken = MWSAuthToken;
                            request1.NextToken    = listOrderItemsResult.NextToken;

                            ListOrderItemsByNextTokenResponse response1 = client.ListOrderItemsByNextToken(request1);
                            if (response1.IsSetListOrderItemsByNextTokenResult())
                            {
                                ListOrderItemsByNextTokenResult listOrderByNextItemsResult = response1.ListOrderItemsByNextTokenResult;
                                if (listOrderByNextItemsResult.IsSetOrderItems())
                                {
                                    List <OrderItem> orderItems = listOrderItemsResult.OrderItems;
                                    foreach (OrderItem orderItem in orderItems)
                                    {
                                        if (orderItem.IsSetOrderItemId())
                                        {
                                            strbuff += "商品名:" + orderItem.Title + System.Environment.NewLine;
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
            }

            //// GetOrder
            //try
            //{
            //    foreach (DataRow dr in dt.Rows)
            //    {
            //        GetOrderRequest request = new GetOrderRequest();
            //        request.SellerId = SellerId;
            //        request.MWSAuthToken = MWSAuthToken;
            //        List<string> amazonorderId = new List<string>();
            //        amazonorderId.Add(dr["OrderId"].ToString());
            //        request.AmazonOrderId = amazonorderId;

            //        GetOrderResponse response = client.GetOrder(request);
            //        if (response.IsSetGetOrderResult())
            //        {
            //            List<Order> orders = response.GetOrderResult.Orders;
            //            foreach (Order order in orders)
            //            {
            //                strbuff += "購入者:" + order.AmazonOrderId + ","+ order.OrderStatus + System.Environment.NewLine;
            //            }
            //        }
            //    }
            //}

            //catch (Exception ex)
            //{

            //}

            //// GetService Status
            //try
            //{
            //    MarketplaceWebServiceOrdersConfig config1 = new MarketplaceWebServiceOrdersConfig();
            //    config1.ServiceURL = serviceURL;
            //    MarketplaceWebServiceOrders.MarketplaceWebServiceOrders client1 = new MarketplaceWebServiceOrdersClient(
            //                                                                            AccessKeyId,
            //                                                                            SecretKeyId,
            //                                                                            ApplicationName,
            //                                                                            ApplicationVersion,
            //                                                                            config1);
            //    MarketplaceWebServiceOrders.Model.GetServiceStatusRequest  request = new MarketplaceWebServiceOrders.Model.GetServiceStatusRequest();
            //    request.SellerId = SellerId;
            //    request.MWSAuthToken = MWSAuthToken;
            //    // MarketplaceWebServiceOrders.Model.GetServiceStatusRequest
            //    var response = client1.GetServiceStatus(request);
            //    if (response.IsSetGetServiceStatusResult())
            //    {
            //        strbuff = "処理状況:" + response.GetServiceStatusResult.Status;
            //    }
            //}
            //catch (Exception ex)
            //{

            //}
        }
Esempio n. 20
0
 /// <summary>
 /// List Order Items
 /// </summary>
 /// <param name="request">List Order Items  request</param>
 /// <returns>List Order Items  Response from the service</returns>
 /// <remarks>
 /// This operation can be used to list the items of the order indicated by the
 /// given order id (only a single Amazon order id is allowed).
 ///
 /// </remarks>
 public ListOrderItemsResponse ListOrderItems(ListOrderItemsRequest request)
 {
     return(Invoke <ListOrderItemsResponse>(ConvertListOrderItems(request)));
 }
Esempio n. 21
0
 public ListOrderItemsResponse ListOrderItems(ListOrderItemsRequest request)
 {
     return(NewResponse <ListOrderItemsResponse>());
 }
Esempio n. 22
0
        /// <summary>
        /// Converts the response object into MarketplaceOrder object.
        /// Also makes the call to get the items for the order.
        /// </summary>
        /// <param name="order">The given Amazon order objecdt.</param>
        /// <returns>A MarketplaceOrder object</returns>
        private MarketplaceOrder convertOrderResponseToMarketplaceOrder(MarketplaceWebServiceOrders.Model.Order order)
        {
            var orderStatus = (Inventory.Shared.Models.OrderStatus)Enum.Parse(typeof(Inventory.Shared.Models.OrderStatus), order.OrderStatus, true);

            var marketplaceOrder = new MarketplaceOrder()
            {
                BuyerEmail              = order.BuyerEmail,
                BuyerName               = order.BuyerName,
                OrderTotal              = order.IsSetOrderTotal() ? decimal.Parse(order.OrderTotal.Amount) : 0,
                OrderId                 = order.AmazonOrderId,
                Marketplace             = ChannelName,
                ShipServiceLevel        = order.ShipServiceLevel,
                ShipmentServiceCategory = order.ShipmentServiceLevelCategory,
                NumOfItemsShipped       = order.NumberOfItemsShipped,
                NumOfItemsUnshipped     = order.NumberOfItemsUnshipped,
                PurchaseDate            = order.PurchaseDate,
                LastUpdateDate          = order.LastUpdateDate,
                PaymentMethod           = order.PaymentMethod,
                OrderStatus             = orderStatus,
                OrderType               = order.OrderType,
                EarliestShipDate        = order.EarliestShipDate,
                LatestShipDate          = order.LatestShipDate,
                EarliestDeliveryDate    = order.EarliestDeliveryDate,
                LatestDeliveryDate      = order.LatestDeliveryDate,
                MarketplaceId           = order.MarketplaceId,
                PurchaseOrderNumber     = order.PurchaseOrderNumber,
                SalesChannel            = order.SalesChannel,
                SellerOrderId           = order.SellerOrderId,
            };

            if (order.IsSetShippingAddress())
            {
                marketplaceOrder.ShippingAddressLine1  = order.ShippingAddress.AddressLine1;
                marketplaceOrder.ShippingAddressLine2  = order.ShippingAddress.AddressLine2;
                marketplaceOrder.ShippingAddressLine3  = order.ShippingAddress.AddressLine3;
                marketplaceOrder.ShippingCity          = order.ShippingAddress.City;
                marketplaceOrder.ShippingStateOrRegion = order.ShippingAddress.StateOrRegion;
                marketplaceOrder.ShippingPostalCode    = order.ShippingAddress.PostalCode;
                marketplaceOrder.ShippingAddressName   = order.ShippingAddress.Name;
                marketplaceOrder.ShippingAddressPhone  = order.ShippingAddress.Phone;
            }

            // do the request for the list of items for this order
            var listOrderRequest = new ListOrderItemsRequest {
                SellerId = _credential.MerchantId, AmazonOrderId = order.AmazonOrderId
            };
            var listItemsResponse = _ordersClient.ListOrderItems(listOrderRequest);
            var nextToken         = listItemsResponse.ListOrderItemsResult.NextToken;
            var items             = new List <MarketplaceOrderItem>();
            ListOrderItemsByNextTokenResponse nextTokenResponse = null;

            // convert the item responses to marketplace order item objects.
            var orderItems = listItemsResponse.ListOrderItemsResult.OrderItems;

            do
            {
                if (nextTokenResponse != null)
                {
                    orderItems = nextTokenResponse.ListOrderItemsByNextTokenResult.OrderItems;
                    nextToken  = nextTokenResponse.ListOrderItemsByNextTokenResult.NextToken;
                }

                // iterate and convert the marketplace order item into local object
                for (var i = 0; i < orderItems.Count; i++)
                {
                    var orderItem = orderItems[i];
                    var item      = new MarketplaceOrderItem
                    {
                        OrderId           = order.AmazonOrderId,
                        MarketplaceItemId = orderItem.ASIN,
                        OrderItemId       = orderItem.OrderItemId,
                        SKU           = orderItem.SellerSKU,
                        Title         = orderItem.Title,
                        QtyOrdered    = Convert.ToInt32(orderItem.QuantityOrdered),
                        QtyShipped    = Convert.ToInt32(orderItem.QuantityShipped),
                        ConditionNote = orderItem.ConditionNote
                    };

                    item.Price             = orderItem.IsSetItemPrice() ? decimal.Parse(orderItem.ItemPrice.Amount) : 0;
                    item.ShippingPrice     = orderItem.IsSetShippingPrice() ? decimal.Parse(orderItem.ShippingPrice.Amount) : 0;
                    item.GiftWrapPrice     = orderItem.IsSetGiftWrapPrice() ? decimal.Parse(orderItem.GiftWrapPrice.Amount) : 0;
                    item.Tax               = orderItem.IsSetItemTax() ? decimal.Parse(orderItem.ItemTax.Amount) : 0;
                    item.ShippingTax       = orderItem.IsSetShippingTax() ? decimal.Parse(orderItem.ShippingTax.Amount) : 0;
                    item.GiftWrapTax       = orderItem.IsSetGiftWrapTax() ? decimal.Parse(orderItem.GiftWrapTax.Amount) : 0;
                    item.ShippingDiscount  = orderItem.IsSetShippingDiscount() ? decimal.Parse(orderItem.ShippingDiscount.Amount) : 0;
                    item.PromotionDiscount = orderItem.IsSetPromotionDiscount() ? decimal.Parse(orderItem.PromotionDiscount.Amount) : 0;

                    items.Add(item);
                }

                // get the page order items if the next token not null
                if (!string.IsNullOrWhiteSpace(nextToken))
                {
                    // pause for 2 seconds, this is the restore reate for the ListOrderItemsByNextToken for every 30 quota
                    Thread.Sleep(2000);

                    var nextRequest = new ListOrderItemsByNextTokenRequest {
                        SellerId = _credential.MerchantId, NextToken = nextToken
                    };
                    nextTokenResponse = _ordersClient.ListOrderItemsByNextToken(nextRequest);
                }
            } while (!string.IsNullOrWhiteSpace(nextToken));

            // set the order items to the local object
            marketplaceOrder.OrderItems = items;

            return(marketplaceOrder);
        }
Esempio n. 23
0
        private void ProcessOrders(ERPContext context, string accountName, List <Order> orders, List <EbayOrderdetail> orderDetails)
        {
            foreach (Order order in orders)
            {
                try
                {
                    if (order.OrderStatus == "Unshipped" || order.OrderStatus == "PartiallyShipped")
                    {
                        var q = from ebayOrder in context.EbayOrder
                                where ebayOrder.EbayOrdersn == order.AmazonOrderId
                                select ebayOrder;
                        if (q.Count() == 0)
                        {
                            EbayOrder ebayOrder = new EbayOrder();
                            ebayOrder.EbayOrdersn     = order.AmazonOrderId;
                            ebayOrder.Recordnumber    = order.AmazonOrderId;
                            ebayOrder.EbayCreatedtime = Convert.ToInt32(order.PurchaseDate.ToUniversalTime().Subtract(new DateTime(1970, 1, 1)).TotalSeconds);
                            ebayOrder.EbayPaidtime    = ebayOrder.EbayCreatedtime.ToString();
                            ebayOrder.EbayUserid      = order.BuyerName;
                            ebayOrder.EbayUsername    = order.ShippingAddress.Name;
                            ebayOrder.EbayUsermail    = order.BuyerEmail;
                            ebayOrder.EbayPhone       = order.ShippingAddress.Phone;
                            ebayOrder.EbayStreet      = order.ShippingAddress.AddressLine1;
                            ebayOrder.EbayStreet1     = order.ShippingAddress.AddressLine2;
                            ebayOrder.EbayCity        = order.ShippingAddress.City;
                            ebayOrder.EbayState       = order.ShippingAddress.StateOrRegion;
                            ebayOrder.EbayCouny       = order.ShippingAddress.CountryCode;
                            if (ebayOrder.EbayCouny == "US")
                            {
                                ebayOrder.EbayCountryname = "United States";
                            }
                            ebayOrder.EbayPostcode     = order.ShippingAddress.PostalCode;
                            ebayOrder.EbayCurrency     = order.OrderTotal.CurrencyCode;
                            ebayOrder.EbayTotal        = Convert.ToDouble(order.OrderTotal.Amount);
                            ebayOrder.EbayStatus       = 1;
                            ebayOrder.EbayUser         = "******";
                            ebayOrder.EbayAccount      = accountName;
                            ebayOrder.Status           = "0";
                            ebayOrder.EbayCarrier2     = "";
                            ebayOrder.EbayTracknumber2 = "";
                            ebayOrder.IsYichang        = "0";
                            ebayOrder.Ishide           = 0;
                            ebayOrder.EbayCombine      = "0";
                            m_logger.Info("Proccess Amazon order " + ebayOrder.EbayUsername);

                            ListOrderItemsRequest listOrderItemsRequest = new ListOrderItemsRequest();
                            listOrderItemsRequest.SellerId      = sellerIdDictionary[accountName];
                            listOrderItemsRequest.MWSAuthToken  = mwsAuthTokenDictionary[accountName];
                            listOrderItemsRequest.AmazonOrderId = order.AmazonOrderId;

                            int retryCount = 0;
                            ListOrderItemsResponse itemResponse = null;
                            while (retryCount <= m_maxRetry && itemResponse == null)
                            {
                                if (retryCount > 0)
                                {
                                    Thread.Sleep(TimeSpan.FromSeconds(retryCount * 2));
                                }
                                try
                                {
                                    itemResponse = client.ListOrderItems(listOrderItemsRequest);
                                }
                                catch (Exception e)
                                {
                                    if (retryCount >= m_maxRetry)
                                    {
                                        throw e;
                                    }
                                    retryCount++;
                                }
                            }
                            int i = 0;
                            foreach (OrderItem orderItem in itemResponse.ListOrderItemsResult.OrderItems)
                            {
                                EbayOrderdetail orderDetail = new EbayOrderdetail();
                                orderDetail.EbayOrdersn = order.AmazonOrderId;
                                if (i > 0)
                                {
                                    orderDetail.Recordnumber = order.AmazonOrderId + i.ToString();
                                }
                                else
                                {
                                    orderDetail.Recordnumber = order.AmazonOrderId;
                                }
                                orderDetail.EbayItemid    = orderItem.OrderItemId;
                                orderDetail.EbayItemtitle = orderItem.Title;
                                orderDetail.Sku           = orderItem.SellerSKU;
                                if (orderItem.ItemPrice != null)
                                {
                                    orderDetail.EbayItemprice = (Convert.ToDouble(orderItem.ItemPrice.Amount) / Convert.ToInt32(orderItem.QuantityOrdered)).ToString();
                                }
                                else
                                {
                                    orderDetail.EbayItemprice = "0.0";
                                }
                                orderDetail.EbayAmount  = orderItem.QuantityOrdered.ToString();
                                orderDetail.EbayUser    = "******";
                                orderDetail.Shipingfee  = orderItem.ShippingPrice.Amount;
                                orderDetail.EbayAccount = accountName;
                                orderDetail.Istrue      = 1;
                                context.EbayOrderdetail.Add(orderDetail);
                                orderDetails.Add(orderDetail);
                                m_logger.Info(orderItem.SellerSKU + "," + orderItem.QuantityOrdered.ToString());
                                i++;
                            }
                            context.EbayOrder.Add(ebayOrder);
                        }
                    }
                }
                catch (Exception e)
                {
                    m_logger.Error(e.Message);
                }
            }
        }
 public Task <ListOrderItemsResponse> ListOrderItems(ListOrderItemsRequest request)
 {
     return(Task.Run(() => this.connection.Call(
                         new ImwssOrdersServiceClient.Request <ListOrderItemsResponse>("ListOrderItems", typeof(ListOrderItemsResponse), this.servicePath),
                         request)));
 }
Esempio n. 25
0
 public ListOrderItemsResponse ListOrderItems(ListOrderItemsRequest request)
 {
     return(connection.Call(
                new MarketplaceWebServiceOrdersClient.Request <ListOrderItemsResponse>("ListOrderItems", typeof(ListOrderItemsResponse), servicePath),
                request));
 }
        /// <summary>
        /// This operation can be used to list the items of the order indicated by the
        /// given order id (only a single Amazon order id is allowed).
        ///
        /// </summary>
        /// <param name="service">Instance of MarketplaceWebServiceOrders service</param>
        /// <param name="request">ListOrderItemsRequest request</param>
        public static void InvokeListOrderItems(MarketplaceWebServiceOrders service, ListOrderItemsRequest request)
        {
            try
            {
                ListOrderItemsResponse response = service.ListOrderItems(request);


                Console.WriteLine("Service Response");
                Console.WriteLine("=============================================================================");
                Console.WriteLine();

                Console.WriteLine("        ListOrderItemsResponse");
                if (response.IsSetListOrderItemsResult())
                {
                    Console.WriteLine("            ListOrderItemsResult");
                    ListOrderItemsResult listOrderItemsResult = response.ListOrderItemsResult;
                    if (listOrderItemsResult.IsSetNextToken())
                    {
                        Console.WriteLine("                NextToken");
                        Console.WriteLine("                    {0}", listOrderItemsResult.NextToken);
                    }
                    if (listOrderItemsResult.IsSetAmazonOrderId())
                    {
                        Console.WriteLine("                AmazonOrderId");
                        Console.WriteLine("                    {0}", listOrderItemsResult.AmazonOrderId);
                    }
                    if (listOrderItemsResult.IsSetOrderItems())
                    {
                        Console.WriteLine("                OrderItems");
                        OrderItemList    orderItems    = listOrderItemsResult.OrderItems;
                        List <OrderItem> orderItemList = orderItems.OrderItem;
                        foreach (OrderItem orderItem in orderItemList)
                        {
                            Console.WriteLine("                    OrderItem");
                            if (orderItem.IsSetASIN())
                            {
                                Console.WriteLine("                        ASIN");
                                Console.WriteLine("                            {0}", orderItem.ASIN);
                            }
                            if (orderItem.IsSetSellerSKU())
                            {
                                Console.WriteLine("                        SellerSKU");
                                Console.WriteLine("                            {0}", orderItem.SellerSKU);
                            }
                            if (orderItem.IsSetOrderItemId())
                            {
                                Console.WriteLine("                        OrderItemId");
                                Console.WriteLine("                            {0}", orderItem.OrderItemId);
                            }
                            if (orderItem.IsSetTitle())
                            {
                                Console.WriteLine("                        Title");
                                Console.WriteLine("                            {0}", orderItem.Title);
                            }
                            if (orderItem.IsSetQuantityOrdered())
                            {
                                Console.WriteLine("                        QuantityOrdered");
                                Console.WriteLine("                            {0}", orderItem.QuantityOrdered);
                            }
                            if (orderItem.IsSetQuantityShipped())
                            {
                                Console.WriteLine("                        QuantityShipped");
                                Console.WriteLine("                            {0}", orderItem.QuantityShipped);
                            }
                            if (orderItem.IsSetItemPrice())
                            {
                                Console.WriteLine("                        ItemPrice");
                                Money itemPrice = orderItem.ItemPrice;
                                if (itemPrice.IsSetCurrencyCode())
                                {
                                    Console.WriteLine("                            CurrencyCode");
                                    Console.WriteLine("                                {0}", itemPrice.CurrencyCode);
                                }
                                if (itemPrice.IsSetAmount())
                                {
                                    Console.WriteLine("                            Amount");
                                    Console.WriteLine("                                {0}", itemPrice.Amount);
                                }
                            }
                            if (orderItem.IsSetShippingPrice())
                            {
                                Console.WriteLine("                        ShippingPrice");
                                Money shippingPrice = orderItem.ShippingPrice;
                                if (shippingPrice.IsSetCurrencyCode())
                                {
                                    Console.WriteLine("                            CurrencyCode");
                                    Console.WriteLine("                                {0}", shippingPrice.CurrencyCode);
                                }
                                if (shippingPrice.IsSetAmount())
                                {
                                    Console.WriteLine("                            Amount");
                                    Console.WriteLine("                                {0}", shippingPrice.Amount);
                                }
                            }
                            if (orderItem.IsSetGiftWrapPrice())
                            {
                                Console.WriteLine("                        GiftWrapPrice");
                                Money giftWrapPrice = orderItem.GiftWrapPrice;
                                if (giftWrapPrice.IsSetCurrencyCode())
                                {
                                    Console.WriteLine("                            CurrencyCode");
                                    Console.WriteLine("                                {0}", giftWrapPrice.CurrencyCode);
                                }
                                if (giftWrapPrice.IsSetAmount())
                                {
                                    Console.WriteLine("                            Amount");
                                    Console.WriteLine("                                {0}", giftWrapPrice.Amount);
                                }
                            }
                            if (orderItem.IsSetItemTax())
                            {
                                Console.WriteLine("                        ItemTax");
                                Money itemTax = orderItem.ItemTax;
                                if (itemTax.IsSetCurrencyCode())
                                {
                                    Console.WriteLine("                            CurrencyCode");
                                    Console.WriteLine("                                {0}", itemTax.CurrencyCode);
                                }
                                if (itemTax.IsSetAmount())
                                {
                                    Console.WriteLine("                            Amount");
                                    Console.WriteLine("                                {0}", itemTax.Amount);
                                }
                            }
                            if (orderItem.IsSetShippingTax())
                            {
                                Console.WriteLine("                        ShippingTax");
                                Money shippingTax = orderItem.ShippingTax;
                                if (shippingTax.IsSetCurrencyCode())
                                {
                                    Console.WriteLine("                            CurrencyCode");
                                    Console.WriteLine("                                {0}", shippingTax.CurrencyCode);
                                }
                                if (shippingTax.IsSetAmount())
                                {
                                    Console.WriteLine("                            Amount");
                                    Console.WriteLine("                                {0}", shippingTax.Amount);
                                }
                            }
                            if (orderItem.IsSetGiftWrapTax())
                            {
                                Console.WriteLine("                        GiftWrapTax");
                                Money giftWrapTax = orderItem.GiftWrapTax;
                                if (giftWrapTax.IsSetCurrencyCode())
                                {
                                    Console.WriteLine("                            CurrencyCode");
                                    Console.WriteLine("                                {0}", giftWrapTax.CurrencyCode);
                                }
                                if (giftWrapTax.IsSetAmount())
                                {
                                    Console.WriteLine("                            Amount");
                                    Console.WriteLine("                                {0}", giftWrapTax.Amount);
                                }
                            }
                            if (orderItem.IsSetShippingDiscount())
                            {
                                Console.WriteLine("                        ShippingDiscount");
                                Money shippingDiscount = orderItem.ShippingDiscount;
                                if (shippingDiscount.IsSetCurrencyCode())
                                {
                                    Console.WriteLine("                            CurrencyCode");
                                    Console.WriteLine("                                {0}", shippingDiscount.CurrencyCode);
                                }
                                if (shippingDiscount.IsSetAmount())
                                {
                                    Console.WriteLine("                            Amount");
                                    Console.WriteLine("                                {0}", shippingDiscount.Amount);
                                }
                            }
                            if (orderItem.IsSetPromotionDiscount())
                            {
                                Console.WriteLine("                        PromotionDiscount");
                                Money promotionDiscount = orderItem.PromotionDiscount;
                                if (promotionDiscount.IsSetCurrencyCode())
                                {
                                    Console.WriteLine("                            CurrencyCode");
                                    Console.WriteLine("                                {0}", promotionDiscount.CurrencyCode);
                                }
                                if (promotionDiscount.IsSetAmount())
                                {
                                    Console.WriteLine("                            Amount");
                                    Console.WriteLine("                                {0}", promotionDiscount.Amount);
                                }
                            }
                            if (orderItem.IsSetPromotionIds())
                            {
                                Console.WriteLine("                        PromotionIds");
                                PromotionIdList promotionIds    = orderItem.PromotionIds;
                                List <String>   promotionIdList = promotionIds.PromotionId;
                                foreach (String promotionId in promotionIdList)
                                {
                                    Console.WriteLine("                            PromotionId");
                                    Console.WriteLine("                                {0}", promotionId);
                                }
                            }
                            if (orderItem.IsSetCODFee())
                            {
                                Console.WriteLine("                        CODFee");
                                Money CODFee = orderItem.CODFee;
                                if (CODFee.IsSetCurrencyCode())
                                {
                                    Console.WriteLine("                            CurrencyCode");
                                    Console.WriteLine("                                {0}", CODFee.CurrencyCode);
                                }
                                if (CODFee.IsSetAmount())
                                {
                                    Console.WriteLine("                            Amount");
                                    Console.WriteLine("                                {0}", CODFee.Amount);
                                }
                            }
                            if (orderItem.IsSetCODFeeDiscount())
                            {
                                Console.WriteLine("                        CODFeeDiscount");
                                Money CODFeeDiscount = orderItem.CODFeeDiscount;
                                if (CODFeeDiscount.IsSetCurrencyCode())
                                {
                                    Console.WriteLine("                            CurrencyCode");
                                    Console.WriteLine("                                {0}", CODFeeDiscount.CurrencyCode);
                                }
                                if (CODFeeDiscount.IsSetAmount())
                                {
                                    Console.WriteLine("                            Amount");
                                    Console.WriteLine("                                {0}", CODFeeDiscount.Amount);
                                }
                            }
                            if (orderItem.IsSetGiftMessageText())
                            {
                                Console.WriteLine("                        GiftMessageText");
                                Console.WriteLine("                            {0}", orderItem.GiftMessageText);
                            }
                            if (orderItem.IsSetGiftWrapLevel())
                            {
                                Console.WriteLine("                        GiftWrapLevel");
                                Console.WriteLine("                            {0}", orderItem.GiftWrapLevel);
                            }
                            if (orderItem.IsSetInvoiceData())
                            {
                                Console.WriteLine("                        InvoiceData");
                                InvoiceData invoiceData = orderItem.InvoiceData;
                                if (invoiceData.IsSetInvoiceRequirement())
                                {
                                    Console.WriteLine("                            InvoiceRequirement");
                                    Console.WriteLine("                                {0}", invoiceData.InvoiceRequirement);
                                }
                                if (invoiceData.IsSetBuyerSelectedInvoiceCategory())
                                {
                                    Console.WriteLine("                            BuyerSelectedInvoiceCategory");
                                    Console.WriteLine("                                {0}", invoiceData.BuyerSelectedInvoiceCategory);
                                }
                                if (invoiceData.IsSetInvoiceTitle())
                                {
                                    Console.WriteLine("                            InvoiceTitle");
                                    Console.WriteLine("                                {0}", invoiceData.InvoiceTitle);
                                }
                                if (invoiceData.IsSetInvoiceInformation())
                                {
                                    Console.WriteLine("                            InvoiceInformation");
                                    Console.WriteLine("                                {0}", invoiceData.InvoiceInformation);
                                }
                            }
                        }
                    }
                }
                if (response.IsSetResponseMetadata())
                {
                    Console.WriteLine("            ResponseMetadata");
                    ResponseMetadata responseMetadata = response.ResponseMetadata;
                    if (responseMetadata.IsSetRequestId())
                    {
                        Console.WriteLine("                RequestId");
                        Console.WriteLine("                    {0}", responseMetadata.RequestId);
                    }
                }
                Console.WriteLine("            ResponseHeaderMetadata");
                Console.WriteLine("                RequestId");
                Console.WriteLine("                    " + response.ResponseHeaderMetadata.RequestId);
                Console.WriteLine("                ResponseContext");
                Console.WriteLine("                    " + response.ResponseHeaderMetadata.ResponseContext);
                Console.WriteLine("                Timestamp");
                Console.WriteLine("                    " + response.ResponseHeaderMetadata.Timestamp);
                Console.WriteLine();
            }
            catch (MarketplaceWebServiceOrdersException ex)
            {
                Console.WriteLine("Caught Exception: " + ex.Message);
                Console.WriteLine("Response Status Code: " + ex.StatusCode);
                Console.WriteLine("Error Code: " + ex.ErrorCode);
                Console.WriteLine("Error Type: " + ex.ErrorType);
                Console.WriteLine("Request ID: " + ex.RequestId);
                Console.WriteLine("XML: " + ex.XML);
                Console.WriteLine("ResponseHeaderMetadata: " + ex.ResponseHeaderMetadata);
            }
        }
 /// <summary>
 /// List Order Items
 /// </summary>
 /// <param name="request">List Order Items  request</param>
 /// <returns>List Order Items  Response from the service</returns>
 /// <remarks>
 /// This operation can be used to list the items of the order indicated by the
 /// given order id (only a single Amazon order id is allowed).
 ///
 /// </remarks>
 public ListOrderItemsResponse ListOrderItems(ListOrderItemsRequest request)
 {
     return(Invoke <ListOrderItemsResponse>("ListOrderItemsResponse.xml"));
 }