Exemple #1
0
        public IActionResult UserPurchases()
        {
            if (_user.loggedIn == false)
            {
                return(View("MustBeLoggedIn"));
            }

            var viewModel = new UserPurchasesViewModel();

            viewModel.CurrentUserID = _user.theUser.UserID;

            var itemIdsOfCurrentUser = _shopDBContext.UserItems.Where(user => user.UserId == viewModel.CurrentUserID).ToList();



            viewModel.userPurchases = itemIdsOfCurrentUser.Select(itemDAL => new Item
            {
                ItemID      = itemDAL.ItemId,
                Description = itemDAL.Description,
                Name        = itemDAL.Name,
                Price       = itemDAL.Price,
                Quantity    = itemDAL.Quantity
            }).ToList();


            return(View(viewModel));
        }
Exemple #2
0
        public IActionResult UserPurchases()
        {
            var email = User.Identity.Name;
            var user  = unit
                        .UserRepository
                        .Get(x => x.Email == email)
                        .FirstOrDefault();
            var purchases = unit
                            .PurchaseRepository
                            .Get(x => x.UserId == user.Id, includeProperties: "PurchaseProducts.Product")
                            .OrderByDescending(x => x.CreationTime);
            var model = new UserPurchasesViewModel()
            {
                Purchases = purchases
            };

            return(View(model));
        }
        public IHttpActionResult GetUserPurchases(string username)
        {
            var existingUser = this.BookShopData.Users.All()
                .FirstOrDefault(u => u.UserName.Equals(username));

            if (existingUser == null)
            {
                return this.NotFound();
            }

            var userPurchases = new UserPurchasesViewModel
            {
                UserName = existingUser.UserName,
                Purchases = existingUser.Purchases
                    .AsQueryable()
                    .Where(p => !p.isRecalled)
                    .OrderByDescending(p => p.DateOfPurchase)
                    .Select(PurchaseViewModel.GetViewModel)
            };

            return this.Ok(userPurchases);
        }