示例#1
0
        public void GetRecentTradeOffersTest()
        {
            RecentOffers.GetRecentTradeOffers(false);
            RecentOffers.GetRecentTradeOffers(true);

            Assert.IsTrue(true);
        }
示例#2
0
        public RecentOffers GetOwnOffers(int userId, FilterDto filterDto)
        {
            RecentOffers ownOffers = new RecentOffers();

            ownOffers.Offers = dataContext.Offers.Where(x => x.UserId == userId)
                               .OrderBy(x => x.CreateTime)
                               .Skip(filterDto.Page * 5)
                               .Take(5)
                               .Select(x =>
                                       new OfferOutDto()
            {
                HaveItemIds = x.HaveItemsIds.ToList(),
                WantItemIds = x.WantItemsIds.ToList(),
                ProfileUrl  = dataContext.Users.Where(y => y.Id == userId).Select(z => z.ProfileUrl).FirstOrDefault()
            }
                                       ).ToList();

            ownOffers.TotalCount = dataContext.Offers.Where(x => x.UserId == userId).ToList().Count;

            return(ownOffers);
        }
示例#3
0
        public void GetTradeDetailsTest()
        {
            Dictionary <string, string> tradeTokenAndTradeId = new Dictionary <string, string>();

            List <RecentTradeOffer> recentTradeOffers = RecentOffers.GetRecentTradeOffers(false);

            foreach (RecentTradeOffer recentTradeOffer in recentTradeOffers)
            {
                if (recentTradeOffer.CreatedAt > DateTime.Now.AddDays(-7))
                {
                    if (!tradeTokenAndTradeId.ContainsKey(recentTradeOffer.BitSkinsTradeId))
                    {
                        tradeTokenAndTradeId.Add(recentTradeOffer.BitSkinsTradeId, recentTradeOffer.BitSkinsTradeToken);
                    }
                }
            }

            foreach (KeyValuePair <string, string> pair in tradeTokenAndTradeId)
            {
                Details.GetTradeDetails(pair.Value, pair.Key);
            }

            Assert.IsTrue(true);
        }
示例#4
0
        public RecentOffers GetRecentOffers(FilterDto filterDto)
        {
            RecentOffers recentOffers = new RecentOffers();

            recentOffers.Offers = new List <OfferOutDto>();

            List <Offer> data;

            if (filterDto.ItemId != -1)
            {
                if (filterDto.SearchType == SearchType.HaveItem)
                {
                    data = dataContext.Offers
                           .Where(x => x.WantItemsIds.Any(y => y == filterDto.ItemId)).ToList();

                    recentOffers.TotalCount = data.Count;

                    data = data.OrderBy(x => x.CreateTime)
                           .Skip(filterDto.Page * 5)
                           .Take(5)
                           .ToList();
                }
                else if (filterDto.SearchType == SearchType.WantItem)
                {
                    data = dataContext.Offers
                           .Where(x => x.HaveItemsIds.Any(y => y == filterDto.ItemId)).ToList();

                    recentOffers.TotalCount = data.Count;

                    data = data.OrderBy(x => x.CreateTime)
                           .Skip(filterDto.Page * 5)
                           .Take(5)
                           .ToList();
                }
                else
                {
                    data = dataContext.Offers
                           .Where(x => x.WantItemsIds.Any(y => y == filterDto.ItemId) || x.HaveItemsIds.Any(y => y == filterDto.ItemId)).ToList();

                    recentOffers.TotalCount = data.Count;
                    data = data.OrderBy(x => x.CreateTime)
                           .Skip(filterDto.Page * 5)
                           .Take(5)
                           .ToList();
                }
            }
            else
            {
                recentOffers.TotalCount = dataContext.Offers.ToList().Count;

                data = dataContext.Offers
                       .OrderBy(x => x.CreateTime)
                       .Skip(filterDto.Page * 5)
                       .Take(5)
                       .ToList();
            }

            data.ForEach(offer =>
            {
                OfferOutDto offerOutDto = new OfferOutDto();

                offerOutDto.HaveItemIds = offer.HaveItemsIds.ToList();
                offerOutDto.WantItemIds = offer.WantItemsIds.ToList();
                offerOutDto.ProfileUrl  = dataContext.Users.Where(x => x.Id == offer.UserId).Select(x => x.ProfileUrl).FirstOrDefault();
                offerOutDto.OfferId     = offer.Id;

                recentOffers.Offers.Add(offerOutDto);
            });

            return(recentOffers);
        }