public ActionResult Active(int id=0) { //controller SanPhamController ctr= new SanPhamController(); //get obj SanPham obj = ctr.get_by_id(id); //check if (obj == null) { return RedirectToAction("Index", "AdminSanPhams"); } //đảo ngược active obj.active = !obj.active; //lưu ctr._db.SaveChanges(); //redirect return RedirectToAction("Index","AdminSanPhams"); }
// // GET: /FrontSanPhamDetail/ public ActionResult Index(int id=0) { ViewBag.id = 2; SanPhamController ctr = new SanPhamController(); SanPham sp = new SanPham(); sp=ctr.get_by_id(id); if (sp != null&&sp.active==true) { ViewBag.Title = sp.ten; ViewBag.SanPhamDetail = sp; List<NhomSanPham> a = new List<NhomSanPham>(); a.Add(sp.nhomsanpham); List<SanPham> SanPhamRelate = ctr.timkiem("", "", "", "", -1, -1, null, a, "1", "id", true, 0, 3); if (SanPhamRelate != null) ViewBag.SanPhamRelate = SanPhamRelate; else ViewBag.SanPhamRelate = new List<SanPham>(); return View(); } else return View("Error"); }
public ActionResult ChiTietSP_Delete(int id) { if (!this._nhanvien_permission.Contains("chitietsp_delete")) { return _fail_permission("chitietsp_delete"); } SanPhamController ctr = new SanPhamController(); ChiTietSPController ctr_chitietsp = new ChiTietSPController(ctr._db); ChiTietSP ctsp = new ChiTietSP(); SanPham sanpham = (SanPham)Session["sanpham_new_tmp"]; if (sanpham != null) { //vẫn còn đang ở un_save mode thì xóa từ session ctsp = sanpham.ds_chitietsp.Where(x => x.id == id).FirstOrDefault(); sanpham.ds_chitietsp.Remove(ctsp); return Redirect(Url.Action("Index", "AdminSanPham", new { id = 0, chitietsp_id = ctsp.id }) + "#qd_chitietsp");//return RedirectToAction("Index", "AdminSanPham", new { id = 0, chitietsp_id = ctsp.id }); } //đã save rồi else { ctsp = ctr_chitietsp.get_by_id(id); sanpham = ctr.get_by_id(ctsp.sanpham.id); if (ctsp == null) { return RedirectToAction("Index", "AdminSanPhams"); } //call xóa ctsp try { ctr_chitietsp.delete(ctsp.id); } catch (Exception) { return _show_notification("Chi tiết sản phẩm này có dính khóa ngoại với đơn hàng hiện có nên không xóa được"); } return Redirect(Url.Action("Index", "AdminSanPham", new { id = sanpham.id, chitietsp_id = id }) + "#qd_chitietsp");//return RedirectToAction("Index", "AdminSanPham", new { id = ctsp.sanpham.id, chitietsp_id = ctsp.id }); } }
public ActionResult ChiTietSP_Edit(int id) { if (!this._nhanvien_permission.Contains("chitietsp_edit")) { return _fail_permission("chitietsp_edit"); } SanPhamController ctr = new SanPhamController(); ChiTietSPController ctr_chitietsp = new ChiTietSPController(); ChiTietSP ctsp = new ChiTietSP(); SanPham sanpham =(SanPham) Session["sanpham_new_tmp"]; if (sanpham != null) { //vẫn còn đang ở un_save mode thì lấy từ session ra ctsp = sanpham.ds_chitietsp.Where(x => x.id == id).FirstOrDefault(); return Redirect(Url.Action("Index", "AdminSanPham", new { id = 0, chitietsp_id = ctsp.id }) + "#qd_chitietsp");//return RedirectToAction("Index", "AdminSanPham", new { id = 0, chitietsp_id = ctsp.id }); } //đã save rồi else { ctsp = ctr_chitietsp.get_by_id(id); sanpham = ctr.get_by_id(ctsp.sanpham.id); if (ctsp == null) { return RedirectToAction("Index", "AdminSanPhams"); } return Redirect(Url.Action("Index", "AdminSanPham", new { id = ctsp.sanpham.id, chitietsp_id = ctsp.id }) + "#qd_chitietsp");//return RedirectToAction("Index", "AdminSanPham", new { id = ctsp.sanpham.id, chitietsp_id = ctsp.id }); } }
public ActionResult Submit() { //get obj id first int obj_id = TextLibrary.ToInt(Request["sanpham_id"]); //must use same dbcontext neu khong se bao loi (chi can thiet khi co cap nhat thao tac tren doi tuong sanpham trong session) SanPhamController ctr = new SanPhamController(this._get_current_dbcontext()); SanPham obj = (SanPham)Session["sanpham_new_tmp"]; Boolean un_save = false; if (obj != null) { //un save mode un_save = true; //add mode if (!this._nhanvien_permission.Contains("sanpham_add")) { return _fail_permission("sanpham_add"); } } else { //get obj from csdl obj = ctr.get_by_id(obj_id); //edit mode if (!this._nhanvien_permission.Contains("sanpham_edit")) { return _fail_permission("sanpham_edit"); } if (obj == null) { return RedirectToAction("Index", "AdminSanPhams"); } } //assign value obj.active = TextLibrary.ToBoolean(Request["sanpham_active"]); obj.gia = TextLibrary.ToInt(Request["sanpham_gia"]); obj.masp = TextLibrary.ToString(Request["sanpham_masp"]); obj.mota = TextLibrary.ToString(Request.Unvalidated["sanpham_mota"]); obj.ten = TextLibrary.ToString(Request["sanpham_ten"]); //get external object HangSXController ctr_hangsx = new HangSXController(ctr._db); obj.hangsx = ctr_hangsx.get_by_id(TextLibrary.ToInt(Request["sanpham_hangsx_id"])); NhomSanPhamController ctr_nhomsanpham = new NhomSanPhamController(ctr._db); obj.nhomsanpham = ctr_nhomsanpham.get_by_id(TextLibrary.ToInt(Request["sanpham_nhomsanpham_id"])); //validate properties List<String> validate = ctr.validate(obj); //action if (validate.Count == 0) { if (!un_save) { //update properties first ctr._db.SaveChanges(); this._state.Add("edit_ok"); this._add_state_tempdata("edit_ok"); //get image if (!TextLibrary.ToString(Request["sanpham_upload_hinhanh"]).Equals("")) { HinhAnhController ctr_hinhanh = new HinhAnhController(ctr._db); List<HinhAnh> hinhanh_list = ctr_hinhanh.upload(Server, Request.Files); obj.ds_hinhanh.AddRange(hinhanh_list); ctr._db.SaveChanges(); } //successfull redirect return RedirectToAction("Index", "AdminSanPham", new { id = obj.id }); } else { //người dùng bấm nút upload hình ảnh chứ không phải nút lưu if (!TextLibrary.ToString(Request["sanpham_upload_hinhanh"]).Equals("")) { //khoan hãy lưu vào csdl HinhAnhController ctr_hinhanh = new HinhAnhController(ctr._db); List<HinhAnh> hinhanh_list = ctr_hinhanh.upload(Server, Request.Files); obj.ds_hinhanh.AddRange(hinhanh_list); //re assign to session Session["sanpham_new_tmp"] = obj; //successfull redirect return RedirectToAction("Index", "AdminSanPham", new { id = 0 }); } else { //call add int maxid = ctr.add(obj); //re assign id obj.id = maxid; this._state.Add("add_ok"); this._add_state_tempdata("add_ok"); //successfull redirect return RedirectToAction("Index", "AdminSanPham", new { id = obj.id }); } } } else { //người dùng bấm nút upload hình ảnh chứ không phải nút lưu if (!TextLibrary.ToString(Request["sanpham_upload_hinhanh"]).Equals("")) { //khoan hãy lưu vào csdl HinhAnhController ctr_hinhanh = new HinhAnhController(ctr._db); List<HinhAnh> hinhanh_list = ctr_hinhanh.upload(Server, Request.Files); obj.ds_hinhanh.AddRange(hinhanh_list); //re assign to session Session["sanpham_new_tmp"] = obj; //successfull redirect this._add_state_tempdata(validate); return RedirectToAction("Index", "AdminSanPham", new { id = 0 }); } } //fail or redirect this._state.AddRange(validate); ViewBag.State = this._state; ViewBag.SanPham = obj; ViewBag.Title += " - Submit"; return View("Index"); }
//WORK OK public ActionResult Index(int id = 0, int chitietsp_id = 0) { if (!this._nhanvien_permission.Contains("sanpham_view")) { return _fail_permission("sanpham_view"); } SanPhamController ctr = new SanPhamController(); SanPham obj = ctr.get_by_id(id); Boolean un_save = false; if (obj == null)//tuwsc laf id=0, ddang owr chees dooj SANPHAM chuwa luuw { //lay tu session ra if (Session != null && Session["sanpham_new_tmp"] != null) { obj = (SanPham)Session["sanpham_new_tmp"]; } else { //Chưa gọi set session trước return RedirectToAction("Index", "AdminSanPhams"); } un_save = true; } else { //một khi đã hiển thị sản phẩm đã được save thì xóa ngay và luôn session if (Session != null && Session["sanpham_new_tmp"] != null) { Session["sanpham_new_tmp"] = null; } } ViewBag.SanPham = obj; //ON ActionEx... ViewBag.Title += " - View"; ChiTietSPController ctr_chitietsp = new ChiTietSPController(ctr._db); ChiTietSP ctsp; if (un_save) { if (obj.ds_chitietsp.Where(x => x.id == chitietsp_id).FirstOrDefault()!=null) { //lay tư trong session ra ctsp = obj.ds_chitietsp.Where(x => x.id == chitietsp_id).FirstOrDefault(); } else { ctsp = new ChiTietSP(); } } else { ctsp = ctr_chitietsp.get_by_id(chitietsp_id); } ViewBag.ChiTietSP = ctsp == null ? new ChiTietSP() : ctsp; //từ bên controller trước đưa sang this._state.AddRange(this._get_state_tempdata()); ViewBag.State = this._state; return View(); }
public ActionResult ChiTietSP_Submit() { int sanpham_id = TextLibrary.ToInt(Request["sanpham_id"]); //must use same dbcontext neu khong se bao loi (chi can thiet khi co cap nhat thao tac tren doi tuong sanpham trong session) SanPhamController ctr = new SanPhamController(this._get_current_dbcontext()); ChiTietSPController ctr_chitietsp = new ChiTietSPController(ctr._db); KichThuocController ctr_kichthuoc = new KichThuocController(ctr._db); MauSacController ctr_mausac = new MauSacController(ctr._db); SanPham sanpham_obj = ctr.get_by_id(sanpham_id); Boolean un_save_mode = false; //neu sanpham_id=0, dang o mode chua save if (sanpham_obj == null) { sanpham_obj = (SanPham)Session["sanpham_new_tmp"]; un_save_mode = true; } //create new ChiTietSP obj; int chitietsp_id = TextLibrary.ToInt(Request["chitietsp_id"]); Boolean edit_mode; if (un_save_mode) { edit_mode = sanpham_obj.ds_chitietsp.Where(x=>x.id==chitietsp_id).FirstOrDefault()!=null?true:false; if (edit_mode) { if (!this._nhanvien_permission.Contains("chitietsp_edit")) { return _fail_permission("chitietsp_edit"); } obj = sanpham_obj.ds_chitietsp.Where(x => x.id==chitietsp_id).FirstOrDefault(); } else { if (!this._nhanvien_permission.Contains("chitietsp_add")) { return _fail_permission("chitietsp_add"); } obj = new ChiTietSP(); //kiểm tra phải có ít nhất 1 kích thước if (ctr_kichthuoc.timkiem_count("", "", "", "1") <= 0) { return _show_notification("Yêu cầu phải có ít nhất 1 kích thước active mới thêm được chi tiết sản phẩm"); } //kiểm tra phải có ít nhất 1 màu sắc if (ctr_mausac.timkiem_count("", "", "", "1") <= 0) { return _show_notification("Yêu cầu phải có ít nhất 1 màu sắc active mới thêm được chi tiết sản phẩm"); } } } //chế dộ đã save rồi else { edit_mode = ctr_chitietsp.get_by_id(chitietsp_id) != null; if (edit_mode) { if (!this._nhanvien_permission.Contains("chitietsp_edit")) { return _fail_permission("chitietsp_edit"); } obj = ctr_chitietsp.get_by_id(chitietsp_id); } else { if (!this._nhanvien_permission.Contains("chitietsp_add")) { return _fail_permission("chitietsp_add"); } obj = new ChiTietSP(); //kiểm tra phải có ít nhất 1 kích thước if (ctr_kichthuoc.timkiem_count("", "", "", "1") <= 0) { return _show_notification("Yêu cầu phải có ít nhất 1 kích thước active mới thêm được chi tiết sản phẩm"); } //kiểm tra phải có ít nhất 1 màu sắc if (ctr_mausac.timkiem_count("", "", "", "1") <= 0) { return _show_notification("Yêu cầu phải có ít nhất 1 màu sắc active mới thêm được chi tiết sản phẩm"); } } } //assign data obj.soluong = TextLibrary.ToInt(Request["chitietsp_soluong"]); //ctr_kichthuoc = new KichThuocController(ctr._db); obj.kichthuoc = ctr_kichthuoc.get_by_id(TextLibrary.ToInt(Request["chitietsp_kichthuoc_id"])); //ctr_mausac = new MauSacController(ctr._db); obj.mausac = ctr_mausac.get_by_id(TextLibrary.ToInt(Request["chitietsp_mausac_id"])); obj.active = TextLibrary.ToBoolean(Request["chitietsp_active"]); if (un_save_mode) { if (edit_mode) { //do nothing } else { //add to sanpham tmp //must set id try { obj.id = sanpham_obj.ds_chitietsp.Max(x => x.id) + 1; } catch (Exception) { obj.id = 1; } sanpham_obj.ds_chitietsp.Add(obj); //re assign to session Session["sanpham_new_tmp"] = sanpham_obj; } } //chế độ đã save rồi else { if (edit_mode) { //nothing } else { sanpham_obj.ds_chitietsp.Add(obj); } //finally call update ctr._db.SaveChanges(); } return Redirect(Url.Action("Index", "AdminSanPham", new { id = sanpham_id }) + "#qd_ds_chitietsp"); //return RedirectToAction("Index", "AdminSanPham", new { id = sanpham_id }); }
public Boolean set_default(int id) { //get hinhanh obj HinhAnh obj = this.get_by_id(id); if (obj == null || obj.sanpham == null) { return false; } //get sanpham obj SanPhamController ctr_sanpham=new SanPhamController(this.db); SanPham sanpham = ctr_sanpham.get_by_id(obj.sanpham.id); //get all hinhanh belong to this sanpham List<HinhAnh> hinhanh_list = this.db.ds_hinhanh.Where(x => x.sanpham.id == sanpham.id).ToList(); //set all to non-default foreach (HinhAnh item in hinhanh_list) { item.macdinh = false; //set to default if (item.id == obj.id) { item.macdinh = true; } } this.db.SaveChanges(); return true; }