public ActionResult MuaNgay(int?id) { using (var ctx = new QLDauGiaEntities()) { //lấy tài khoản mua var tk = CurrentContext.GetCurUser(); //lấy sản phẩm var sp = ctx.DauGia .Where(dg => dg.ID == id) .FirstOrDefault(); sp.ID_NguoiGiuGia = tk.ID; sp.GiaCaoNhatHienTai = sp.GiaMuaNgay; sp.NgayKetThuc = DateTime.Now.AddSeconds(-1); //gửi mail CurrentContext.SendMail(tk.Email, $"Chúc mừng bạn đã mua được sản phẩm! Sản phẩm: {sp.Ten}"); CurrentContext.SendMail(ctx.TaiKhoan.Where(tkk => tkk.ID == sp.ID_NguoiDauGia).FirstOrDefault().Email, $"Đã có người mua ngay sản phẩm của bạn! Sản phẩm: {sp.Ten}"); sp.GuiMailThatBai = true; ctx.SaveChanges(); var ct = ctx.ChiTietDauGia.Add(new ChiTietDauGia() { GiaGanNhat = sp.GiaMuaNgay, ID_DauGia = id.Value, ID_TaiKhoanThamGiaDauGia = tk.ID, NgayThamGiaDauGiaGanNhat = DateTime.Now }); ctx.SaveChanges(); return(RedirectToAction("Index", "ThongBao", new { ThongBao = "Bạn đã mua thành công" })); } }
public ActionResult Them(DauGia dg, List <HttpPostedFileBase> anhchitiet, HttpPostedFileBase anhdaidien, int?SoNgay) { if (CurrentContext.GetCurUser().Vip != true) { return(RedirectToAction("Index", "ThongBao", new { ThongBao = "Bạn không có quyền đăng bán!" })); } using (var ctx = new QLDauGiaEntities()) { var ds = ctx.DauGia .Add(dg); ds.NgayBatDau = DateTime.Now; ds.NgayKetThuc = ds.NgayBatDau.Value.AddDays(SoNgay.Value); ds.SoLuongHinh = anhchitiet.Count(); ds.ID_NguoiDauGia = CurrentContext.GetCurUser().ID; ctx.SaveChanges(); //tạo folder chứa hình [~/asets/images/DauGia/{ID}] string spDirPath = Server.MapPath($"~/assets/images/DauGia"); string targetDirPath = Path.Combine(spDirPath, ds.ID.ToString()); Directory.CreateDirectory(targetDirPath); //copy hình đại diện string daidien = Path.Combine(targetDirPath, $"daidien.jpg"); anhdaidien.SaveAs(daidien); //copy hình đại diện for (int i = 0; i < ds.SoLuongHinh; i++) { string thumbs = Path.Combine(targetDirPath, $"{i + 1}.jpg"); anhchitiet[i].SaveAs(thumbs); } return(RedirectToAction("Index", "ThongBao", new { ThongBao = "Đăng sản phẩm đấu giá thành công!" })); } }
public ActionResult QuenMatKhau(ResetPassVM resetModel) { if (ModelState.IsValid) { try { using (var ctx = new QLDauGiaEntities()) { TaiKhoan mtk = ctx.TaiKhoan.Where(t => t.TenDangNhap == resetModel.UserName && t.Email == resetModel.Email).FirstOrDefault(); mtk.ResetPass = true; ctx.Entry(mtk).State = System.Data.Entity.EntityState.Modified; ctx.SaveChanges(); return(RedirectToAction("Index", "ThongBao", new { ThongBao = "Yêu cầu của bạn đã được ghi nhận! Vui lòng chờ quản trị xác nhận! Hãy kiểm tra mail thường xuyên để lấy lại mật khẩu" })); } } catch (Exception) { return(RedirectToAction("Index", "ThongBao", new { ThongBao = "Xin cấp lại mật khẩu thất bại! Vui lòng thử lại!" })); } } else { return(RedirectToAction("Index", "ThongBao", new { ThongBao = "Mã xác nhận sai! Vui lòng thử lại!" })); } }
public ActionResult EditThongTin(EditUserVM tk) { try { using (var ctx = new QLDauGiaEntities()) { TaiKhoan mtk = ctx.TaiKhoan.Where(t => t.ID == tk.ID).FirstOrDefault(); mtk.TenDangNhap = tk.TenDangNhap; mtk.HoTen = tk.HoTen; mtk.SoDienThoai = tk.SoDienThoai; mtk.Email = tk.Email; mtk.NgaySinh = DateTime.ParseExact(tk.NgaySinh, "dd/MM/yyyy", null); mtk.DiaChi = tk.DiaChi; ctx.Entry(mtk).State = System.Data.Entity.EntityState.Modified; ctx.SaveChanges(); } } catch (Exception) { return(RedirectToAction("Index", "ThongBao", new { ThongBao = "Chỉnh sửa thông tin không thành công! Vui lòng thử lại!" })); } return(RedirectToAction("Index", "ThongBao", new { ThongBao = "Vui lòng đăng nhập lại để cập nhật sự thay đổi!" })); }
public ActionResult Add(DanhMucLon model) { using (var ctx = new QLDauGiaEntities()) { ctx.DanhMucLon.Add(model); ctx.SaveChanges(); } return(View()); }
public ActionResult Update(DanhMucLon model) { using (var ctx = new QLDauGiaEntities()) { ctx.Entry(model).State = System.Data.Entity.EntityState.Modified; ctx.SaveChanges(); } return(RedirectToAction("XuatDanhMuc", "DanhMuc")); }
public ActionResult Delete(int idToDelete) { using (var ctx = new QLDauGiaEntities()) { DanhMucLon model = ctx.DanhMucLon .Where(c => c.ID == idToDelete) .FirstOrDefault(); model.TinhTrang = true; ctx.SaveChanges(); } return(RedirectToAction("XuatDanhMuc", "DanhMuc")); }
public ActionResult Register(RegisterVM regModel) { Boolean mess; if (ModelState.IsValid) { try { TaiKhoan u = new TaiKhoan { TenDangNhap = regModel.UserName, HoTen = regModel.Name, SoDienThoai = regModel.NumPhone, Email = regModel.Email, MatKhau = StringUtils.GetMD5(regModel.RawPWD), NgaySinh = DateTime.ParseExact(regModel.DOB, "dd/MM/yyyy", null), DiaChi = regModel.Address, Diem = 0, DanhGiaTot = 0, DanhGiaXau = 0, Quyen = false, Vip = false, TonTai = true, }; using (QLDauGiaEntities ctx = new QLDauGiaEntities()) { var tktrung = ctx.TaiKhoan.Where(tt => String.Compare(tt.Email, u.Email) == 0 || String.Compare(tt.TenDangNhap, u.TenDangNhap) == 0) .ToList(); if (tktrung.Count == 0) { mess = true; ctx.TaiKhoan.Add(u); ctx.SaveChanges(); } else { mess = false; } } } catch (Exception) { mess = false; } } else { mess = false; } ViewBag.Mess = mess; return(View()); }
public ActionResult Index(int?id) { string thongbao = ""; int slyt = 0; var tk = CurrentContext.GetCurUser(); if (tk == null) { thongbao = "Bạn chưa đăng nhập! Vui lòng đăng nhập hoặc đăng ký mới để sử dụng được tính năng này"; } else if (id.HasValue == false) { return(Json(null, JsonRequestBehavior.AllowGet)); } else { using (var ctx = new QLDauGiaEntities()) { var exists = ctx.YeuThich .Where(yt => yt.ID_DauGia == id && yt.ID_NguoiThich == tk.ID) .FirstOrDefault(); slyt = ctx.YeuThich .Where(yt => yt.ID_NguoiThich == tk.ID) .Count(); if (exists != null) { thongbao = "Sản phẩm đã nằm trong danh sách yêu thích của bạn! Vui lòng kiểm tra lại"; } else { ctx.YeuThich.Add(new YeuThich() { ID_DauGia = id, ID_NguoiThich = tk.ID }); ctx.SaveChanges(); thongbao = "Xin chức mừng! Bạn đã thêm thành công!"; slyt++; } } } var kq = new { tb = thongbao, sl = slyt }; return(Json(kq, JsonRequestBehavior.AllowGet)); }
public ActionResult ResetPass(int?id) { string tb = "Reset mật khẩu người dùng thành công!"; using (var ctx = new QLDauGiaEntities()) { TaiKhoan mtk = ctx.TaiKhoan.Where(t => t.ID == id).FirstOrDefault(); mtk.ResetPass = false; mtk.MatKhau = StringUtils.GetMD5("000000"); ctx.Entry(mtk).State = System.Data.Entity.EntityState.Modified; ctx.SaveChanges(); var kq = new { tb = tb }; CurrentContext.SendMail(mtk.Email, "Tài khoản của bạn đã được reset thành công! Mật khẩu mới là: 000000"); return(Json(kq, JsonRequestBehavior.AllowGet)); } }
public ActionResult XinBan(int userID) { try { using (var ctx = new QLDauGiaEntities()) { TaiKhoan mtk = ctx.TaiKhoan.Where(t => t.ID == userID).FirstOrDefault(); mtk.ThoiGianXinBan = DateTime.Now; ctx.Entry(mtk).State = System.Data.Entity.EntityState.Modified; ctx.SaveChanges(); return(RedirectToAction("Index", "ThongBao", new { ThongBao = "Xin quyền đăng bán sản phẩm thành công! Vui lòng chờ quản trị xác nhận!" })); } } catch (Exception) { return(RedirectToAction("Index", "ThongBao", new { ThongBao = "Xin quyền đăng bán thất bại! Vui lòng thử lại!" })); } }
public ActionResult CapNhatMoTaDayDu(int id_daugia, string motadaydu) { using (var ctx = new QLDauGiaEntities()) { var date = DateTime.Now; var dsdg = ctx.DauGia .Where(dg => dg.ID == id_daugia) .FirstOrDefault(); dsdg.MoTaDayDu += "<br>"; var kq = "Cập nhật " + date.ToString(string.Format("(dd/MM/yyyy, HH:mm:ss)")) + ":"; kq += "<br>"; kq += motadaydu; var kq2 = "" + "<br/>" + "Cập nhật " + date.ToString(string.Format("(dd/MM/yyyy, HH:mm:ss)")) + ":" + "<br/>" + motadaydu; dsdg.MoTaDayDu += kq; ctx.SaveChanges(); return(Json(kq2, JsonRequestBehavior.AllowGet)); } }
public ActionResult ChangePassword(ChangePassVM chgPasModel) { Boolean mess; if (ModelState.IsValid) { try { TaiKhoan mAcc = CurrentContext.GetCurUser(); string passOld = StringUtils.GetMD5(chgPasModel.RawPWDOld); if (passOld.Equals(mAcc.MatKhau)) { mAcc.MatKhau = StringUtils.GetMD5(chgPasModel.RawPWDNew); using (var ctx = new QLDauGiaEntities()) { ctx.Entry(mAcc).State = System.Data.Entity.EntityState.Modified; ctx.SaveChanges(); } mess = true; } else { mess = false; } } catch (Exception) { mess = false; } } else { mess = false; } ViewBag.Mess = mess; return(View()); }
public ActionResult DeleteUser(TaiKhoan tk) { Boolean mess; try { using (var ctx = new QLDauGiaEntities()) { TaiKhoan mtk = ctx.TaiKhoan.Where(t => t.ID == tk.ID).FirstOrDefault(); mtk.TonTai = false; ctx.Entry(mtk).State = System.Data.Entity.EntityState.Modified; ctx.SaveChanges(); } mess = true; } catch (Exception) { mess = false; } ViewBag.Mess = mess; return(View(tk)); }
public ActionResult DatGia(ChiTietDauGia ctdg) { using (var ctx = new QLDauGiaEntities()) { //lấy sản phẩm đấu giá var dg = ctx.DauGia .Where(dgd => dgd.ID == ctdg.ID_DauGia) .FirstOrDefault(); string thongbao = ""; int ID = CurrentContext.GetCurUser().ID; if (ctx.ChiTietDauGia.Count() != 0) { //kiểm tra tài khoản đang muốn đặt giá có bị cấm k var tkhientai = ctx.ChiTietDauGia .Where(ctd => ctd.ID_DauGia == dg.ID && ctd.ID_TaiKhoanThamGiaDauGia == ID) .FirstOrDefault(); if (tkhientai != null) { if (tkhientai.BiCam == true) { thongbao = "Bạn đã bị cấm khỏi phiên đấu giá này!"; return(RedirectToAction("Index", "ThongBao", new { ThongBao = thongbao })); } } } var tkyeucau = ctx.TaiKhoan .Where(ttk => ttk.ID == ID) .FirstOrDefault(); if (dg.YeuCauDanhGia > ((tkyeucau.DanhGiaTot * 1.0 * 100) / (tkyeucau.DanhGiaTot + tkyeucau.DanhGiaXau)) || (tkyeucau.DanhGiaTot + tkyeucau.DanhGiaXau) == 0) { thongbao = "Bạn không đáp ứng được yêu cầu tối thiểu để tham gia đặt giá! Vui lòng kiểm tra lại"; } else if (dg.ID_NguoiGiuGia == null) { ctdg.ID_TaiKhoanThamGiaDauGia = ID; dg.ID_NguoiGiuGia = ctdg.ID_TaiKhoanThamGiaDauGia; dg.GiaCaoNhatHienTai = dg.GiaKhoiDiem; ctx.SaveChanges(); ctdg.NgayThamGiaDauGiaGanNhat = DateTime.Now; ctdg.GiaHienTaiLucDat = dg.GiaKhoiDiem; ctx.ChiTietDauGia.Add(ctdg); ctx.SaveChanges(); thongbao = "Đặt giá thành công! Chúc mừng bạn là người đang giữ giá"; //gửi mail người yêu cầu CurrentContext.SendMail(tkyeucau.Email, "Chúc mừng bạn đặt giá thành công! Sản phẩm: " + dg.Ten); //gửi mail người bán var nguoiban = ctx.TaiKhoan .Where(tkk => tkk.ID == dg.ID_NguoiDauGia) .FirstOrDefault(); CurrentContext.SendMail(nguoiban.Email, "Sản phẩm của bạn có người mới đấu giá thành công! Sản phẩm: " + dg.Ten); //gia hạn tự động nếu có đăng ký chức năng này if (dg.GiaHanTuDong == true && DateTime.Now.AddMinutes(-5) <= dg.NgayKetThuc.Value) { dg.NgayKetThuc.Value.AddMinutes(10); ctx.SaveChanges(); } } else { //lấy giá của người đang giữ giá var tk = ctx.ChiTietDauGia .Where(tkc => tkc.ID_TaiKhoanThamGiaDauGia == dg.ID_NguoiGiuGia && tkc.ID_DauGia == dg.ID) .Max(tkc => tkc.GiaGanNhat); int kq = DauGiaOK(dg.BuocNhay.Value, dg.GiaCaoNhatHienTai.Value, ctdg.GiaGanNhat.Value, tk.Value); //kiểm tra if (kq == 0) { thongbao = "Đặt giá thất bại! Vui lòng đặt giá cao hơn"; } else if (kq == -1) { thongbao = "Đặt giá thất bại! Vui lòng đặt giá cao hơn"; dg.GiaCaoNhatHienTai += dg.BuocNhay; if (dg.GiaHanTuDong == true && DateTime.Now.AddMinutes(-5) <= dg.NgayKetThuc.Value) { dg.NgayKetThuc.Value.AddMinutes(10); } ctx.SaveChanges(); } else { //lấy email người đang giữ giá var tkgiugia = ctx.TaiKhoan .Where(tkk => tkk.ID == dg.ID_NguoiGiuGia) .FirstOrDefault() .Email; thongbao = "Đặt giá thành công! Chúc mừng bạn là người đang giữ giá"; //gửi mail cho người yêu cầu đấu giá CurrentContext.SendMail(tkyeucau.Email, "Chúc mừng bạn đặt giá thành công!"); //gửi mail cho người đang giữ giá CurrentContext.SendMail(tkgiugia, "Đã có người đặt giá cao hơn bạn, sản phẩm: " + dg.Ten); //gia hạn tự động if (dg.GiaHanTuDong == true && DateTime.Now.AddMinutes(-5) <= dg.NgayKetThuc.Value) { dg.NgayKetThuc.Value.AddMinutes(10); } dg.GiaCaoNhatHienTai += dg.BuocNhay; ctdg.ID_TaiKhoanThamGiaDauGia = ID; if (dg.GiaCaoNhatHienTai < tk) { dg.GiaCaoNhatHienTai = tk; } dg.ID_NguoiGiuGia = ctdg.ID_TaiKhoanThamGiaDauGia; ctx.SaveChanges(); //lưu lại người giữ giá //thêm vào bảng chi tiết ctdg.NgayThamGiaDauGiaGanNhat = DateTime.Now; ctx.ChiTietDauGia.Add(ctdg); ctdg.GiaHienTaiLucDat = dg.GiaCaoNhatHienTai; ctx.SaveChanges(); } } return(RedirectToAction("Index", "ThongBao", new { ThongBao = thongbao })); } }
public ActionResult HetHan_DanhGia(int idnguoigiugia, bool like, int iddaugia, string nhanxet) { using (var ctx = new QLDauGiaEntities()) { string thongbao = ""; if (ctx.DauGia .Where(dg => dg.ID == iddaugia) .FirstOrDefault() .NguoiBanDanhGia == true) { thongbao = "Đánh giá thất bại! Sản phẩm đã được đánh giá"; return(RedirectToAction("Index", "ThongBao", new { ThongBao = thongbao })); } //thông tin người mua (giữ giá đến cuối cùng) var ds = ctx.TaiKhoan .Where(dg => dg.ID == idnguoigiugia) .FirstOrDefault(); if (like == true) { if (ds.DanhGiaTot != null) { ds.DanhGiaTot++; } else { ds.DanhGiaTot = 1; } } else { if (ds.DanhGiaXau != null) { ds.DanhGiaXau++; } else { ds.DanhGiaXau = 1; } } thongbao = "Đánh giá thành công!"; ctx.SaveChanges(); ctx.DauGia .Where(dg => dg.ID == iddaugia) .FirstOrDefault() .NguoiBanDanhGia = true; ctx.SaveChanges(); //thêm vào bảng nhận xét; var nx = ctx.NhanXet.Add(new NhanXet() { ID_DauGia = iddaugia, ID_NguoiDanhGia = CurrentContext.GetCurUser().ID, ID_NguoiDuocDanhGia = idnguoigiugia, Like = like, LoiNhanXet = nhanxet, Ngay = DateTime.Now, LaNguoiBan = true }); ctx.SaveChanges(); return(RedirectToAction("Index", "ThongBao", new { ThongBao = thongbao })); } }
public ActionResult Kich(int id_dg, int id_nbk) { using (var ctx = new QLDauGiaEntities()) { var tb = "KICK thành công"; string ten = null; string sdt = null; string tong = null; string tot = null; string xau = null; string gia = null; bool thaydoi = false; var ds = ctx.ChiTietDauGia .Where(ctdg => ctdg.ID_DauGia == id_dg && ctdg.ID_TaiKhoanThamGiaDauGia == id_nbk) .ToList(); foreach (var item in ds) { item.BiCam = true; } ctx.SaveChanges(); //kiểm tra có đang giữ giá var dg = ctx.DauGia .Where(dgg => dgg.ID == id_dg) .FirstOrDefault(); if (dg.ID_NguoiGiuGia == id_nbk) { thaydoi = true; var nguoiketiep = ctx.ChiTietDauGia .Where(ctdg => ctdg.ID_DauGia == id_dg && ctdg.BiCam != true) .OrderByDescending(ctdg => ctdg.GiaGanNhat) .FirstOrDefault(); if (nguoiketiep == null) { dg.GiaCaoNhatHienTai = null; dg.ID_NguoiGiuGia = null; gia = String.Format("{0:N0}", dg.GiaKhoiDiem); } else { dg.GiaCaoNhatHienTai = nguoiketiep.GiaGanNhat; dg.ID_NguoiGiuGia = nguoiketiep.ID_TaiKhoanThamGiaDauGia; var tk_nkt = ctx.TaiKhoan .Where(tk => tk.ID == nguoiketiep.ID_TaiKhoanThamGiaDauGia) .FirstOrDefault(); ten = tk_nkt.HoTen; sdt = tk_nkt.SoDienThoai; gia = String.Format("{0:N0}", dg.GiaCaoNhatHienTai); tong = (tk_nkt.DanhGiaTot - tk_nkt.DanhGiaXau).ToString(); tot = tk_nkt.DanhGiaTot.ToString(); xau = tk_nkt.DanhGiaXau.ToString(); } } ctx.SaveChanges(); //gửi mail cho người bị kích var tkbk = ctx.TaiKhoan .Where(tkk => tkk.ID == id_nbk) .FirstOrDefault() .Email; CurrentContext.SendMail(tkbk, "Rất tiếc! Bạn đã bị kích khỏi phiên đấu giá! Sản phẩm: " + dg.Ten); var kq = new { tb = tb, t = ten, sdt = sdt, dg_tong = tong, dg_tot = tot, dg_xau = xau, g = gia, td = thaydoi }; return(Json(kq, JsonRequestBehavior.AllowGet)); } }