public ActionResult Index(Members member) { //先做一個salt再存Password System.Security.Cryptography.RNGCryptoServiceProvider rng = new System.Security.Cryptography.RNGCryptoServiceProvider(); byte[] buf = new byte[15]; rng.GetBytes(buf); string salt = Convert.ToBase64String(buf); string Password = member.Password; Password = FormsAuthentication.HashPasswordForStoringInConfigFile(Password + salt, "sha1"); member.Password = Password; db.Members.Add(member); try { db.SaveChanges(); } catch (Exception ex) { throw; } return(View()); }
public ActionResult CancelAd(Members member) { //get member with the email, save adok to false if (ModelState.IsValid) { var user = db.Members.Where(c => c.Email == member.Email).First(); if (user != null) { user.AdOK = false; db.Entry(user).State = EntityState.Modified; db.SaveChanges(); } } return(RedirectToAction("CancelEmailAd", new { Confirmed = true })); }
public ActionResult AddItem(string item) { using (SmartShoppingEntities db = new SmartShoppingEntities()) { if (User.Identity.IsAuthenticated) { string aspid = User.Identity.GetUserId(); MemberID = db.Members.Where(m => m.Id == aspid).Select(m => m.Member_ID).First(); } ShoppingList slist = new Models.ShoppingList(); if (System.Web.HttpContext.Current.Session["PListID"] == null) { slist.PList_ID = db.PList.Where(m => m.Member_ID == MemberID).Select(m => m.PList_ID).First();; } else { slist.PList_ID = (int)System.Web.HttpContext.Current.Session["PListID"]; } slist.ListName = item; slist.Active = true; db.Entry(slist).State = EntityState.Added; db.SaveChanges(); return(RedirectToAction("ShoppingListP", new { id = slist.PList_ID })); } }
public ActionResult ShoppingCategoryPartial() { //讀取Member的父類別 using (SmartShoppingEntities db = new SmartShoppingEntities()) { if (User.Identity.IsAuthenticated) { string aspid = User.Identity.GetUserId(); MemberID = db.Members.Where(m => m.Id == aspid).Select(m => m.Member_ID).First(); } var q = from s in db.PList where s.Member_ID == MemberID select s; if (q.FirstOrDefault() == null) { PList pl = new PList(); pl.Member_ID = MemberID; pl.ListName = "我的購物清單"; //pl.PList_ID = db.PList.Max(m => m.PList_ID) + 1; db.Entry(pl).State = EntityState.Added; db.SaveChanges(); } return(PartialView("ShoppingCategoryPartial", q.ToList())); } }
public async Task <ActionResult> Register(RegisterViewModel model) { if (ModelState.IsValid) { var user = new ApplicationUser { UserName = model.Email, Email = model.Email }; var result = await UserManager.CreateAsync(user, model.Password); if (result.Succeeded) { await SignInManager.SignInAsync(user, isPersistent : false, rememberBrowser : false); // 如需如何啟用帳戶確認和密碼重設的詳細資訊,請造訪 http://go.microsoft.com/fwlink/?LinkID=320771 // 傳送包含此連結的電子郵件 string code = await UserManager.GenerateEmailConfirmationTokenAsync(user.Id); var callbackUrl = Url.Action("ConfirmEmail", "Account", new { userId = user.Id, code = code }, protocol: Request.Url.Scheme); await UserManager.SendEmailAsync(user.Id, "確認您的帳戶", "請按一下此連結確認您的帳戶 <a href=\"" + callbackUrl + "\">這裏</a>"); //存進我們的member表 Members member = new Members(); member.Email = user.Email; member.Username = user.Email; member.Id = user.Id; member.IsActive = true; //給他預設的圖 var q = db.Members.Where(m => m.Member_ID == 1).Select(m => m.M_Picture).FirstOrDefault(); member.M_Picture = q; db.Members.Add(member); try { db.SaveChanges(); } catch (Exception ex) { throw; } return(RedirectToAction("RoleSelect", "LogIn")); } AddErrors(result); } // 如果執行到這裡,發生某項失敗,則重新顯示表單 return(View(model)); }
public ActionResult Added(string title, DateTime date) { using (SmartShoppingEntities db = new SmartShoppingEntities()) { ShoppingList shoppinglist = new ShoppingList(); //categoryname? shoppinglist.NextDate = date; db.Entry(shoppinglist).State = EntityState.Modified; db.SaveChanges(); //修改訂單資料如果是需要出貨的 return(RedirectToAction("Index")); } }
public ActionResult AddFromDetail(int id, int?no, int?by) { using (SmartShoppingEntities db = new SmartShoppingEntities()) { if (User.Identity.IsAuthenticated) { string aspid = User.Identity.GetUserId(); MemberID = db.Members.Where(m => m.Id == aspid).Select(m => m.Member_ID).First(); } //存到我的購物清單 int plistID = db.PList.Where(m => m.Member_ID == MemberID && m.ListName == "我的購物清單").Select(p => p.PList_ID).FirstOrDefault(); if (plistID == 0)//幫他創一個 { PList pl = new PList(); pl.Member_ID = MemberID; pl.ListName = "我的購物清單"; pl.PList_ID = db.PList.Max(m => m.PList_ID) + 1; plistID = pl.PList_ID; db.Entry(pl).State = EntityState.Added; } ShoppingList sl = new Models.ShoppingList(); sl.PList_ID = plistID; sl.Products = db.Products.Where(p => p.Product_ID == id).First(); sl.RepeatNumber = no; sl.RepeatBy = by; sl.ListName = sl.Products.Categories.CategoryName; sl.Active = true; if (no != 0) { if (by == 1)//月 { sl.NextDate = DateTime.Today.AddMonths((int)no); } else if (by == 2)//周 { sl.NextDate = DateTime.Today.AddDays((int)(7 * no)); } else if (by == 3)//日 { sl.NextDate = DateTime.Today.AddDays((int)no); } } db.Entry(sl).State = EntityState.Added; db.SaveChanges(); return(Content(sl.Products.ProductName + "已加入您的智慧清單")); } }
public ActionResult Dropped(string title, DateTime date, int id) { //存進List Update using (SmartShoppingEntities db = new SmartShoppingEntities()) { ShoppingList shoppinglist = db.ShoppingList.Find(id); shoppinglist.NextDate = date; db.Entry(shoppinglist).State = EntityState.Modified; db.SaveChanges(); //修改訂單資料如果是需要出貨的 return(RedirectToAction("Index")); } }
public ActionResult CategoryInsert(string item) { using (SmartShoppingEntities db = new SmartShoppingEntities()) { if (User.Identity.IsAuthenticated) { string aspid = User.Identity.GetUserId(); MemberID = db.Members.Where(m => m.Id == aspid).Select(m => m.Member_ID).First(); } PList plist = new PList(); plist.ListName = item; plist.Member_ID = MemberID; db.Entry(plist).State = EntityState.Added; db.SaveChanges(); return(RedirectToAction("ShoppingList")); } }
public ActionResult SetProduct(int id)//PID 接收到他現在要換什麼但還沒確認 { using (SmartShoppingEntities db = new SmartShoppingEntities()) { //存入shoppinglistinside int switching = (int)System.Web.HttpContext.Current.Session["switchingid"]; var slist = (from s in db.ShoppingList.Include(s => s.Products) where s.List_ID == switching select s).First(); slist.List_ID = switching; slist.Products = db.Products.Where(p => p.Product_ID == id).First();//存整個product給他 db.Entry(slist).State = EntityState.Modified; db.SaveChanges(); System.Web.HttpContext.Current.Session["switchingid"] = null; System.Web.HttpContext.Current.Session["switchingname"] = null; return(RedirectToAction("Detail", "ShoppingList", new { id = switching })); } }
public ActionResult DeleteItem(int listid) { using (SmartShoppingEntities db = new SmartShoppingEntities()) { //刪除shoppinglist& shoppinglistinside var slist = (from s in db.ShoppingList.Include(s => s.Products) where s.List_ID == listid select s).First(); if (slist.Order_ID != null) { //刪除order int orderid = (int)slist.Order_ID; OrderDetail od = db.OrderDetail.Where(o => o.Order_ID == orderid).First(); db.Entry(od).State = EntityState.Deleted; Orders order = db.Orders.Where(o => o.Order_ID == orderid).First(); db.Entry(order).State = EntityState.Deleted; } db.Entry(slist).State = EntityState.Deleted; db.SaveChanges(); return(RedirectToAction("ShoppingList")); } }
public ActionResult SaveChanges(int listid, int repeatno, int repeatby, string nextdate, int quantity, string link1, string phone1, string address1) { DateTime date = Convert.ToDateTime(nextdate); using (SmartShoppingEntities db = new SmartShoppingEntities()) { var slist = (from s in db.ShoppingList.Include(s => s.Products) where s.List_ID == listid select s).First(); slist.RepeatNumber = repeatno; slist.RepeatBy = repeatby; slist.NextDate = date; slist.Quantity = quantity; slist.Link = link1; slist.Address = address1; slist.Phone = phone1; db.Entry(slist).State = EntityState.Modified; db.SaveChanges(); ViewBag.Clicked = null; //存到order去 //order跟著動 addOrUpdate if (slist.Products != null) { int pid = slist.Products.Product_ID; if (User.Identity.IsAuthenticated) { string aspid = User.Identity.GetUserId(); MemberID = db.Members.Where(m => m.Id == aspid).Select(m => m.Member_ID).First(); } var order = (from o in db.OrderDetail where o.Orders.Status_ID == 7 && o.Orders.Member_ID == MemberID && o.Product_ID == pid select o).FirstOrDefault(); var originalOID = slist.Order_ID; if (order == null) { //第一次設add Orders neworder = new Orders(); neworder.ArrivalDate = date; neworder.Member_ID = MemberID; neworder.OrderDate = DateTime.Today; neworder.SubTotal = slist.Products.UnitPrice; neworder.ValueAddTax = (int)Math.Round((neworder.SubTotal) * 0.05); neworder.Amount = neworder.SubTotal + neworder.ValueAddTax; neworder.ShipMethod_ID = 1; neworder.PaymentMethod_ID = 4; neworder.Status_ID = 7; neworder.Order_ID = db.Orders.Max(o => o.Order_ID) + 1; db.Entry(neworder).State = EntityState.Added; //存orderid到slist slist.Order_ID = neworder.Order_ID; db.Entry(slist).State = EntityState.Modified; //save orderdetail OrderDetail od = new OrderDetail(); od.Order_ID = neworder.Order_ID; od.Product_ID = pid; od.UnitPrice = slist.Products.UnitPrice; od.Quantity = quantity; db.Entry(od).State = EntityState.Added; db.SaveChanges(); } if (order == null && originalOID != null)//是更換要把本來的訂單刪除 { OrderDetail od = db.OrderDetail.Where(o => o.Order_ID == originalOID).First(); db.Entry(od).State = EntityState.Deleted; Orders ord = db.Orders.Find(originalOID); db.Entry(ord).State = EntityState.Deleted; db.SaveChanges(); } if (order != null && slist.Order_ID != null) { //修改既有訂單.表示只是修同一筆 Orders ord = db.Orders.Find((int)slist.Order_ID); ord.ArrivalDate = date; OrderDetail od = db.OrderDetail.Where(o => o.Order_ID == (int)slist.Order_ID).First(); od.Quantity = quantity; db.Entry(od).State = EntityState.Modified; db.Entry(ord).State = EntityState.Modified; db.SaveChanges(); } } return(Content("success")); } }