コード例 #1
0
 public ActionResult LogOut()
 {
     using (DemirStoreDBEntities dbModel = new DemirStoreDBEntities())
     {
         int userId = (int)Session["userID"];
         List <tblShoppingCart> oldSCart = dbModel.tblShoppingCart.Where(x => x.UserId == userId && x.OrderId == null).ToList();
         foreach (var item in oldSCart)
         {
             dbModel.tblShoppingCart.Remove(item);
         }
         if (Session["cart"] != null)
         {
             foreach (ShoppingCart item in (List <ShoppingCart>)Session["cart"])
             {
                 tblShoppingCart sCart = new tblShoppingCart();
                 sCart.UserId     = (int)Session["userID"];
                 sCart.ProductId  = item.Product.Id;
                 sCart.Amount     = item.Quantity;
                 sCart.TotalPrice = (item.Product.Price * item.Quantity);
                 dbModel.tblShoppingCart.Add(sCart);
             }
         }
         dbModel.SaveChanges();
     }
     Session.Abandon();
     return(RedirectToAction("Login", "Home"));
 }
コード例 #2
0
        public ActionResult Order(tblOrder orderModel)
        {
            if (ModelState.IsValid)
            {
                tblAddress userAddress  = db.tblAddress.Where(x => x.Id == orderModel.AdressId).FirstOrDefault();
                tblAddress orderAddress = new tblAddress {
                    Name    = userAddress.Name,
                    Address = userAddress.Address,
                    City    = userAddress.City,
                    Country = userAddress.Country,
                    Zip     = userAddress.Zip,
                };

                db.tblAddress.Add(orderAddress);

                orderModel.AdressId  = orderAddress.Id;
                orderModel.isShipped = false;
                orderModel.Date      = DateTime.Now;
                db.tblOrder.Add(orderModel);
            }

            int userId = (int)Session["userID"];
            List <tblShoppingCart> oldSCart = db.tblShoppingCart.Where(x => x.UserId == userId && x.OrderId == null).ToList();

            foreach (var item in oldSCart)
            {
                db.tblShoppingCart.Remove(item);
            }
            foreach (ShoppingCart item in (List <ShoppingCart>)Session["cart"])
            {
                tblShoppingCart sCart = new tblShoppingCart {
                    UserId     = (int)Session["userID"],
                    ProductId  = item.Product.Id,
                    Amount     = item.Quantity,
                    TotalPrice = (item.Product.Price * item.Quantity),
                    OrderId    = orderModel.Id,
                };
                tblProduct product = db.tblProduct.Where(x => x.Id == sCart.ProductId).FirstOrDefault();
                product.Stock          -= sCart.Amount;
                db.Entry(product).State = EntityState.Modified;

                db.tblShoppingCart.Add(sCart);
            }
            db.SaveChanges();
            Session.Remove("cart");

            return(View("Index"));
        }
コード例 #3
0
        /// <summary>
        /// Deletes item from shopping chart
        /// </summary>
        /// <param name="item">the item that is being deleted</param>
        /// <param name="userID">the user that has the item</param>
        public void RemoveItem(tblItem item, int userID)
        {
            int cartId = CartExists(item.ItemID, userID);

            try
            {
                using (OrderDBEntities context = new OrderDBEntities())
                {
                    tblShoppingCart shoppingCartToRemove = (from r in context.tblShoppingCarts where r.ShoppingCartID == cartId select r).First();

                    context.tblShoppingCarts.Remove(shoppingCartToRemove);
                    context.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                Debug.WriteLine("Exception" + ex.Message.ToString());
            }
        }
コード例 #4
0
        /// <summary>
        /// Adds the item if the itemID exists
        /// </summary>
        /// <param name="userID">the item that is being added for the user</param>
        /// <param name="item">the item that is being added</param>
        /// <returns>a new shopping cart element</returns>
        public tblShoppingCart AddItem(tblItem item, int userID)
        {
            int cartId = CartExists(item.ItemID, userID);

            try
            {
                using (OrderDBEntities context = new OrderDBEntities())
                {
                    if (cartId == 0)
                    {
                        tblShoppingCart newShoppingCart = new tblShoppingCart
                        {
                            Amount = item.Amount,
                            UserID = userID,
                            ItemID = item.ItemID
                        };

                        context.tblShoppingCarts.Add(newShoppingCart);
                        context.SaveChanges();

                        return(newShoppingCart);
                    }
                    else
                    {
                        tblShoppingCart shoppingCartToEdit = (from ss in context.tblShoppingCarts where ss.ShoppingCartID == cartId select ss).First();

                        shoppingCartToEdit.Amount = item.Amount;
                        shoppingCartToEdit.UserID = shoppingCartToEdit.UserID;
                        shoppingCartToEdit.ItemID = shoppingCartToEdit.ItemID;

                        shoppingCartToEdit.ShoppingCartID = cartId;
                        context.SaveChanges();

                        return(shoppingCartToEdit);
                    }
                }
            }
            catch (Exception ex)
            {
                Debug.WriteLine("Exception" + ex.Message.ToString());
                return(null);
            }
        }
コード例 #5
0
        public void EmptyShoppingCart(int userID)
        {
            try
            {
                using (OrderDBEntities context = new OrderDBEntities())
                {
                    for (int i = 0; i < GetAllUserShoppingCarts(userID).Count; i++)
                    {
                        tblShoppingCart shoppingCartToRemove = (from r in context.tblShoppingCarts
                                                                where r.UserID == userID
                                                                select r).First();

                        context.tblShoppingCarts.Remove(shoppingCartToRemove);
                    }
                    context.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                Debug.WriteLine("Exception" + ex.Message.ToString());
            }
        }