Example #1
0
        private void BtnGetItemTransactions_Click(object sender, System.EventArgs e)
        {
            try
            {
                LstTransactions.Items.Clear();
                GetItemTransactionsCall apicall = new GetItemTransactionsCall(Context);

                TransactionTypeCollection transactions = apicall.GetItemTransactions(TxtItemId.Text, DatePickModFrom.Value, DatePickModTo.Value);

                if (transactions.Count == 0)
                {
                    MessageBox.Show("There is no transaction");
                    return;
                }

                foreach (TransactionType trans in transactions)
                {
                    string[] listparams = new string[6];
                    listparams[0] = trans.TransactionID;
                    listparams[1] = trans.TransactionPrice.Value.ToString();
                    listparams[2] = trans.AmountPaid.Value.ToString();
                    listparams[3] = trans.QuantityPurchased.ToString();
                    listparams[4] = trans.Buyer.UserID;
                    listparams[5] = trans.BestOfferSale.ToString();

                    ListViewItem vi = new ListViewItem(listparams);
                    LstTransactions.Items.Add(vi);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
        public void AddOrder()
        {
            Assert.IsNotNull(TestData.NewItem, "Failed because no item available -- requires successful AddItem test");
            // Make API call.
            ApiException gotException = null;

            try
            {
                AddOrderCall api   = new AddOrderCall(this.apiContext);
                OrderType    order = new OrderType();
                api.Order = order;
                TransactionType t1 = new TransactionType();
                t1.Item          = TestData.NewItem;
                t1.TransactionID = "0";
                TransactionType t2 = new TransactionType();
                t2.Item          = TestData.NewItem;
                t2.TransactionID = "0";
                TransactionTypeCollection tary = new TransactionTypeCollection();
                tary.Add(t1); tary.Add(t2);
                order.TransactionArray = tary;
                api.Order = order;
                // Make API call.
                /*AddOrderResponseType resp =*/ api.Execute();
            }
            catch (ApiException ex)
            {
                gotException = ex;
            }
            Assert.IsNotNull(gotException);
        }
Example #3
0
 public void AddOrder()
 {
     Assert.IsNotNull(TestData.NewItem, "Failed because no item available -- requires successful AddItem test");
     // Make API call.
     ApiException gotException = null;
     try
     {
     AddOrderCall api = new AddOrderCall(this.apiContext);
     OrderType order = new OrderType();
     api.Order = order;
     TransactionType t1 = new TransactionType();
     t1.Item = TestData.NewItem;
     t1.TransactionID = "0";
     TransactionType t2 = new TransactionType();
     t2.Item = TestData.NewItem;
     t2.TransactionID = "0";
     TransactionTypeCollection tary = new TransactionTypeCollection();
         tary.Add(t1); tary.Add(t2);
     order.TransactionArray = tary;
     api.Order = order;
     // Make API call.
     /*AddOrderResponseType resp =*/ api.Execute();
     }
     catch(ApiException ex)
     {
         gotException = ex;
     }
     Assert.IsNotNull(gotException);
 }
Example #4
0
        public static int GetItemList(ApiContext apiContext, int Page)
        {
            GetSellerTransactionsCall apiCall = new GetSellerTransactionsCall(apiContext);

            apiCall.DetailLevelList = new DetailLevelCodeTypeCollection(new DetailLevelCodeType[] { DetailLevelCodeType.ReturnAll });
//            apiCall.ApiRequest.OutputSelector = new StringCollection(new string[] { "TransactionID", "PaginationResult", "TransactionArray.Transaction.Buyer.UserID", "TransactionArray.Transaction.Item.Title" });
            apiCall.Pagination = new PaginationType()
            {
                EntriesPerPage = 200, PageNumber = Page
            };

            apiCall.Execute();
            apiContext.ApiLogManager.RecordMessage(String.Format("Getting item list - START, page {0}", Page), MessageType.Information, MessageSeverity.Informational);
            TransactionTypeCollection items = apiCall.GetSellerTransactions(new TimeFilter()
            {
                TimeFrom = new DateTime(2012, 8, 14, 12, 0, 0),
                TimeTo   = new DateTime(2012, 8, 14, 23, 59, 59)
            });

            apiContext.ApiLogManager.RecordMessage(String.Format("Getting item list - SUCCESS, page {0}", Page), MessageType.Information, MessageSeverity.Informational);

            foreach (TransactionType i in items)
            {
                apiContext.ApiLogManager.RecordMessage(String.Format("UserID: {0}\tTransactioNID: {1}\tBuyer Name: {2}\tCreation Time: {3}\tSellingManagerSalesRecordNumber: {4}",
                                                                     i.Buyer.UserID, i.TransactionID, i.Buyer.BuyerInfo.ShippingAddress.Name, i.CreatedDate, i.ShippingDetails.SellingManagerSalesRecordNumber), MessageType.Information, MessageSeverity.Informational);
            }
            return(apiCall.PaginationResult.TotalNumberOfPages);
        }
Example #5
0
        private void BtnGetItemTransactions_Click(object sender, EventArgs e)
        {
            try
            {
                LstTransactions.Items.Clear();
                GetItemTransactionsCall apicall = new GetItemTransactionsCall(Program.GetApiContext());

                TransactionTypeCollection transactions = apicall.GetItemTransactions(TxtItemId.Text, DatePickModFrom.Value, DatePickModTo.Value);

                if (transactions.Count == 0)
                {
                    MessageBox.Show("There is no transaction");
                    return;
                }
                //Input data for tag <ItemID> is invalid or missing. Please check API documentation.
                //No<ItemID> exists or < ItemID > is specified as an empty tag in the request.
                foreach (TransactionType trans in transactions)
                {
                    string[] listparams = new string[6];
                    listparams[0] = trans.TransactionID;
                    listparams[1] = trans.TransactionPrice.Value.ToString();
                    listparams[2] = trans.AmountPaid.Value.ToString();
                    listparams[3] = trans.QuantityPurchased.ToString();
                    listparams[4] = trans.Buyer.UserID;
                    listparams[5] = trans.BestOfferSale.ToString();

                    ListViewItem vi = new ListViewItem(listparams);
                    LstTransactions.Items.Add(vi);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Example #6
0
        private static IEnumerable <SalesOrderItem> MapItems(Config cfg, TransactionTypeCollection items)
        {
            //return items.Select(i => MapSOItem(cfg, i));

            List <SalesOrderItem> ret = new List <SalesOrderItem>();

            foreach (TransactionType i in items)
            {
                ret.Add(MapSOItem(cfg, i));
            }
            return(ret);
        }
Example #7
0
        /// <summary>
        /// Returns a list of ebay transaction types matching a specified time period
        /// </summary>
        /// <param name="from">Start date and time of the requiered time period</param>
        /// <param name="until">End date and time of the requiered time period</param>
        /// <returns></returns>
        public static List <TransactionType> LoadEbayTransactions(DateTime from, DateTime until)
        {
            List <TransactionType> result = new List <TransactionType>();

            //Get all sales
            GetSellerTransactionsCall transactionCall = new GetSellerTransactionsCall(EbayController.GetApiContext());

            transactionCall.DetailLevelList.Add(DetailLevelCodeType.ReturnAll);
            transactionCall.IncludeContainingOrder = true;
            transactionCall.Site       = SiteCodeType.Germany;
            transactionCall.Pagination = new PaginationType();
            transactionCall.Pagination.EntriesPerPage = 200;

            Int32 pageNumber = 1;

            do
            {
                transactionCall.Pagination.PageNumber = pageNumber;
                TransactionTypeCollection transactionPage = transactionCall.GetSellerTransactions(from, until);

                result.AddRange(transactionPage.ToArray());

                pageNumber++;
            }while (transactionCall.HasMoreTransactions);

            //Get all orders for the loaded sales
            var           orderIds  = from current in result where current.ContainingOrder != null select current.ContainingOrder.OrderID;
            GetOrdersCall orderCall = new GetOrdersCall(EbayController.GetApiContext());

            orderCall.OrderIDList = new StringCollection(orderIds.ToArray());
            orderCall.Execute();

            //Assign orders to sales
            List <OrderType> orders = new List <OrderType>(orderCall.OrderList.ToArray());

            foreach (TransactionType current in result)
            {
                if (current.ContainingOrder != null)
                {
                    current.ContainingOrder = orders.FirstOrDefault(x => x.OrderID == current.ContainingOrder.OrderID);
                }
            }

            return(result);
        }
Example #8
0
        public static void GetItemTransactions(ApiContext apiContext, string ItemID)
        {
            Stopwatch s = Stopwatch.StartNew();
            GetItemTransactionsCall apiCall = new GetItemTransactionsCall(apiContext);

            Blink();

            apiCall.DetailLevelList        = new DetailLevelCodeTypeCollection(new DetailLevelCodeType[] { DetailLevelCodeType.ReturnAll });
            apiCall.IncludeContainingOrder = true;
            apiCall.IncludeFinalValueFee   = true;
            apiCall.Pagination             = new PaginationType()
            {
                EntriesPerPage = 100, PageNumber = 1
            };
            apiContext.ApiLogManager.RecordMessage(String.Format("Getting item transactions - START, page {0}", 1));
            //apiCall.ApiRequest.OutputSelector = new StringCollection(new string[] { "PaginationResult", "OrderID", "OrderLineItemID", "SellingManagerSalesRecordNumber", "TransactionArray.Transaction.Buyer.UserID", "Item.ItemID", "TransactionID", "TransactionArray.Transaction.QuantityPurchased"});

            int Page = 1;

            do
            {
                TransactionTypeCollection items = apiCall.GetItemTransactions(ItemID, new TimeFilter()
                {
                    TimeFrom = DateTime.Now.Subtract(TimeDiff).Subtract(new TimeSpan(29, 0, 0, 0)),
                    TimeTo   = DateTime.Now.Subtract(TimeDiff)
                });
                apiContext.ApiLogManager.RecordMessage(String.Format("Getting item list - SUCCESS, page {0}", Page));
                Blink();

                foreach (TransactionType i in items)
                {
                    apiContext.ApiLogManager.RecordMessage(String.Format("TransactionID {0}\tItemID {1}\tItem Title{2}",
                                                                         i.ContainingOrder != null ? i.ContainingOrder.OrderID : i.OrderLineItemID, apiCall.ItemID, apiCall.Item.Title));
                }
                Blink();

                Page++;
            } while (Page <= apiCall.PaginationResult.TotalNumberOfPages);

            apiContext.ApiLogManager.RecordMessage("Getting Transactions - SUCCESS");
            eBayClass.Metrics.GenerateReport(eBayClass.LogManager.ApiLoggerList[0]);
            eBayClass.LogManager.RecordMessage("Done; ms: " + s.ElapsedMilliseconds.ToString());
            Blink();
        }
        private void BtnGetSellerTransactions_Click(object sender, System.EventArgs e)
        {
            try
            {
                LstTransactions.Items.Clear();

                GetSellerTransactionsCall apicall = new GetSellerTransactionsCall(Context);
                TimeFilter timefilter             = new TimeFilter();
                if (GMT.Checked.Equals(true))
                {
                    timefilter.TimeFromUTC = DatePickModFrom.Value;
                    timefilter.TimeToUTC   = DatePickModTo.Value;
                }
                else
                {
                    timefilter.TimeFrom = DatePickModFrom.Value;
                    timefilter.TimeTo   = DatePickModTo.Value;
                }
                TransactionTypeCollection transactions = apicall.GetSellerTransactions(timefilter);
//				TransactionTypeCollection transactions = apicall.GetSellerTransactions(DatePickModFrom.Value, DatePickModTo.Value);

                foreach (TransactionType trans in transactions)
                {
                    string[] listparams = new string[6];
                    listparams[0] = trans.Item.ItemID;
                    listparams[1] = trans.TransactionID;
                    listparams[2] = trans.TransactionPrice.Value.ToString();
                    listparams[3] = trans.AmountPaid.Value.ToString();
                    listparams[4] = trans.QuantityPurchased.ToString();
                    listparams[5] = trans.Buyer.UserID;

                    ListViewItem vi = new ListViewItem(listparams);
                    LstTransactions.Items.Add(vi);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Example #10
0
        public void GetItemTransactions()
        {
            Assert.IsNotNull(TestData.NewItem, "Failed because no item available -- requires successful AddItem test");
            GetItemTransactionsCall api = new GetItemTransactionsCall(this.apiContext);

            api.ItemID = TestData.NewItem.ItemID;
            // Time filter
            System.DateTime calTo   = DateTime.Now;
            System.DateTime calFrom = calTo.AddHours(-1);
            TimeFilter      tf      = new TimeFilter(calFrom, calTo);

            api.ModTimeFrom = calFrom;
            api.ModTimeTo   = calTo;
            // Pagination
            PaginationType pt = new PaginationType();

            pt.EntriesPerPage = 100; pt.EntriesPerPageSpecified = true;
            pt.PageNumber     = 1; pt.PageNumberSpecified = true;
            api.Pagination    = pt;
            TransactionTypeCollection trans = api.GetItemTransactions(api.ItemID, api.ModTimeFrom, api.ModTimeTo);

            // NO transaction should be returned.
            Assert.IsTrue(trans == null || trans.Count == 0);
        }