public IHttpActionResult PostORDER_ITEM(ORDER_ITEM oRDER_ITEM) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } db.ORDER_ITEM.Add(oRDER_ITEM); try { db.SaveChanges(); } catch (DbUpdateException) { if (ORDER_ITEMExists(oRDER_ITEM.ITEM_ID)) { return(Conflict()); } else { throw; } } return(CreatedAtRoute("DefaultApi", new { id = oRDER_ITEM.ITEM_ID }, oRDER_ITEM)); }
public IHttpActionResult PutORDER_ITEM(int id, ORDER_ITEM oRDER_ITEM) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != oRDER_ITEM.ITEM_ID) { return(BadRequest()); } db.Entry(oRDER_ITEM).State = EntityState.Modified; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException) { if (!ORDER_ITEMExists(id)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }
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 IHttpActionResult GetORDER_ITEM(int id) { ORDER_ITEM oRDER_ITEM = db.ORDER_ITEM.Find(id); if (oRDER_ITEM == null) { return(NotFound()); } return(Ok(oRDER_ITEM)); }
public IHttpActionResult DeleteORDER_ITEM(int id) { ORDER_ITEM oRDER_ITEM = db.ORDER_ITEM.Find(id); if (oRDER_ITEM == null) { return(NotFound()); } db.ORDER_ITEM.Remove(oRDER_ITEM); db.SaveChanges(); return(Ok(oRDER_ITEM)); }