public ActionResult Create(string json) { Debug.WriteLine("receive json: " + json); if (User.Identity.IsAuthenticated) { var userID = User.Identity.GetUserId(); var newOrder = new RESERVE_PICK_UP(); OrderData data = JsonConvert.DeserializeObject <OrderData>(json); newOrder.PICK_UP_TIME = DateTime.ParseExact(data.pickTime, "dd/MM/yyyy HH:mm:ss", CultureInfo.InvariantCulture); newOrder.ORDER_TIME = DateTime.ParseExact(data.orderTime, "dd/MM/yyyy HH:mm:ss", CultureInfo.InvariantCulture); newOrder.RESTAURANT_ID = data.restaurantID; newOrder.ORDER_PRICE = data.totalPrice; newOrder.TOTAL_ENERGY = data.totalEnergy; newOrder.USER_ID = userID; newOrder.STATE = "waiting"; var restTime = db.Restaurants.Find(newOrder.RESTAURANT_ID); if (newOrder.PICK_UP_TIME.TimeOfDay < restTime.OPENTIME || newOrder.PICK_UP_TIME.TimeOfDay > restTime.CLOSETIME) { return(Json(new { result = "failed", reason = "Invalid Pick-up Time" })); } db.RESERVE_PICK_UP.Add(newOrder); db.SaveChanges(); var newID = newOrder.ORDER_ID; Dictionary <int, int> dic = new Dictionary <int, int>(); foreach (int i in data.itemIDs) { if (dic.ContainsKey(i)) { dic[i] += 1; } else { dic.Add(i, 1); } } foreach (KeyValuePair <int, int> entry in dic) { var newItem = new ORDER_ITEM(); newItem.ITEM_ID = entry.Key; newItem.ORDER_ID = newID; newItem.QUANTITY = entry.Value; var theItem = db.FOOD_ITEM.Find(entry.Key); newItem.TOTAL_PRICE = theItem.PRICE * entry.Value; newItem.TOTAL_ENERGY = theItem.ENERGY * entry.Value; db.ORDER_ITEM.Add(newItem); } db.SaveChanges(); return(Json(new { result = "success" })); } else { return(Json(new { result = "failed" })); } }
public ActionResult DeleteConfirmed(int id) { RESERVE_PICK_UP rESERVE_PICK_UP = db.RESERVE_PICK_UP.Find(id); db.RESERVE_PICK_UP.Remove(rESERVE_PICK_UP); db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Edit([Bind(Include = "ORDER_ID,USER_ID,RESTAURANT_ID,ORDER_TIME,PICK_UP_TIME,ORDER_PRICE,NO_OF_EATER,TOTAL_ENERGY,STATE,REMARKS")] RESERVE_PICK_UP rESERVE_PICK_UP) { if (ModelState.IsValid) { db.Entry(rESERVE_PICK_UP).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.RESTAURANT_ID = new SelectList(db.Restaurants, "RESTAURANT_ID", "RESTAURANT_NAME", rESERVE_PICK_UP.RESTAURANT_ID); ViewBag.USER_ID = new SelectList(db.USERs, "USER_ID", "USERNAME", rESERVE_PICK_UP.USER_ID); return(View(rESERVE_PICK_UP)); }
// GET: RESERVE_PICK_UP/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } RESERVE_PICK_UP rESERVE_PICK_UP = db.RESERVE_PICK_UP.Find(id); if (rESERVE_PICK_UP == null) { return(HttpNotFound()); } return(View(rESERVE_PICK_UP)); }
// GET: RESERVE_PICK_UP/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } RESERVE_PICK_UP rESERVE_PICK_UP = db.RESERVE_PICK_UP.Find(id); if (rESERVE_PICK_UP == null) { return(HttpNotFound()); } ViewBag.RESTAURANT_ID = new SelectList(db.Restaurants, "RESTAURANT_ID", "RESTAURANT_NAME", rESERVE_PICK_UP.RESTAURANT_ID); ViewBag.USER_ID = new SelectList(db.USERs, "USER_ID", "USERNAME", rESERVE_PICK_UP.USER_ID); return(View(rESERVE_PICK_UP)); }