예제 #1
0
        public async Task<ActionResult> Add(int productId, string returnUrl)
        {
            WishlistActions act = new WishlistActions();
            if (User.Identity.IsAuthenticated)
            {
                ApplicationDbContext mycontext = new ApplicationDbContext();
                UserStore<ApplicationUser> myStore = new UserStore<ApplicationUser>(mycontext);
                ApplicationUserManager mgr = new ApplicationUserManager(myStore);
                var thisUser = await mgr.FindByNameAsync(User.Identity.Name);

                WishlistItem wish = new WishlistItem();
                CartActions cart = new CartActions();
                wish.ProductID = productId;

                myHandler = new BusinessLogicHandler();
                IEnumerable<CartItem> inItems = myHandler.GetCartItems(thisUser.Carts.CartID);
                if (inItems != null)
                {
                    CartItem items = inItems.SingleOrDefault(item => item.ProductID == productId);
                    if (items != null)
                    {
                        if (items.ProductID == productId)
                        { myHandler = new BusinessLogicHandler(); myHandler.DeleteCartItem(items.CartItemID); }
                    }

                }
                wish.WishlistID = (int)thisUser.Wishlists.WishlistID;
                wish.DateAdded = DateTime.Now;
                myHandler.AddWishlistItem(wish);

                Session["wishlistTotal"] =  act.GetWishlistTotal(thisUser.Wishlists.WishlistID);
                Session["cartTotal"] =(double) cart.GetTotalAsync(thisUser.Carts.CartID);

                return Redirect(returnUrl);
            }
            else
            { return RedirectToAction("Account", "Login", null); }
        }
예제 #2
0
 public IEnumerable<CartItem> GetCartItemsAsync(int cartId)
 {
     myHandler = new BusinessLogicHandler();
     return (IEnumerable<CartItem>) myHandler.GetCartItems(cartId);
 }