public ActionResult Feature(int[] cartdetailid, int[] quantity, string coupon)
 {
     using (var db = new Context())
     {
         if (checkLogin() == false)
         {
             if (Session["Cart"] != null)
             {
                 List <ChiTietGioHang> feature = new List <ChiTietGioHang>();
                 feature = (List <ChiTietGioHang>)Session["Cart"];
                 int index = 0;
                 foreach (var updatequantity in feature)
                 {
                     //if (updatequantity.mactgiohang == cartdetailid)
                     //{
                     updatequantity.soluong = quantity[index];
                     var a = db.SanPham.Where(s => s.masanpham == updatequantity.masanpham).FirstOrDefault();
                     updatequantity.thanhtien = updatequantity.soluong * a.gia;
                     //}
                     index++;
                 }
                 return(RedirectToAction("Feature", "TMDT"));
             }
             else
             {
                 return(RedirectToAction("Feature", "TMDT"));
             }
         }
         else
         {
             int userid = Convert.ToInt32(Session["id"]);
             int index  = 0;
             foreach (var c in cartdetailid)
             {
                 var    findcart = db.ChiTietGioHang.Where(s => s.mactgiohang == c && s.makh == userid).FirstOrDefault();
                 var    price    = db.SanPham.Where(s => s.masanpham == findcart.masanpham).FirstOrDefault();
                 double summary  = price.gia * quantity[index];
                 ChiTietGioHangAction.UpdateCTGioHang(findcart.mactgiohang, quantity[index], summary);
                 index++;
             }
             if (coupon != "")
             {
                 var discount = db.Coupon.Where(s => s.tencoupon == coupon && s.check == false && s.makh == userid).FirstOrDefault();
                 if (discount != null)
                 {
                     double totalsummary       = Convert.ToDouble(Session["TotalSummary"]);
                     double pricediscount      = totalsummary * discount.phantramgiam;
                     double updatetotalsummary = totalsummary - pricediscount;
                     TempData["TotalSummaryUPDATE"] = updatetotalsummary;
                     TempData["Coupon"]             = discount.tencoupon;
                 }
             }
             //double price = findcart.thanhtien / findcart.soluong;
             //ChiTietGioHangAction.UpdateCTGioHang(findcart.mactgiohang, quantity, price * quantity);
             return(RedirectToAction("Feature", "TMDT"));
         }
     }
 }
        public ActionResult Buy(string coupon, string phuongthucthanhtoan, string phuongthucvanchuyen)
        {
            using (var db = new Context())
            {
                if (checkLogin() == true)
                {
                    //string coupon = TempData["Coupon"].ToString();
                    int userid     = Convert.ToInt32(Session["id"]);
                    var timkiem    = db.Coupon.Where(s => s.makh == userid && s.tencoupon == coupon && s.check == false).FirstOrDefault();
                    var ctgiohang  = ChiTietGioHangAction.ListCTGioHang();
                    var ctgiohang1 = ctgiohang.Where(s => s.isdeleted == false && s.makh == userid);
                    if (timkiem != null)
                    {
                        //Cần sửa lại giá tiền nếu áp coupon
                        Coupon.CheckCoupon(timkiem.macoupon);
                        foreach (var valueindex in ctgiohang1)
                        {
                            LichSuMuaHang.addLSMuaHang(valueindex.makh, valueindex.masanpham, valueindex.soluong, valueindex.thanhtien);
                            ChiTietGioHangAction.XoaChiTietGioHang(valueindex.mactgiohang);
                        }
                    }
                    else
                    {
                        foreach (var valueindex in ctgiohang1)
                        {
                            LichSuMuaHang.addLSMuaHang(valueindex.makh, valueindex.masanpham, valueindex.soluong, valueindex.thanhtien);
                            ChiTietGioHangAction.XoaChiTietGioHang(valueindex.mactgiohang);
                        }
                    }
                }
                else
                {
                    Session.Remove("Cart");
                }

                return(RedirectToAction("Feature", "TMDT"));
            }
        }
 public ActionResult Login(string email, string password)
 {
     using (var db = new Context())
     {
         var login = (from a in db.KhachHang
                      where a.email == email && a.matkhau == password
                      select a).ToList();
         if (login.Count() != 0)
         {
             var quyen = (from a in db.KhachHang
                          where a.email == email && a.matkhau == password
                          select a.quyen).FirstOrDefault();
             var id = (from a in db.KhachHang
                       where a.email == email && a.matkhau == password
                       select a.makh).FirstOrDefault();
             var ten = (from a in db.KhachHang
                        where a.email == email && a.matkhau == password
                        select a.ten).FirstOrDefault();
             Session.Add("id", id.ToString());
             Session.Add("taikhoan", email);
             Session.Add("matkhau", password);
             Session.Add("quyen", quyen.ToString());
             Session.Add("ten", ten.ToString());
             var appear = (from a in db.GioHang
                           where a.makh == id
                           select a).ToList();
             var appearproduct = ChiTietGioHangAction.ListCTGioHang();
             if (Session["Cart"] != null)
             {
                 if (appear.Count == 0)
                 {
                     GioHangAction.addGioHang(id, ten);
                     List <ChiTietGioHang> addCart = new List <ChiTietGioHang>();
                     addCart = (List <ChiTietGioHang>)Session["Cart"];
                     foreach (var a in addCart)
                     {
                         foreach (var b in appearproduct)
                         {
                             if (a.mactgiohang != b.mactgiohang)
                             {
                                 ChiTietGioHangAction.addCTGioHang(id, a.masanpham, a.soluong, a.thanhtien);
                             }
                             else
                             {
                                 ChiTietGioHangAction.DaTonTai(a.mactgiohang, a.soluong, a.thanhtien);
                             }
                         }
                     }
                     Session.Remove("Cart");
                 }
                 else
                 {
                     List <ChiTietGioHang> addCart = new List <ChiTietGioHang>();
                     addCart = (List <ChiTietGioHang>)Session["Cart"];
                     ChiTietGioHang findproduct = new ChiTietGioHang();
                     foreach (var a in addCart)
                     {
                         foreach (var b in appearproduct)
                         {
                             if (b.makh == id && b.masanpham == a.masanpham)
                             {
                                 findproduct = new ChiTietGioHang {
                                     mactgiohang = b.mactgiohang, makh = b.makh, masanpham = b.masanpham, soluong = b.soluong, thanhtien = b.thanhtien
                                 };
                             }
                         }
                         if (findproduct.masanpham == 0)
                         {
                             ChiTietGioHangAction.addCTGioHang(id, a.masanpham, a.soluong, a.thanhtien);
                         }
                         else if (findproduct != null)
                         {
                             ChiTietGioHangAction.DaTonTai(findproduct.mactgiohang, a.soluong, a.thanhtien);
                         }
                     }
                     Session.Remove("Cart");
                 }
             }
             else
             {
                 if (appear.Count == 0)
                 {
                     GioHangAction.addGioHang(id, ten);
                 }
             }
             if (quyen.ToString() == "User")
             {
                 return(RedirectToAction("Home", "TMDT"));
             }
             else
             {
                 return(RedirectToAction("DashBoard", "TMDT"));
             }
         }
         else
         {
             TempData["ErrorLogin"] = "******";
             return(RedirectToAction("Login", "TMDT"));
         }
     }
 }
 public ActionResult addCart(int productid, int quantity)
 {
     using (var db = new Context())
     {
         if (checkLogin() == false)
         {
             var    cart    = SanPhamAction.FindSanPham(productid);
             double summary = quantity * cart.gia;
             //var appear = (from a in listcartdetail
             //              where a.masanpham == productid && a.isdeleted == false
             //              select a).ToList();
             if (Session["Cart"] == null)
             {
                 List <ChiTietGioHang> listcartdetail = new List <ChiTietGioHang>();
                 ChiTietGioHang        cartdetail     = new ChiTietGioHang {
                     mactgiohang = listcartdetail.Count + 1, makh = 1, masanpham = productid, soluong = quantity, thanhtien = summary
                 };
                 listcartdetail.Add(cartdetail);
                 Session["Cart"] = listcartdetail;
             }
             else
             {
                 List <ChiTietGioHang> listcartdetail = new List <ChiTietGioHang>();
                 listcartdetail = (List <ChiTietGioHang>)Session["Cart"];
                 var appear = (from a in listcartdetail
                               where a.masanpham == productid && a.isdeleted == false
                               select a).ToList();
                 if (appear.Count == 0)
                 {
                     ChiTietGioHang cartdetail = new ChiTietGioHang {
                         mactgiohang = listcartdetail.Count + 1, makh = 1, masanpham = productid, soluong = quantity, thanhtien = summary
                     };
                     listcartdetail.Add(cartdetail);
                     Session["Cart"] = listcartdetail;
                 }
                 else
                 {
                     foreach (var productappear in listcartdetail)
                     {
                         if (productappear.masanpham == productid)
                         {
                             productappear.soluong   = productappear.soluong + quantity;
                             productappear.thanhtien = productappear.thanhtien + summary;
                         }
                     }
                     Session["Cart"] = listcartdetail;
                 }
             }
         }
         else
         {
             int    userid  = Convert.ToInt32(Session["id"]);
             var    appear  = db.ChiTietGioHang.Where(s => s.masanpham == productid && s.makh == userid).ToList();
             var    cart    = SanPhamAction.FindSanPham(productid);
             double summary = cart.gia * quantity;
             if (appear.Count == 0)
             {
                 ChiTietGioHangAction.addCTGioHang(userid, productid, quantity, summary);
             }
             else
             {
                 ChiTietGioHangAction.DaTonTai(appear[0].mactgiohang, quantity, summary);
             }
         }
         return(RedirectToAction("Feature", "TMDT"));
     }
 }