public IActionResult AddOrder(string account_id, string fullname, string address, string email, string tel, string city) { var gioHang = SessionHelper.Get <List <CartItem> >(HttpContext.Session, "cart"); if (gioHang == null || gioHang.Count() == 0) { ViewBag.Success = false; } else { KhachHang newKh = new KhachHang { TenKhachHang = fullname, DiaChi = address, Email = email, SoDt = tel, MaTinhThanh = int.Parse(city) }; db.KhachHang.Add(newKh); db.SaveChanges(); GioHang newOrder = new GioHang { MaKhachHang = newKh.MaKhachHang, NgayDat = DateTime.Now, TrangThai = 0 }; if (account_id != null) { newOrder.MaTaiKhoan = int.Parse(account_id); } db.GioHang.Add(newOrder); db.SaveChanges(); var cart = SessionHelper.Get <List <CartItem> >(HttpContext.Session, "cart"); foreach (var item in cart) { ChiTietGioHang newDetail = new ChiTietGioHang { MaGioHang = newOrder.MaGioHang, MaThucDon = item.MaThucDon, SoLuong = item.SoLuong }; db.ChiTietGioHang.Add(newDetail); db.SaveChanges(); } HttpContext.Session.Remove("cart"); ViewBag.Success = true; } ViewBag.City = (from tt in db.TinhThanh select tt); gioHang = SessionHelper.Get <List <CartItem> >(HttpContext.Session, "cart"); ViewBag.Cart = gioHang; if (gioHang != null) { ViewBag.Total = gioHang.Sum(x => x.SoLuong * x.GiaBan); } else { ViewBag.Total = 0; } return(View("Index")); }
public ActionResult ThanhToan(string shipName, string mobile, string address, string hinhthuctt) { var giohang = new GioHang(); giohang.NgayThang = DateTime.Now; giohang.DiaChi = address; giohang.SDT = mobile; giohang.TenNguoiDung = shipName; giohang.HinhThucThanhToan = hinhthuctt; try { var id = new CartF().Insert(giohang); var cart = (Cart)Session[CartSession]; var ctghF = new CartDetailF(); foreach (var it in cart.Lines) { var ctgh = new ChiTietGioHang(); ctgh.MaGioHang = id; ctgh.MaSanPham = it.SanPham.MaSanPham; ctgh.Duong = it.Duong; ctgh.Da = it.Da; ctgh.Topping = it.Topping; ctgh.DonGia = it.SanPham.DonGia; ctgh.SoLuong = it.Quantity; ctghF.Insert(ctgh); } } catch (Exception ex) { return(Redirect("/loi-thanh-toan")); } return(Redirect("/hoan-thanh")); }
public ActionResult ThanhToan(string shipName, string mobile, string address) { var giohang = new GioHang(); giohang.NgayThang = DateTime.Now; giohang.DiaChi = address; giohang.SDT = mobile; giohang.TenNguoiDung = shipName; try { var id = new GioHangDao().Insert(giohang); var GioHang = (List <GioHangIT>)Session[GioHangSession]; var ctghDao = new ChiTietGioHangDao(); foreach (var it in GioHang) { var ctgh = new ChiTietGioHang(); ctgh.MaGiay = it.Giay.MaGiay; ctgh.MaGioHang = id; ctgh.DonGia = it.Giay.DonGia; ctgh.SoLuong = it.SoLuong; ctghDao.Insert(ctgh); } } catch (Exception ex) { return(Redirect("/loi-thanh-toan")); } return(Redirect("/hoan-thanh")); }
public ActionResult DeleteConfirmed(long id) { ChiTietGioHang chiTietGioHang = db.ChiTietGioHangs.Find(id); db.ChiTietGioHangs.Remove(chiTietGioHang); db.SaveChanges(); return(RedirectToAction("Index")); }
public void ThemChiTiet(ChiTietGioHang ct) { try { db.ChiTietGioHangs.Add(ct); db.SaveChanges(); } catch (Exception) { } }
public ActionResult Edit([Bind(Include = "MaChiTietGioHang,MaGioHang,MaSanPham,Duong,Da,Topping,DonGia,SoLuong")] ChiTietGioHang chiTietGioHang) { if (ModelState.IsValid) { db.Entry(chiTietGioHang).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.MaGioHang = new SelectList(db.GioHangs, "MaGioHang", "HinhThucThanhToan", chiTietGioHang.MaGioHang); ViewBag.MaSanPham = new SelectList(db.SanPhams, "MaSanPham", "TenSanPham", chiTietGioHang.MaSanPham); return(View(chiTietGioHang)); }
public ActionResult Edit([Bind(Include = "CTGioHangId,PhiGiaoDich,ThanhTien,GioHangId,SanPhamId")] ChiTietGioHang chiTietGioHang) { if (ModelState.IsValid) { db.Entry(chiTietGioHang).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.GioHangId = new SelectList(db.gioHangs, "GioHangId", "GioHangId", chiTietGioHang.GioHangId); ViewBag.SanPhamId = new SelectList(db.sanPhams, "SanPhamId", "TenSanPham", chiTietGioHang.SanPhamId); return(View(chiTietGioHang)); }
public ActionResult Edit([Bind(Include = "MaChiTietGioHang,MaSanPham,OrderID,SoLuong")] ChiTietGioHang chiTietGioHang) { if (ModelState.IsValid) { db.Entry(chiTietGioHang).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.OrderID = new SelectList(db.Orders, "OrderID", "OrderID", chiTietGioHang.OrderID); ViewBag.MaSanPham = new SelectList(db.SanPhams, "MaSanPham", "TenSanPham", chiTietGioHang.MaSanPham); return(View(chiTietGioHang)); }
public bool Insert(ChiTietGioHang ctgh) { try { db.ChiTietGioHangs.Add(ctgh); db.SaveChanges(); return(true); } catch { return(false); } }
public ActionResult Checkout(string name, string phone, string email, string address) { try { var lstItemInCart = Session["CART_SESSION"] as List<CartItem>; var user = Session["USER_SESSION"] as Khachhang; decimal tongtien = 0; if (lstItemInCart != null) { Giohangkh hoaDon = new Giohangkh(); hoaDon.Makh = user.Makh; hoaDon.Ngaymua = DateTime.Now; List<int> tempList = new List<int>(); foreach (var item in lstItemInCart) { tongtien += item.Product.Dongia.Value * item.Quantity; tempList.Add(item.Product.Masach); ChiTietGioHang chiTiet = new ChiTietGioHang(); chiTiet.GiohangkhID = hoaDon.GiohangkhID; chiTiet.Masach = item.Product.Masach; chiTiet.Soluong = item.Quantity; chiTiet.Thanhtien = item.Product.Dongia.Value * item.Quantity; db.ChiTietGioHangs.Add(chiTiet); } hoaDon.Tongtien = tongtien; db.Giohangkhs.Add(hoaDon); db.SaveChanges(); // remove session int[] rmList = tempList.ToArray(); foreach (var item in rmList) { var productRemoved = lstItemInCart.Single(x => x.Product.Masach == item); lstItemInCart.Remove(productRemoved); } } Session["CART_SESSION"] = lstItemInCart; return Json(new { status = true }); } catch (Exception ex) { return Json(new { status = false }); } }
// GET: Admin/ChiTietGioHangs/Details/5 public ActionResult Details(long?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ChiTietGioHang chiTietGioHang = db.ChiTietGioHangs.Find(id); if (chiTietGioHang == null) { return(HttpNotFound()); } return(View(chiTietGioHang)); }
// GET: Admin/ChiTietGioHangs/Edit/5 public ActionResult Edit(long?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ChiTietGioHang chiTietGioHang = db.ChiTietGioHangs.Find(id); if (chiTietGioHang == null) { return(HttpNotFound()); } ViewBag.MaGioHang = new SelectList(db.GioHangs, "MaGioHang", "HinhThucThanhToan", chiTietGioHang.MaGioHang); ViewBag.MaSanPham = new SelectList(db.SanPhams, "MaSanPham", "TenSanPham", chiTietGioHang.MaSanPham); return(View(chiTietGioHang)); }
// GET: ChiTietGioHangs/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ChiTietGioHang chiTietGioHang = db.ChiTietGioHangs.Find(id); if (chiTietGioHang == null) { return(HttpNotFound()); } ViewBag.OrderID = new SelectList(db.Orders, "OrderID", "OrderID", chiTietGioHang.OrderID); ViewBag.MaSanPham = new SelectList(db.SanPhams, "MaSanPham", "TenSanPham", chiTietGioHang.MaSanPham); return(View(chiTietGioHang)); }
// GET: ChiTietGioHangs/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ChiTietGioHang chiTietGioHang = db.chiTietGioHangs.Find(id); if (chiTietGioHang == null) { return(HttpNotFound()); } ViewBag.GioHangId = new SelectList(db.gioHangs, "GioHangId", "GioHangId", chiTietGioHang.GioHangId); ViewBag.SanPhamId = new SelectList(db.sanPhams, "SanPhamId", "TenSanPham", chiTietGioHang.SanPhamId); return(View(chiTietGioHang)); }
public ActionResult ThanhToan1(Models.KhachHangDTO kh) { ShopingCart cart = (ShopingCart)Session[shop]; List <ItemCart> li = new List <ItemCart>(); li = cart.listItem; ViewBag.tongtien = cart.TotalMoney(); ViewBag.soluong = cart.TotalAmmount(); if (ModelState.IsValid) { KhachHang kh1 = new KhachHang(); kh1.tenkhachhang = kh.tenkhachhang; kh1.diachi = kh.diachi; kh1.email = kh.email; kh1.sodienthoai = kh.sodienthoai; KhachHangDao khDAo = new KhachHangDao(); int makhachhang1 = khDAo.ThemKhachHang(kh1); GioHang gh = new GioHang(); gh.makhachhang = makhachhang1; gh.ngaydathang = DateTime.Today; gh.tinhtranggiaohang = false; gh.tongtien = cart.TotalMoney(); GioHangDAO ghDao = new GioHangDAO(); int magiohang = ghDao.ThemGioHang(gh); foreach (ItemCart item in li) { ChiTietGioHang ct = new ChiTietGioHang() { magiohang = magiohang, masanpham = item.sanpham.masanpham, soluong = item.soluong, thanhtien = item.soluong * (item.sanpham.giaban) }; ChiTietGioHangDAO ctDao = new ChiTietGioHangDAO(); ctDao.ThemChiTiet(ct); } Session[shop] = null; return(View("Success")); } else { return(View("ThanhToan", li)); } }
public ActionResult Confirm(int?maGH) { Order order = db.Orders.FirstOrDefault(m => m.OrderID == maGH); XacNhanDonHang tmp = new XacNhanDonHang(); tmp.MaKH = order.MaKH; tmp.VoucherID = order.VoucherID; tmp.TongTien = order.TongTien; tmp.TinhTrang = "Đã Xác Nhận"; tmp.DiaChi = order.DiaChi; tmp.SDT = order.SDT; tmp.HoTen = order.HoTen; tmp.NgayXacNhan = DateTime.Now; db.XacNhanDonHangs.Add(tmp); db.SaveChanges(); var chiTietGioHang = db.ChiTietGioHangs.Where(s => s.OrderID == maGH).ToList(); foreach (var item in chiTietGioHang) { OrderConfirmedDetail orderConfirmedDetail = new OrderConfirmedDetail(); orderConfirmedDetail.MaSanPham = item.MaSanPham; orderConfirmedDetail.SoLuong = item.SoLuong; orderConfirmedDetail.MaDonHang = tmp.MaDonHang; orderConfirmedDetail.TinhTrang = tmp.TinhTrang; orderConfirmedDetail.NgayXacNhan = DateTime.Now; db.OrderConfirmedDetails.Add(orderConfirmedDetail); db.SaveChanges(); ChiTietGioHang chiTietGioHangXoa = db.ChiTietGioHangs.FirstOrDefault(m => m.OrderID == maGH); db.ChiTietGioHangs.Remove(chiTietGioHangXoa); db.SaveChanges(); } Order deleteOrder = db.Orders.Find(maGH); db.Orders.Remove(deleteOrder); db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Addcart(int sp, int quantity) { try { var temp = db.SanPhams.Find(sp); var index = Kiemtratontai(sp); if (index == -1) { var tam = new ChiTietGioHang(); tam.sanPham = temp; tam.Soluong = quantity; ManagerObiect.getIntance().giohang.addCart(tam); } else { ManagerObiect.getIntance().giohang.getGiohang()[index].Soluong += quantity; } return(PartialView("Addcart1", ManagerObiect.getIntance().giohang)); } catch (Exception e) { return(Json("faill")); } }
public ActionResult Addcart(string sp, int quantity) { try { var temp = db.SPHAMs.Find(sp); int index = Kiemtratontai(sp); if (index == -1) { ChiTietGioHang tam = new ChiTietGioHang(); tam.sanpham = temp; tam.soluong = quantity; ManagerObject.getIntance().giohang.addCart(tam); } else { ManagerObject.getIntance().giohang.getGiohang()[index].soluong += quantity; } return(PartialView("Cart", ManagerObject.getIntance().giohang)); } catch (Exception) { return(Json("fail")); } }
public ActionResult ThanhToan1(KhachHangDTO khachHangDTO) { var sess = (Areas.Admin.Models.TaiKhoan)Session["UserLogin"]; ShoppingCart cart = (ShoppingCart)Session[shop]; List <ItemCart> li = new List <ItemCart>(); li = cart.dsItemCart; ViewBag.tongtien = cart.TotalMoney(); ViewBag.soluong = cart.TotalAmount(); if (ModelState.IsValid) { if (sess == null) { KhachHang kh = new KhachHang(); KhachHangDAO khachHangDAO = new KhachHangDAO(); kh.MaKH = khachHangDAO.GetMaxMKH(); kh.TenKh = khachHangDTO.TenKH; kh.SoDT = khachHangDTO.SoDT; kh.Email = khachHangDTO.Email; kh.DiaChi = khachHangDTO.DiaChi; string MaKH = khachHangDAO.ThemKhachHang(kh); GioHang gioHang = new GioHang(); GioHangDAO gioHangDAO = new GioHangDAO(); gioHang.MaGH = gioHangDAO.getMaGH(); gioHang.MaKH = MaKH; gioHang.NgayDatHang = DateTime.Today; gioHang.TinhTrang = false; gioHang.TongTien = cart.TotalMoney(); string MaGH = gioHangDAO.ThemGioHang(gioHang); foreach (ItemCart item in li) { ChiTietGioHang chiTietGioHang = new ChiTietGioHang() { MaGH = MaGH, MaSach = item.sach.MaSach, SoLuong = item.SoLuong, GiaTien = item.SoLuong * (item.sach.GiaTien) }; ChiTietGioHangDAO chiTietGioHangDAO = new ChiTietGioHangDAO(); chiTietGioHangDAO.Them(chiTietGioHang); } Session[shop] = null; return(View("Success")); } else { GioHang gioHang = new GioHang(); GioHangDAO gioHangDAO = new GioHangDAO(); gioHang.MaGH = gioHangDAO.getMaGH(); gioHang.MaKH = sess.MaKH; gioHang.NgayDatHang = DateTime.Today; gioHang.TinhTrang = false; gioHang.TongTien = cart.TotalMoney(); string MaGH = gioHangDAO.ThemGioHang(gioHang); foreach (ItemCart item in li) { ChiTietGioHang chiTietGioHang = new ChiTietGioHang() { MaGH = MaGH, MaSach = item.sach.MaSach, SoLuong = item.SoLuong, GiaTien = item.SoLuong * (item.sach.GiaTien) }; ChiTietGioHangDAO chiTietGioHangDAO = new ChiTietGioHangDAO(); chiTietGioHangDAO.Them(chiTietGioHang); } Session[shop] = null; return(View("Success")); } } else { return(View("ThanhToan", li)); } }
public ActionResult LienHe() { string name = Request.Form["userName"]; string email = Request.Form["userEmail"]; string phone = Request.Form["userPhone"]; string msg = Request.Form["userMsg"]; var lstItemInCart = Session["CART_SESSION"] as List <CartItem>; var user = Session["USER_SESSION"] as Khachhang; decimal tongtien = 0; #region Phần gửi mail string mailFrom = "*****@*****.**"; string passMail = "nhom8congngheweb1234"; NetworkCredential basicCredential = new NetworkCredential(mailFrom, passMail); SmtpClient client = new SmtpClient("smtp.gmail.com", 25); MailMessage mail = new MailMessage(); client.EnableSsl = true; client.UseDefaultCredentials = false; client.Credentials = basicCredential; // Mail gui if (email != null) { mail.From = new MailAddress(mailFrom); mail.CC.Add(new MailAddress(email.ToLower())); mail.Subject = "Thanks for your suggestions! We review and contact back soon"; string body = "Bạn đã mua những sách sau <br>"; if (lstItemInCart != null) { //add to database Giohangkh hoaDon = new Giohangkh(); hoaDon.Makh = user.Makh; hoaDon.Ngaymua = DateTime.Now; db.Giohangkhs.Add(hoaDon); db.SaveChanges(); // add to database and write mail content List <int> tempList = new List <int>(); foreach (var item in lstItemInCart) { body += "- " + item.Product.Tensach + ". Đơn giá: " + item.Product.Dongia + ". Số lượng: " + item.Quantity + " <br>"; tongtien += item.Product.Giakm == null ? item.Product.Dongia.Value * item.Quantity : item.Product.Giakm.Value * item.Quantity; tempList.Add(item.Product.Masach); ChiTietGioHang chiTiet = new ChiTietGioHang(); chiTiet.GiohangkhID = hoaDon.GiohangkhID; chiTiet.Masach = item.Product.Masach; chiTiet.Soluong = item.Quantity; chiTiet.Thanhtien = item.Product.Giakm == null ? item.Product.Dongia.Value * item.Quantity : item.Product.Giakm.Value * item.Quantity; db.ChiTietGioHangs.Add(chiTiet); } body += "Tổng tiền thanh toán là: " + tongtien; hoaDon.Tongtien = tongtien; db.SaveChanges(); // remove session int[] rmList = tempList.ToArray(); foreach (var item in rmList) { var productRemoved = lstItemInCart.Single(x => x.Product.Masach == item); lstItemInCart.Remove(productRemoved); } } Session["CART_SESSION"] = lstItemInCart; mail.Body = body; mail.IsBodyHtml = true; mail.SubjectEncoding = System.Text.Encoding.UTF8; mail.BodyEncoding = System.Text.Encoding.UTF8; try { client.Send(mail); //isSent = true; } catch (Exception e) { } } #endregion return(RedirectToAction("Index", "Home")); }
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")); } }
public ActionResult ThanhToan(int?productId, string totalPrice, string tenkhachhang, string sdt, string diachi, string email, string noidung) { var order = new GioHang(); order.NgayTao = DateTime.Now; order.IDKhachHang = Session["UserName"].ToString(); order.DiaChi = diachi; order.Email = email; order.TenKhachHang = tenkhachhang; order.SDTKhachHang = sdt; order.NoiDung = noidung; order.status = true; if (Session[CartSession] == null) { var item = new CartItem(); item.Product = _db.products.Find(productId); item.Quantity = 1; var list = new List <CartItem>(); list.Add(item); Session[CartSession] = list; } //Lưu ngày đặt hàng, thêm tổng đơn hàng, thêm tổng tiền đã chi var user = _db.DangNhaps.Single(x => x.name == tenkhachhang); user.buyLastDate = DateTime.Now; user.countOrder += 1; user.amountSpent += float.Parse(totalPrice); _db.SaveChanges(); try { _db.GioHangs.Add(order); _db.SaveChanges(); var cart = (List <CartItem>)Session[CartSession]; foreach (var i in cart) { var orderDetail = new ChiTietGioHang(); orderDetail.IDSanPham = i.Product.id; orderDetail.IDGioHang = order.id; if (i.Product.newprice != null) { orderDetail.Tien = i.Product.newprice * i.Quantity; } else { orderDetail.Tien = i.Product.price * i.Quantity; } orderDetail.SoLuong = i.Quantity; _db.ChiTietGioHangs.Add(orderDetail); _db.SaveChanges(); } //thanh toán thành công thì cho giỏ hàng bằng null Session[CartSession] = null; } catch { return(Redirect("/loi-thanh-toan")); } ViewBag.Alert = "Bạn vừa đặt hàng thành công."; return(Redirect("/hoan-thanh")); }
public ActionResult Denied(int?maGH) { Order order = db.Orders.FirstOrDefault(m => m.OrderID == maGH); if (order.MaKH != 3) { KhachHang khachHang = db.KhachHangs.Find(order.MaKH); khachHang.DiemTichLuy -= order.TongTien / 1000; db.SaveChanges(); if (khachHang.DiemTichLuy >= 1000000) { khachHang.MaLoaiKH = 5; db.SaveChanges(); } else if (khachHang.DiemTichLuy >= 100000) { khachHang.MaLoaiKH = 4; db.SaveChanges(); } else if (khachHang.DiemTichLuy >= 10000) { khachHang.MaLoaiKH = 3; db.SaveChanges(); } else if (khachHang.DiemTichLuy >= 1000) { khachHang.MaLoaiKH = 2; db.SaveChanges(); } else { khachHang.MaLoaiKH = 1; db.SaveChanges(); } } var chiTietGioHang = db.ChiTietGioHangs.Where(s => s.OrderID == maGH).ToList(); foreach (var item in chiTietGioHang) { SanPham sanPham = db.SanPhams.Find(item.MaSanPham); sanPham.SoLuong = sanPham.SoLuong + item.SoLuong; sanPham.TinhTrang = "Hiển Thị"; db.SaveChanges(); HuyDonHang huyDonHang = new HuyDonHang(); huyDonHang.MaDonHang = order.OrderID.ToString(); huyDonHang.MaKH = order.MaKH; huyDonHang.TongTien = order.TongTien; huyDonHang.NgayXacNhan = DateTime.Parse(DateTime.Now.ToShortDateString()); huyDonHang.TinhTrang = "Đã Từ Chối"; db.HuyDonHangs.Add(huyDonHang); db.SaveChanges(); ChiTietDonHangHuy chiTietDonHangHuy = new ChiTietDonHangHuy(); chiTietDonHangHuy.MaHuyDon = huyDonHang.MaHuyDon; chiTietDonHangHuy.MaSanPham = item.MaSanPham; chiTietDonHangHuy.SoLuong = item.SoLuong; chiTietDonHangHuy.TinhTrang = "Đã Từ Chối"; db.ChiTietDonHangHuys.Add(chiTietDonHangHuy); db.SaveChanges(); ChiTietGioHang chiTietGioHangXoa = db.ChiTietGioHangs.FirstOrDefault(m => m.OrderID == maGH); db.ChiTietGioHangs.Remove(chiTietGioHangXoa); db.SaveChanges(); } Order deleteOrder = db.Orders.Find(maGH); db.Orders.Remove(deleteOrder); db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult ConfirmPayment(double?accountNumber, double?total) { List <CartItem> lstCart = (List <CartItem>)Session[CartSession]; var acc = _db.AccountPayments.Where(x => x.accountNumber == accountNumber).SingleOrDefault(); //Chuyển thành chuỗi để băm string str_cart = acc.accountName + " " + acc.accountNumber + " " + acc.accountBalance; foreach (var item in lstCart) { str_cart += item.Product; str_cart += item.Quantity; } //Băm chuối BigInteger arrayhash = sig.HamBam(str_cart); //mã hóa chuỗi string encrypt_message = sig.Encrypt_MD5(arrayhash.ToString()); BigInteger pri_key = BigInteger.Parse(sig.Decrypt_MD5(acc.pri_key)); //Sinh chữ ký List <BigInteger> lstRS = sig.SinhChuKy(BigInteger.Parse(acc.so_p), BigInteger.Parse(acc.so_t), BigInteger.Parse(acc.so_q), pri_key, encrypt_message); //sinh khóa công khai BigInteger pub_key = sig.publicKey(pri_key, BigInteger.Parse(acc.so_p.Trim()), BigInteger.Parse(acc.so_t.Trim())); //Gửi xác thực chữ ký var res = new AccountPaymentDAO().KiemTraChuKy(encrypt_message, lstRS[0], lstRS[1], pub_key, BigInteger.Parse(acc.so_p.Trim())); if (!res)//Bản tin đã bị thay đổi { return(Redirect("/thanh-toan-loi")); } else { //Lưu hóa đơn var order = new GioHang(); order.TenKhachHang = acc.accountName; order.NgayTao = DateTime.Now; order.NoiDung = "Ok"; order.PayFormat = 2; order.SDTKhachHang = acc.phone; order.status = true; try { _db.GioHangs.Add(order); _db.SaveChanges(); //Lưu vào chi tiết hóa đơn var cart = (List <CartItem>)Session[CartSession]; foreach (var i in cart) { var orderDetail = new ChiTietGioHang(); orderDetail.IDSanPham = i.Product.id; orderDetail.IDGioHang = order.id; if (i.Product.newprice != null) { orderDetail.Tien = i.Product.newprice * i.Quantity; } else { orderDetail.Tien = i.Product.price * i.Quantity; } orderDetail.SoLuong = i.Quantity; _db.ChiTietGioHangs.Add(orderDetail); _db.SaveChanges(); } //thanh toán thành công thì cho giỏ hàng bằng null Session[CartSession] = null; } catch { return(Redirect("/thanh-toan-loi")); } //Trừ tiền trong tài khoản thanh toán acc.accountBalance -= total; //Cộng tiền cho admin var admin = _db.AccountPayments.Find(1); admin.accountBalance += total; _db.SaveChanges(); return(Redirect("/thanh-toan-thanh-cong")); } }
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 void Them(ChiTietGioHang ct) { db.ChiTietGioHangs.Add(ct); db.SaveChanges(); }
public ActionResult SuccessView() { List <GioHang> gioHangs = Session["cart"] as List <GioHang>; var result = from g in gioHangs join k in db.KhachHangs on g.MaKH equals k.MaKH join s in db.SanPhams on g.MaSanPham equals s.MaSanPham select new Tmp4 { Ngay = Session["OrderTime"].ToString(), TenSanPham = s.TenSanPham, SoLuong = g.SoLuong, DonGia = s.GiaBan, ThanhTien = s.GiaBan * g.SoLuong, Hinh = s.Hinh, MaSanPham = s.MaSanPham }; if (Session["TotalMoney"] == null) { int total = 0; foreach (var money in result) { total = total + money.ThanhTien; } if (Session["voucher"] == null) { total += 23000; Session["TotalMoney"] = total; } else { Session["TotalMoney"] = total; } } ViewData["data"] = result; string tmp1 = Session["TotalMoney"].ToString(); int tmp = int.Parse(tmp1); if (Session["kh"] == null) { ECommerce.Models.Order order = new ECommerce.Models.Order { MaKH = 3, TongTien = tmp, NgayDatHang = DateTime.Parse(Session["OrderTime"].ToString()), DiaChi = "PayPal", SDT = "PayPal", HoTen = "PayPal" }; db.Orders.Add(order); db.SaveChanges(); foreach (var item in gioHangs) { ChiTietGioHang chiTietGioHang = new ChiTietGioHang { MaSanPham = item.MaSanPham, SoLuong = item.SoLuong, OrderID = order.OrderID }; db.ChiTietGioHangs.Add(chiTietGioHang); db.SaveChanges(); SanPham sanPham = db.SanPhams.Find(item.MaSanPham); sanPham.SoLuong = sanPham.SoLuong - item.SoLuong; db.SaveChanges(); if (sanPham.SoLuong == 0 & sanPham.TinhTrang != "Sản Phẩm Hot") { sanPham.TinhTrang = "Không Hiển Thị"; db.SaveChanges(); } } } else { string kh = Session["UserID"].ToString(); int maKH = int.Parse(kh); ECommerce.Models.Order order = new ECommerce.Models.Order { MaKH = maKH, TongTien = tmp, NgayDatHang = DateTime.Parse(Session["OrderTime"].ToString()), DiaChi = "PayPal", SDT = "PayPal", HoTen = "Payment with PayPal" }; db.Orders.Add(order); db.SaveChanges(); KhachHang khachHang = db.KhachHangs.Find(maKH); khachHang.DiemTichLuy += tmp / 1000; db.SaveChanges(); if (khachHang.DiemTichLuy >= 1000000) { khachHang.MaLoaiKH = 5; db.SaveChanges(); } else if (khachHang.DiemTichLuy >= 100000) { khachHang.MaLoaiKH = 4; db.SaveChanges(); } else if (khachHang.DiemTichLuy >= 10000) { khachHang.MaLoaiKH = 3; db.SaveChanges(); } else if (khachHang.DiemTichLuy >= 1000) { khachHang.MaLoaiKH = 2; db.SaveChanges(); } else { khachHang.MaLoaiKH = 1; db.SaveChanges(); } foreach (var item in gioHangs) { ChiTietGioHang chiTietGioHang = new ChiTietGioHang { MaSanPham = item.MaSanPham, SoLuong = item.SoLuong, OrderID = order.OrderID }; db.ChiTietGioHangs.Add(chiTietGioHang); db.SaveChanges(); SanPham sanPham = db.SanPhams.Find(item.MaSanPham); sanPham.SoLuong = sanPham.SoLuong - item.SoLuong; db.SaveChanges(); if (sanPham.SoLuong == 0 & sanPham.TinhTrang != "Sản Phẩm Hot") { sanPham.TinhTrang = "Không Hiển Thị"; db.SaveChanges(); } } } ViewBag.total = tmp; ViewBag.ds = gioHangs; Session.Remove("cart"); Session.Remove("TotalMoney"); if (Session["voucher"] != null) { Session.Remove("voucher"); } return(View()); }
public ActionResult ConfirmPayment(double?accountNumber, double?total) { List <CartItem> lstCart = (List <CartItem>)Session[CartSession]; var acc = _db.AccountPayments.Where(x => x.accountNumber == accountNumber).SingleOrDefault(); byte[] arrayhash; //Chuyển thành chuỗi để băm string str_cart = String.Join("", lstCart); //Băm chuối arrayhash = sig.hash(str_cart); string str_arrayhash = ""; foreach (byte a in arrayhash) { str_arrayhash += a.ToString(); } //mã hóa chuỗi string encrypt_message = sig.Encrypt_MD5(str_arrayhash); //Tạo chữ ký List <long> mang1 = new List <long>(); foreach (byte k in arrayhash) { long i = Convert.ToInt64(k); long j = sig.TINHA(i, Convert.ToInt64(sig.Decrypt_MD5(acc.pri_key)), Convert.ToInt64(acc.so_n)); mang1.Add(j); } //Chuyển thành chuỗi để truyền đi string str_signal = ""; foreach (long k in mang1) { str_signal += k.ToString() + ' '; } //Gửi xác thực chữ ký var res = new AccountPaymentDAO().CheckSignal(encrypt_message, str_signal, Convert.ToInt64(acc.so_n), Convert.ToInt64(acc.so_e)); if (res == 0)//Bản tin đã bị thay đổi { return(Redirect("/thanh-toan-loi")); } else { //Lưu hóa đơn var order = new GioHang(); order.TenKhachHang = acc.accountName; order.NgayTao = DateTime.Now; order.NoiDung = "Ok"; order.PayFormat = 2; order.SDTKhachHang = acc.phone; order.status = true; try { _db.GioHangs.Add(order); _db.SaveChanges(); //Lưu vào chi tiết hóa đơn var cart = (List <CartItem>)Session[CartSession]; foreach (var i in cart) { var orderDetail = new ChiTietGioHang(); orderDetail.IDSanPham = i.Product.id; orderDetail.IDGioHang = order.id; if (i.Product.newprice != null) { orderDetail.Tien = i.Product.newprice * i.Quantity; } else { orderDetail.Tien = i.Product.price * i.Quantity; } orderDetail.SoLuong = i.Quantity; _db.ChiTietGioHangs.Add(orderDetail); _db.SaveChanges(); } //thanh toán thành công thì cho giỏ hàng bằng null Session[CartSession] = null; } catch { return(Redirect("/thanh-toan-loi")); } //Trừ tiền trong tài khoản thanh toán acc.accountBalance -= total; //Cộng tiền cho admin var admin = _db.AccountPayments.Find(1); admin.accountBalance += total; _db.SaveChanges(); return(Redirect("/nhap-ma-otp-token")); } }