Ejemplo n.º 1
0
        public ActionResult BuyNow(int id)
        {
            GetCart();
            var menu        = getMenuToday();
            var choosenMenu = menu.Find(men => men.FOOD_ID == id);
            var newItem     = new ORDER_DETAIL();

            newItem.MENU_ID    = choosenMenu.ID;
            newItem.MENU       = choosenMenu;
            newItem.QUANTITY   = 1;
            newItem.UNIT_PRICE = choosenMenu.PRICE;

            cart.Add(newItem);
            var hashtable = new Hashtable();

            foreach (var detail in cart)
            {
                if (hashtable[detail.MENU_ID] != null)
                {
                    (hashtable[detail.MENU_ID] as ORDER_DETAIL).QUANTITY += detail.QUANTITY;
                }
                else
                {
                    hashtable[detail.MENU_ID] = detail;
                }
            }
            cart.Clear();
            foreach (ORDER_DETAIL item in hashtable.Values)
            {
                cart.Add(item);
            }

            return(RedirectToAction("Cart"));
        }
Ejemplo n.º 2
0
        public void InsertDetailsFromCart(ORDERS Order, List <SHOPPING_CART> Cart, bool Attach = true)
        {
            if (Cart != null && Cart.Count > 0)
            {
                ORDER_DETAIL detail;
                foreach (SHOPPING_CART item in Cart)
                {
                    detail            = new ORDER_DETAIL();
                    detail.OrderID    = Order.ID;
                    detail.CampaignID = item.CampaignID;
                    detail.ProdAttrID = item.ProdAttrID;
                    detail.Quantity   = item.Quantity;

                    // first insert order
                    _orderDAO.InsertDetail(detail);

                    item.CAMPAIGN          = null;
                    item.CUSTOMER          = null;
                    item.PRODUCT_ATTRIBUTE = null;

                    //second remove the related cart item
                    _cartDAO.Delete(item, Attach);
                }
                Context.SaveChanges();
            }
        }
Ejemplo n.º 3
0
        public ActionResult PlaceOrder()
        {
            GetCart();
            if (cart.Count > 0)
            {
                var order = new ORDER();
                order.CUSTOMER_ID = (int)Session["customerId"];
                order.STATUS      = 1;
                model.ORDERs.Add(order);
                model.SaveChanges();

                var listOrderDetails = new List <ORDER_DETAIL>();
                for (int i = 0; i < cart.Count; i++)
                {
                    listOrderDetails.Add(cart[i]);
                    var temp = new ORDER_DETAIL();
                    temp.ORDER_ID   = order.ID;
                    temp.QUANTITY   = cart[i].QUANTITY;
                    temp.UNIT_PRICE = cart[i].UNIT_PRICE;
                    temp.MENU_ID    = cart[i].MENU_ID;
                    model.ORDER_DETAIL.Add(temp);
                    model.SaveChanges();
                }
                cart.Clear();
                var newOrder = new ORDER();
                newOrder.CUSTOMER = model.CUSTOMERs.Find(order.CUSTOMER_ID);
                newOrder.DATE     = DateTime.Now;

                ViewBag.listOrderDetails = listOrderDetails;
                return(View(newOrder));
            }
            return(RedirectToAction("Cart"));
        }
Ejemplo n.º 4
0
        public ActionResult AddToCart(int id)
        {
            var prod = from x in st.PRODUCTs
                       where x.Id == id
                       select x;

            ORDER_DETAIL newOrder = new ORDER_DETAIL();

            newOrder.PRODUCT  = prod.FirstOrDefault();
            newOrder.quantity = 1;

            if (Session["cart"] == null)
            {
                Session["cart"] = new List <ORDER_DETAIL>();
            }

            var item = (from x in (List <ORDER_DETAIL>)Session["cart"]
                        where x.product_id == id
                        select x).FirstOrDefault();

            if (item == null)
            {
                ((List <ORDER_DETAIL>)Session["cart"]).Add(newOrder);
            }
            else
            {
                item.quantity += 1;
            }


            return(RedirectToAction("ViewCart"));
        }
Ejemplo n.º 5
0
        public ActionResult DeleteConfirmed(int id)
        {
            GetShoppingCart();
            ORDER_DETAIL chiTietHD = model.ORDER_DETAIL.Find(id);

            model.ORDER_DETAIL.Remove(chiTietHD);
            model.SaveChanges();
            return(RedirectToAction("Index"));
        }
Ejemplo n.º 6
0
        /// <summary>
        /// Chuyển đối tượng DTO sang đối tượng Dữ liệu
        /// </summary>
        /// <param name="pOrderDetailsDTO"></param>
        /// <returns></returns>
        public static ORDER_DETAIL ToOrderDetail(OrderDetailDTO pOrderDetailDTO)
        {
            ORDER_DETAIL orderDetail = new ORDER_DETAIL();

            orderDetail.OrderId    = pOrderDetailDTO.OrderId;
            orderDetail.ItemId     = pOrderDetailDTO.ItemId;
            orderDetail.Quantity   = pOrderDetailDTO.Quantity;
            orderDetail.PriceOrder = pOrderDetailDTO.PriceOrder;
            return(orderDetail);
        }
Ejemplo n.º 7
0
        /// <summary>
        /// Chuyển đối tượng Dữ liệu sang đối tượng DTO
        /// </summary>
        /// <param name="pOrderDetail"></param>
        /// <returns></returns>
        public static OrderDetailDTO ToOrderDetailDTO(ORDER_DETAIL pOrderDetail)
        {
            OrderDetailDTO orderDetailDTO = new OrderDetailDTO();

            orderDetailDTO.OrderId    = pOrderDetail.OrderId;
            orderDetailDTO.ItemId     = pOrderDetail.ItemId;
            orderDetailDTO.Quantity   = (int)pOrderDetail.Quantity;
            orderDetailDTO.PriceOrder = (double)pOrderDetail.PriceOrder;
            return(orderDetailDTO);
        }
Ejemplo n.º 8
0
        public ActionResult DeleteId(int id)
        {
            List <ORDER_DETAIL> giohang = Session["ShoppingCart"] as List <ORDER_DETAIL>;
            ORDER_DETAIL        itemXoa = giohang.FirstOrDefault(m => m.FOOD.ID == id);

            if (itemXoa != null)
            {
                giohang.Remove(itemXoa);
            }
            return(RedirectToAction("Index"));
        }
Ejemplo n.º 9
0
 public bool Insert(ORDER_DETAIL detail)
 {
     try
     {
         db.ORDER_DETAIL.Add(detail);
         db.SaveChanges();
         return(true);
     }
     catch
     {
         return(false);
     }
 }
Ejemplo n.º 10
0
        private static void WriteBodyDettailOrder(ORDER_DETAIL orderDett, PdfPTable tblFattura, int count, Font itemsStyle, ref int nrItem)
        {
            PdfPCell cellFat;

            cellFat = new PdfPCell
            {
                Border              = Rectangle.NO_BORDER,
                BorderWidthBottom   = 1f,
                BorderColorBottom   = BaseColor.GRAY,
                HorizontalAlignment = 2
            };
            string info = string.Empty;

            switch (count)
            {
            case 2:
                info    = nrItem.ToString();
                nrItem += 1;
                break;

            case 3:
                info = String.Format(FashionZone.BL.Configuration.OrderNrFormatting, orderDett.ProdAttrID);
                break;

            case 4:
                info = orderDett.ProductNameWithSizeAndCode;
                break;

            case 5:
                info = CalcTvsh(orderDett.UnitPrice.Value);
                break;

            case 6:
                info = ConfigurationManager.AppSettings["TVSHPDF"];
                break;

            case 7:
                info = orderDett.UnitPrice.Value.ToString();
                break;

            case 8:
                info = orderDett.Quantity.ToString();
                break;

            case 9:
                info = (orderDett.UnitPrice * orderDett.Quantity).ToString();
                break;
            }
            cellFat.AddElement(new Phrase(info, itemsStyle));
            tblFattura.AddCell(cellFat);
        }
Ejemplo n.º 11
0
        protected void btnAdd_Click(object sender, EventArgs e)
        {
            ORDER_DETAIL obj = new ORDER_DETAIL();

            obj.PRODUCT_ID         = _product.PRODUCT_ID;
            obj.PRODUCT_PRICE      = Convert.ToDecimal(this.lblPriceProduct.Text);
            obj.PRODUCT_QTY        = Convert.ToInt32(this.txtQty.Text);
            obj.PRODUCT_TOTAL      = Convert.ToDecimal(this.lblPriceProduct.Text) * Convert.ToDecimal(this.txtQty.Text);
            obj.PRODUCT_SEND_QTY   = 0;
            obj.CREATE_DATE        = DateTime.Now;
            obj.CREATE_EMPLOYEE_ID = 0;
            obj.UPDATE_DATE        = DateTime.Now;
            obj.UPDATE_EMPLOYEE_ID = 0;
            obj.SYE_DEL            = true;
            obj.IS_FREE            = false;
            lstOrderDetail.Add(obj);

            int zoneID             = _store.ZONE_ID.Value;
            int productFree        = 0;
            int proQty             = obj.PRODUCT_QTY.Value;
            var cmd                = new ProductPromotionService();
            PRODUCT_PROMOTION cond = cmd.SelectByProductZone(obj.PRODUCT_ID, zoneID);

            if (cond != null)
            {
                for (productFree = 0; (proQty - cond.PRODUCT_CONDITION_QTY) >= 0; productFree += cond.PRODUCT_FREE_QTY.Value)
                {
                    proQty -= cond.PRODUCT_CONDITION_QTY.Value;
                }

                if (productFree != 0)
                {
                    ORDER_DETAIL objFree = new ORDER_DETAIL();
                    objFree.PRODUCT_ID         = _product.PRODUCT_ID;
                    objFree.PRODUCT_PRICE      = 0;
                    objFree.PRODUCT_QTY        = productFree;
                    objFree.PRODUCT_TOTAL      = 0;
                    objFree.PRODUCT_SEND_QTY   = 0;
                    objFree.CREATE_DATE        = DateTime.Now;
                    objFree.CREATE_EMPLOYEE_ID = 0;
                    objFree.UPDATE_DATE        = DateTime.Now;
                    objFree.UPDATE_EMPLOYEE_ID = 0;
                    objFree.SYE_DEL            = true;
                    objFree.IS_FREE            = true;
                    lstOrderDetail.Add(objFree);
                }
            }
            Response.Redirect("OrderProduct.aspx");
        }
Ejemplo n.º 12
0
        public JsonResult AddToCart(int idFood, int quantity)
        {
            var menu        = getMenuToday();
            var choosenMenu = menu.Find(men => men.FOOD_ID == idFood);

            if (choosenMenu != null)
            {
                if (choosenMenu.QUANTITY >= quantity)
                {
                    var newItem = new ORDER_DETAIL();
                    newItem.MENU_ID    = choosenMenu.ID;
                    newItem.MENU       = choosenMenu;
                    newItem.QUANTITY   = quantity;
                    newItem.UNIT_PRICE = choosenMenu.PRICE;

                    GetCart();
                    cart.Add(newItem);
                    var hashtable = new Hashtable();
                    foreach (var detail in cart)
                    {
                        if (hashtable[detail.MENU_ID] != null)
                        {
                            (hashtable[detail.MENU_ID] as ORDER_DETAIL).QUANTITY += detail.QUANTITY;
                        }
                        else
                        {
                            hashtable[detail.MENU_ID] = detail;
                        }
                    }
                    cart.Clear();
                    foreach (ORDER_DETAIL item in hashtable.Values)
                    {
                        cart.Add(item);
                    }

                    return(Json(new { success = true }, JsonRequestBehavior.AllowGet));
                }
                else
                {
                    return(Json(new { success = false, failQuantity = true }, JsonRequestBehavior.AllowGet));
                }
            }
            return(Json(new { success = false, failQuantity = false }, JsonRequestBehavior.AllowGet));
        }
Ejemplo n.º 13
0
 protected void lbtnSaveDetail_Click(object sender, EventArgs e)
 {
     try
     {
         var orderDetail = _OrderDetailRepo.GetByProductDetailId(Utils.CIntDef(ddlProductDetail.SelectedValue), Utils.CIntDef(ddlProductDetailSize.SelectedValue), id);
         if (orderDetail != null)
         {
             orderDetail.ORDER_ID               = id;
             orderDetail.PRODUCT_DETAIL_ID      = Utils.CIntDef(ddlProductDetail.SelectedValue);
             orderDetail.PRODUCT_DETAIL_SIZE_ID = Utils.CIntDef(ddlProductDetailSize.SelectedValue);
             orderDetail.QUANTITY               = Utils.CIntDef(txtQuantity.Text.Replace(",", ""));
             orderDetail.PRICE    = Utils.CIntDef(txtPrice.Text.Replace(",", ""));
             orderDetail.SUBTOTAL = Utils.CIntDef(txtQuantity.Text.Replace(",", "")) * Utils.CIntDef(txtPrice.Text.Replace(",", ""));
             orderDetail.COLOR1   = ColorEdit1.Text;
             orderDetail.COLOR2   = txtColor2.Text;
             _OrderDetailRepo.Update(orderDetail);
         }
         else
         {
             orderDetail                        = new ORDER_DETAIL();
             orderDetail.ORDER_ID               = id;
             orderDetail.PRODUCT_DETAIL_ID      = Utils.CIntDef(ddlProductDetail.SelectedValue);
             orderDetail.PRODUCT_DETAIL_SIZE_ID = Utils.CIntDef(ddlProductDetailSize.SelectedValue);
             orderDetail.QUANTITY               = Utils.CIntDef(txtQuantity.Text.Replace(",", ""));
             orderDetail.PRICE                  = Utils.CIntDef(txtPrice.Text.Replace(",", ""));
             orderDetail.SUBTOTAL               = Utils.CIntDef(txtQuantity.Text.Replace(",", "")) * Utils.CIntDef(txtPrice.Text.Replace(",", ""));
             orderDetail.COLOR1                 = ColorEdit1.Text;
             orderDetail.COLOR2                 = txtColor2.Text;
             _OrderDetailRepo.Create(orderDetail);
         }
         Response.Redirect("chi-tiet-don-hang.aspx?id=" + id + "&activetab=" + 1);
     }
     catch
     {
     }
 }
Ejemplo n.º 14
0
        public ActionResult XacNhanDatHang(FormCollection form)
        {
            // Kiểm tra giỏ hàng đã tồn tại chưa
            if (Session["Cart"] == null)
            {
                return(RedirectToAction("Index", "Home"));
            }
            ACCOUNT  account;
            CUSTOMER cus;

            // Xử lý khi mua hàng không đăng nhập
            if (Session["ACCOUNT"] == null)
            {
                // Thêm khách hàng vào bảng khách hàng
                cus = new CUSTOMER();
                cus.CUSTOMER_FIRSTNAME = form["firstName"].ToString();
                cus.CUSTOMER_LASTNAME  = form["lastName"].ToString();
                cus.CUSTOMER_ADDRESS   = form["address"].ToString();
                cus.PHONE = form["phone"].ToString();
                db.CUSTOMERs.Add(cus);
                db.SaveChanges();

                // Thêm đơn hàng
                ORDER order = new ORDER();
                order.CUSTOMER_ID  = cus.CUSTOMER_ID;
                order.SHIP_ADDRESS = form["address"].ToString();
                order.PHONE        = form["phone"].ToString();
                order.CREATE_DATE  = DateTime.Now;
                // Payment
                //////////////////////////////////
                // Đang xác nhận đơn hàng
                order.STATUS_ID = 1;
                order.TOTAL     = (double)TongTien();
                db.ORDERS.Add(order);
                db.SaveChanges();

                // Thêm chi tiết đơn hàng
                List <ItemGioHang> lstGioHang = LayGioHang();
                foreach (var item in lstGioHang)
                {
                    // Tạo chi tiết đơn đặt hàng
                    ORDER_DETAIL order_detail = new ORDER_DETAIL();
                    // Gán mã đơn hàng vừa tạo cho các chi tiết đơn hàng
                    order_detail.ORDER_ID   = order.ORDER_ID;
                    order_detail.PRODUCT_ID = item.MaSP;
                    order_detail.QUANTITY   = item.SoLuong;
                    order_detail.PRICE      = (double)item.DonGia;
                    db.ORDER_DETAIL.Add(order_detail);
                }
                db.SaveChanges();
            }
            // Xửa lý khi mua hàng đã đăng nhập
            else
            {
                // Lấy thông tin khách hàng từ session đã đăng nhập
                account = Session["ACCOUNT"] as ACCOUNT;

                // Thêm khách hàng vào bảng khách hàng
                cus = new CUSTOMER();
                cus.CUSTOMER_FIRSTNAME = form["firstName"].ToString();
                cus.CUSTOMER_LASTNAME  = form["lastName"].ToString();
                cus.CUSTOMER_ADDRESS   = form["address"].ToString();
                cus.PHONE      = form["phone"].ToString();
                cus.ACCOUNT_ID = account.ACCOUNT_ID;
                db.CUSTOMERs.Add(cus);
                db.SaveChanges();

                // Thêm đơn hàng
                ORDER order = new ORDER();
                order.CUSTOMER_ID  = cus.CUSTOMER_ID;
                order.SHIP_ADDRESS = form["address"].ToString();
                order.PHONE        = form["phone"].ToString();
                order.CREATE_DATE  = DateTime.Now;
                // Payment
                //////////////////////////////////
                // Đang xác nhận đơn hàng
                order.STATUS_ID = 1;
                order.TOTAL     = (double)TongTien();
                db.ORDERS.Add(order);
                db.SaveChanges();

                // Thêm chi tiết đơn hàng
                List <ItemGioHang> lstGioHang = LayGioHang();
                foreach (var item in lstGioHang)
                {
                    // Tạo chi tiết đơn đặt hàng
                    ORDER_DETAIL order_detail = new ORDER_DETAIL();
                    // Gán mã đơn hàng vừa tạo cho các chi tiết đơn hàng
                    order_detail.ORDER_ID   = order.ORDER_ID;
                    order_detail.PRODUCT_ID = item.MaSP;
                    order_detail.QUANTITY   = item.SoLuong;
                    order_detail.PRICE      = (double)item.DonGia;
                    db.ORDER_DETAIL.Add(order_detail);
                }
                db.SaveChanges();
            }

            Session["Cart"] = null;
            return(RedirectToAction("Index", "Cart"));
        }
Ejemplo n.º 15
0
 public OrderDetailService(ORDER_DETAIL item)
 {
     _item = item;
 }
Ejemplo n.º 16
0
 public void InsertDetail(ORDER_DETAIL Detail)
 {
     Context.ORDER_DETAIL.AddObject(Detail);
 }