コード例 #1
0
        public ActionResult Index(Models.Ship postback)
        {
            if (this.ModelState.IsValid)
            {   //取得目前購物車
                var currentcart = Models.Operation.GetCurrentCart();

                //取得目前登入使用者Id
                //var userId = HttpContext.User.Identity.GetUserId();
                var userId = String.Format("{0}", Session["LoginName"]);


                using (Models.CartsEntities db = new Models.CartsEntities())
                {
                    //建立Order物件
                    var order = new Models.Orders()
                    {
                        UserId          = userId,
                        RecieverName    = postback.RecieverName,
                        RecieverPhone   = postback.RecieverPhone,
                        RecieverAddress = postback.RecieverAddress
                    };
                    //加其入Orders資料表後,儲存變更
                    db.Orders.Add(order);

                    db.SaveChanges();

                    //取得購物車中OrderDetai物件
                    var orderDetails = currentcart.ToOrderDetailList(order.Id);

                    //將其加入OrderDetails資料表後,儲存變更
                    db.OrderDetails.AddRange(orderDetails);
                    db.SaveChanges();
                }
                return(Content("訂購成功"));
            }
            return(View());
        }
コード例 #2
0
ファイル: OrderController.cs プロジェクト: YidaChen/mvc5_shop
        public ActionResult Index(Models.OrderModel.Ship postback)
        {
            if (this.ModelState.IsValid)
            {   //取得目前購物車
                var currentcart = Models.Cart.Operation.GetCurrentCart();

                //取得目前登入使用者Id
                var userId = HttpContext.User.Identity.GetUserId();

                using (Models.CartsEntities db = new Models.CartsEntities())
                {
                    //建立Order物件
                    var order = new Models.Order()
                    {
                        UserId          = userId,
                        RecieverName    = postback.RecieverName,
                        RecieverPhone   = postback.RecieverPhone,
                        RecieverAddress = postback.RecieverAddress
                    };
                    //加其入Orders資料表後,儲存變更
                    db.Orders.Add(order);
                    db.SaveChanges();

                    //取得購物車中OrderDetail物件
                    var orderDetails = currentcart.ToOrderDetailList(order.Id);

                    //將其加入OrderDetails資料表後,儲存變更
                    db.OrderDetails.AddRange(orderDetails);
                    db.SaveChanges();
                }
                //清除購物車
                currentcart.ClearCart();
                //訂購成功, 返回訂單列表
                return(RedirectToAction("MyOrder"));
            }
            return(View());
        }
コード例 #3
0
        public ActionResult Index(Models.OrderModel.Ship model)
        {
            if (this.ModelState.IsValid)
            {
                // 取得目前購物車
                var CurrentCart = Models.Carts.Operation.GetCurrentCart();

                // 取得目前登入使用者 Id
                var UserId = HttpContext.User.Identity.GetUserId();

                using (Models.CartsEntities db = new Models.CartsEntities())
                {
                    // 建立 Order 物件
                    var order = new Models.Order()
                    {
                        UserId          = UserId,
                        ReceiverName    = model.ReceiverName,
                        ReceiverPhone   = model.ReceiverPhone,
                        ReceiverAddress = model.ReceiverAddress
                    };

                    // 加入 Order 資料表後,儲存變更
                    db.Orders.Add(order);
                    db.SaveChanges();

                    // 取得購物車中的 OrderDetail 物件
                    var orderDetails = CurrentCart.ToOrderDetailList(order.Id);

                    // 將 OrderDetail 物件,加入 OrderDetail 資料表後,儲存變更。
                    db.OrderDetails.AddRange(orderDetails);
                    db.SaveChanges();
                }
                return(Content("訂購成功"));
            }
            return(View());
        }
コード例 #4
0
        [HttpPost] // 只有用POST方法才可進入
        public ActionResult Create(Models.Product postback)
        {
            if (this.ModelState.IsValid) //資料驗證正確才新增進db
            {
                using (Models.CartsEntities db = new Models.CartsEntities())
                {
                    db.Products.Add(postback);
                    db.SaveChanges();

                    TempData["ResultMessage"] = String.Format("商品[{0}]建立成功", postback.Name); //加入訊息 Index會接收這個訊息
                    return(RedirectToAction("Index"));                                       //自動跳轉回Product頁面
                }
            }
            ViewBag.ResultMessage = "資料有誤"; //加入訊息
            return(View());                 //停留在Create頁面 //要加postback嗎?
        }
コード例 #5
0
        public ActionResult Create(Models.Product postback)
        {
            if (this.ModelState.IsValid)
            {
                using (Models.CartsEntities db = new Models.CartsEntities())
                {
                    db.Products.Add(postback);
                    db.SaveChanges();

                    TempData["ResultMessage"] = String.Format("商品[{0}]已成功建立", postback.Name);
                    return(RedirectToAction("Index"));
                }
            }
            ViewBag.ResultMessage = "資料有誤, 請檢查資料";
            return(View(postback));
        }
コード例 #6
0
        public ActionResult Delete(int id)
        {
            using (Models.CartsEntities db = new Models.CartsEntities())
            {
                var result = (from p in db.Products where p.Id == id select p).FirstOrDefault();
                if (result != default(Models.Product))
                {
                    db.Products.Remove(result);
                    db.SaveChanges();

                    TempData["ResultMessage"] = String.Format("商品{0}成功刪除", result.Name);
                    return(RedirectToAction("Index"));
                }
                TempData["ResultMessage"] = String.Format("商品資料有誤, 請重新操作");
                return(RedirectToAction("Index"));
            }
        }
コード例 #7
0
        [HttpPost] //指定只有使用POST方法才可進入
        public ActionResult Create(Models.Product postback)
        {
            if (this.ModelState.IsValid) //如果資料驗證成功
            {
                var userName = HttpContext.User.Identity.GetUserName();
                using (Models.CartsEntities db = new Models.CartsEntities())
                {
                    //將回傳資料postback加入至Products

                    var product = new Models.Product()
                    {
                        Name = postback.Name,

                        Price           = postback.Price,
                        CategoryId      = postback.CategoryId,
                        DefaultImageId  = postback.DefaultImageId,
                        DefaultImageURL = postback.DefaultImageURL,
                        Quantity        = postback.Quantity,
                        UserName        = userName,
                        Status          = postback.Status,
                        PublishDate     = postback.PublishDate,
                        Description     = postback.Description
                    };
                    db.Products.Add(product);

                    //儲存異動資料
                    db.SaveChanges();

                    //設定成功訊息
                    TempData["ResultMessage"] = String.Format("商品[{0}]成功建立", postback.Name);

                    //轉導Product/Index頁面
                    return(RedirectToAction("Index"));
                }
            }
            //失敗訊息
            ViewBag.ResultMessage = "資料有誤,請檢查";

            //停留在Create頁面
            return(View(postback));
        }
コード例 #8
0
 public ActionResult Delete(int id)
 {
     using (Models.CartsEntities db = new Models.CartsEntities())
     {
         var result = (from product in db.Products
                       where product.Id == id
                       select product).FirstOrDefault();
         if (result != default(Models.Product))
         {
             db.Products.Remove(result);
             db.SaveChanges();
             TempData["ResultMessage"] = String.Format("商品[{0}]刪除成功", result.Name);
             return(RedirectToAction("Index"));
         }
         else
         {
             TempData["ResultMessage"] = "此商品不存在";
             return(RedirectToAction("Index"));
         }
     }
 }
コード例 #9
0
 [HttpPost] //指定只有使用POST方法才可進入
 public ActionResult Create(Models.Product postback)
 {
     if (ModelState.IsValid) //如果資料驗證成功
     {
         using (Models.CartsEntities db = new Models.CartsEntities())
         {
             //將回傳資料postback加入至Products
             db.Products.Add(postback);
             //儲存異動資料
             db.SaveChanges();
             //設定成功訊息
             TempData["ResultMessage"] = String.Format("商品[{0}]成功建立", postback.Name);
             //轉導Product/Index頁面
             return(RedirectToAction("Index"));
         }
     }
     //失敗訊息
     ViewBag.ResultMessage = "資料有誤,請檢查";
     //停留在Create頁面
     return(View(postback));
 }
コード例 #10
0
        public ActionResult Delete(int id)
        {
            using (Models.CartsEntities db = new Models.CartsEntities())
            {
                var result = (from s in db.Products where s.Id == id select s).FirstOrDefault();
                if (result != default(Models.Product))//判斷此id是否有資料
                {
                    db.Products.Remove(result);

                    db.SaveChanges();

                    TempData["ResultMessage"] = String.Format("商品[{0}]成功刪除", result.Name);

                    return(RedirectToAction("Index"));
                }
                else
                {   //如果沒有資料則顯示錯誤訊息並導回index頁面
                    TempData["resultMessage"] = "指定資料不存在,無法刪除";
                    return(RedirectToAction("Index"));
                }
            }
        }
コード例 #11
0
        public ActionResult Delete(int id)
        {
            using (Models.CartsEntities db = new Models.CartsEntities())
            {
                // 取得 Product.Id 等於輸入 id 的資料
                var result = (from s in db.Products where s.Id == id select s).FirstOrDefault();
                if (result != default(Models.Product)) // 判斷此 id 是否有資料
                {
                    db.Products.Remove(result);

                    // 儲存所有變更
                    db.SaveChanges();

                    // 設定成功訊息,並導回 Index 頁面
                    TempData["ResultMessage"] = $"商品{result.Name}已成功刪除";
                    return(RedirectToAction("Index"));
                }

                // 如果沒有資料,顯示錯誤訊息,並將頁面導回 Index 頁面。
                TempData["ResultMessage"] = "指定資料不存在,無法刪除,請重新操作";
                return(RedirectToAction("Index"));
            }
        }
コード例 #12
0
        [Authorize] //登入會員才可留言
        public ActionResult AddComment(int id, string Content)
        {
            //取得目前登入使用者Id
            var userId = HttpContext.User.Identity.GetUserId();

            var currentDateTime = DateTime.Now;

            var comment = new Models.ProductCommet()
            {
                ProductId  = id,
                Content    = Content,
                UserId     = userId,
                CreateDate = currentDateTime
            };

            using (Models.CartsEntities db = new Models.CartsEntities())
            {
                db.ProductCommets.Add(comment);
                db.SaveChanges();
            }

            return(RedirectToAction("Details", new { id = id }));
        }
コード例 #13
0
        [HttpPost]  //限定使用POST
        public ActionResult AddComment(int id, string Content)
        {
            //取得目前登入使用者Id
            var userId = String.Format("{0}", Session["LoginName"]);

            var currentDateTime = DateTime.Now;

            var comment = new Models.ProductComments()
            {
                ProductId  = id.ToString(),
                Content    = Content,
                UserId     = userId,
                CreateDate = currentDateTime.ToString()
            };

            using (Models.CartsEntities db = new Models.CartsEntities())
            {
                db.ProductComments.Add(comment);
                db.SaveChanges();
            }

            return(RedirectToAction("Details", new { id = id }));
        }
コード例 #14
0
        public ActionResult Edit(Models.Product postback)
        {
            if (this.ModelState.IsValid)
            {
                using (Models.CartsEntities db = new Models.CartsEntities())
                {
                    var result = (from p in db.Products where p.Id == postback.Id select p).FirstOrDefault();

                    result.Name            = postback.Name; result.PublishDate = postback.PublishDate;
                    result.Price           = postback.Price; result.Quantity = postback.Quantity;
                    result.Status          = postback.Status; result.CategoryId = postback.CategoryId;
                    result.DefaultImageId  = postback.DefaultImageId;
                    result.Description     = postback.Description;
                    result.DefaultImageURL = postback.DefaultImageURL;

                    db.SaveChanges();

                    TempData["ResultMessage"] = String.Format("商品[{0}]已成功編輯", postback.Name);
                    return(RedirectToAction("Index"));
                }
            }
            return(View(postback));
        }
コード例 #15
0
        public ActionResult Create(Models.Product model)
        {
            if (!this.ModelState.IsValid) //如果資料驗證失敗
            {
                // 失敗訊息
                ViewBag.ResultMessage = "資料有誤,請檢查";

                // 停留在 Create 頁面,並保留原先填入資料。
                return(View(model));
            }

            using (Models.CartsEntities db = new Models.CartsEntities())
            {
                // 將回傳的資料 model,加入到 Products
                db.Products.Add(model);

                // 儲存異動的資料
                db.SaveChanges();

                TempData["ResultMessage"] = $"商品{model.Name}成功建立";

                return(RedirectToAction("Index"));
            }
        }
コード例 #16
0
ファイル: ProductController.cs プロジェクト: vstky/AresShop
        public ActionResult Delete(int id)
        {
            using (Models.CartsEntities db = new Models.CartsEntities())
            {
                //抓取Product.Id等於輸入id的資料
                var result = (from s in db.Products where s.Id == id select s).FirstOrDefault();
                if (result != default(Models.Product))    //判斷此id是否有資料
                {
                    db.Products.Remove(result);

                    //儲存所有變更
                    db.SaveChanges();

                    //設定成功訊息並導回index頁面
                    TempData["ResultMessage"] = String.Format("Succeed to delete product [{0}]", result.Name);
                    return(RedirectToAction("Index"));
                }
                else
                {   //如果沒有資料則顯示錯誤訊息並導回Index頁面
                    TempData["resultMessage"] = "Data does not exist,cannot remove it,please try it again";
                    return(RedirectToAction("Index"));
                }
            }
        }