public IActionResult PlaceOrder(StoreInfo st, [FromServices] IStoreOrdersInfo repositoryStoreOrdersInfo, [FromServices] IOrdersUserInfo repositoryOrdersUserInfo) { //add the order to the database TempData["storeId"] = st.StoreId; var storeOrders = repositoryStoreOrdersInfo.GetStoreOrders(Convert.ToInt32(TempData["storeId"])).ToList(); if (storeOrders.Count() != 0) { var userPurchases = repositoryOrdersUserInfo.GetUserPurchases(TempData["UserEmail"] as string).ToList(); if (userPurchases.Count() != 0) { var joinedTables = (from e in storeOrders join f in userPurchases on e.OrderId equals f.OrderId orderby f.OrderDateTime descending select f.OrderDateTime).ToList(); DateTime now = DateTime.Now; if (joinedTables.Count() != 0) { var o = joinedTables.First(); double hoursPassed = now.Subtract(o).TotalHours; if (hoursPassed < 24) { return(View("OrderRestriction")); } } } } string total = "0.0000"; TempData["Total"] = total; OrdersUserInfo ordersUserInfo = new OrdersUserInfo() { Email = TempData["userEmail"] as string, OrderDateTime = DateTime.Now }; repositoryOrdersUserInfo.Add(ordersUserInfo); StoreOrdersInfo storeOrdersInfo = new StoreOrdersInfo() { StoreId = st.StoreId, OrderId = ordersUserInfo.OrderId }; repositoryStoreOrdersInfo.Add(storeOrdersInfo); TempData["orderId"] = ordersUserInfo.OrderId; TempData.Keep(); return(RedirectToAction(nameof(SelectPizza), "SignedIn")); }
public void Add(StoreOrdersInfo item) { //We need to see if the store id and order id exist if (db.StoreInfo.Any(e => e.StoreId == item.StoreId) && db.OrdersUserInfo.Any(e => e.OrderId == item.OrderId)) { db.StoreOrdersInfo.Add(item); db.SaveChanges(); } else { Console.WriteLine("OrderID or StoreID not found"); } }
public void Modify(StoreOrdersInfo item) { throw new NotImplementedException(); }