Exemplo n.º 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);
            }
        }
Exemplo n.º 2
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);
            }
        }
Exemplo n.º 3
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();
        }
Exemplo n.º 4
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);
        }
Exemplo n.º 5
0
        // https://ebaydts.com/eBayKBDetails?KBid=1937
        //
        // also look at GetOrderTransactions()
        public static TransactionTypeCollection GetItemTransactions(string itemId, DateTime ModTimeFrom, DateTime ModTimeTo)
        {
            try {
                ApiContext oContext = new ApiContext();

                string appID     = ConfigurationManager.AppSettings["AppID"];
                string devID     = ConfigurationManager.AppSettings["DevID"];
                string certID    = ConfigurationManager.AppSettings["CertID"];
                string userToken = ConfigurationManager.AppSettings["Token"];

                //set the dev,app,cert information
                oContext.ApiCredential.ApiAccount.Developer   = devID;
                oContext.ApiCredential.ApiAccount.Application = appID;
                oContext.ApiCredential.ApiAccount.Certificate = certID;
                oContext.ApiCredential.eBayToken = userToken;

                //set the endpoint (sandbox) use https://api.ebay.com/wsapi for production
                oContext.SoapApiServerUrl = "https://api.ebay.com/wsapi";

                //set the Site of the Context
                oContext.Site = eBay.Service.Core.Soap.SiteCodeType.US;

                //the WSDL Version used for this SDK build
                oContext.Version = "817";

                //very important, let's setup the logging
                ApiLogManager oLogManager = new ApiLogManager();
                oLogManager.ApiLoggerList.Add(new eBay.Service.Util.FileLogger("GetItemTransactions.log", false, false, true));
                oLogManager.EnableLogging = true;
                oContext.ApiLogManager    = oLogManager;

                GetItemTransactionsCall oGetItemTransactionsCall = new GetItemTransactionsCall(oContext);

                //' set the Version used in the call
                oGetItemTransactionsCall.Version = oContext.Version;

                //' set the Site of the call
                oGetItemTransactionsCall.Site = oContext.Site;

                //' enable the compression feature
                oGetItemTransactionsCall.EnableCompression = true;

                DateTime CreateTimeFromPrev;

                //ModTimeTo set to the current time
                //ModTimeTo = DateTime.Now.ToUniversalTime();

                //ts1 is 15 mins
                //TimeSpan ts1 = new TimeSpan(9000000000);
                //CreateTimeFromPrev = ModTimeTo.AddDays(-30);

                //Set the ModTimeFrom the last time you made the call minus 2 minutes
                //ModTimeFrom = CreateTimeFromPrev;

                //set ItemID and <DetailLevel>ReturnAll<DetailLevel>
                oGetItemTransactionsCall.ItemID = itemId;
                oGetItemTransactionsCall.DetailLevelList.Add(DetailLevelCodeType.ReturnAll);

                var r = oGetItemTransactionsCall.GetItemTransactions(itemId, ModTimeFrom, ModTimeTo);

                return(r);
            }
            catch (Exception exc)
            {
                dsutil.DSUtil.WriteFile(Log_File, "ERROR on item id: " + itemId + " " + exc.Message);
            }
            return(null);
        }