public IHttpActionResult CreateOrder(int id, [FromBody] CreateOrderBindingModel model) { var meal = this.Data.Meals.Find(id); if (meal == null) { return this.NotFound(); } if (model == null) { return this.BadRequest("Model cannot be null"); } if (!this.ModelState.IsValid) { return this.BadRequest(this.ModelState); } string loggedUserId = this.User.Identity.GetUserId(); var order = new Order() { Quantity = (int)model.Quantity, MealId = id, UserId = loggedUserId, CreatedOn = DateTime.Now, OrderStatus = OrderStatus.Delivered }; this.Data.Orders.Add(order); this.Data.SaveChanges(); return this.Ok(); }
public IHttpActionResult CreateOrder(int id, [FromBody] OrderBindingModel model) { if (model == null) { return this.BadRequest("Model cannot be null (no data in request)"); } if (!this.ModelState.IsValid) { return this.BadRequest(this.ModelState); } var meal = this.Data.Meals.Find(id); if (meal == null) { return this.NotFound(); } var loggedUserId = this.User.Identity.GetUserId(); var user = this.Data.Users.Find(loggedUserId); if (user == null) { return this.Unauthorized(); } var order = new Order() { Meal = meal, MealId = id, CreatedOn = DateTime.Now, Quantity = model.Quantity, User = user, UserId = loggedUserId }; this.Data.Orders.Add(order); this.Data.SaveChanges(); return this.Ok(); }
public IHttpActionResult PostOrder(int id, OrderBindingModel orderModel) { if (!User.Identity.IsAuthenticated) { return Unauthorized(); } if (!ModelState.IsValid) { return BadRequest(); } if (!db.Meals.All().Any(r => r.Id == id)) { return NotFound(); } var currentUserId = User.Identity.GetUserId(); var currentUser = this.db.Users.Find(currentUserId); Order order = new Order() { Meal = db.Meals.Find(id), MealId = id, CreatedOn = DateTime.Now, User = currentUser, UserId = currentUserId, Quantity = orderModel.Quantity, OrderStatus = OrderStatus.Pending }; db.Orders.Add(order); db.SaveChanges(); return this.Ok(); }
public IHttpActionResult CreateOrder(int id, OrderBindingModel orderBindingModel) { var userId = this.User.Identity.GetUserId(); if (orderBindingModel == null) { return this.BadRequest("Data is missing"); } if (!this.ModelState.IsValid) { return this.BadRequest(this.ModelState); } var meal = this.Data.Meals.GetAll().FirstOrDefault(m => m.Id == id); if (meal == null) { return this.NotFound(); } var newOrder = new Order { MealId = meal.Id, Quantity = orderBindingModel.Quantity, UserId = userId, CreatedOn = DateTime.Now, OrderStatus = OrderStatus.Pending }; this.Data.Orders.Add(newOrder); this.Data.SaveChanges(); return this.Ok(string.Format("Your order number is #{0}", newOrder.Id)); }
public IHttpActionResult CreateOrder(int mealId, OrderBindingModel orderModel) { if (orderModel == null) { return this.BadRequest("Order data cannot be null."); } if (!this.ModelState.IsValid) { return this.BadRequest(this.ModelState); } var existingMeal = this.Data.Meals.All() .FirstOrDefault(r => r.Id == mealId); if (existingMeal == null) { return this.NotFound(); } var loggedUserId = this.UserIdProvider.GetUserId(); if (loggedUserId == null) { return this.Unauthorized(); } var newOrder = new Order { Quantity = orderModel.Quantity, MealId = mealId, Meal = existingMeal, UserId = loggedUserId, CreatedOn = DateTime.Now, OrderStatus = OrderStatus.Pending }; this.Data.Orders.Add(newOrder); this.Data.SaveChanges(); return this.Ok(string.Format("Order with Id {0} is now pending.", newOrder.Id)); }
public IHttpActionResult CreateOrder(int id, [FromBody]OrderBindingModel model) { if (model == null) { return BadRequest("Missing order data."); } if (!ModelState.IsValid) { return BadRequest(ModelState); } var meal = db.Meals.Find(id); if (meal == null) { return this.NotFound(); } var currentUserId = User.Identity.GetUserId(); var currentUser = db.Users.Find(currentUserId); var order = new Order() { MealId = meal.Id, Quantity = model.Quantity, UserId = currentUserId, OrderStatus = OrderStatus.Pending, CreatedOn = DateTime.Now, }; db.Orders.Add(order); db.SaveChanges(); return this.Ok(); }
public IHttpActionResult PostOrderByMealId(int id, CreateOrderBindingModel model) { var userId = this.User.Identity.GetUserId(); if (userId == null) { return this.Unauthorized(); } var meal = db.Meals.Find(id); if (meal == null) { return this.NotFound(); } if (!this.ModelState.IsValid || model == null) { return this.BadRequest(this.ModelState); } var order = new Order() { MealId = id, Quantity = model.Quantity, UserId = userId, OrderStatus = OrderStatus.Pending, CreatedOn = DateTime.Now }; db.Orders.Add(order); db.SaveChanges(); return this.Ok(); }
public IHttpActionResult CreateOrders(int id, OrderBindingModel m) { if (User == null) return this.Unauthorized(); if (!ModelState.IsValid) return this.BadRequest(); if (!this.Data.Meals.Any(me => me.Id == id)) return this.NotFound(); var order = new Order { MealId = id, Quantity = m.Quantity, UserId = User.Identity.GetUserId(), CreatedOn = DateTime.Now, OrderStatus = OrderStatus.Pending }; this.Data.Orders.Add(order); this.Data.SaveChanges(); return this.Ok(); }