public int UpdateOrder_Dishes(Order_Dishes order) { string connectionString = Configuration.GetConnectionString("DefaultConnection"); int result = 0; try { using (SqlConnection cn = new SqlConnection(connectionString)) { string query = "UPDATE Order_Dishes SET IdOrder=@IdOrder,IdDishes=@IdDishes,Quantity=@Quantity WHERE IdOrder=@IdOrder"; SqlCommand cmd = new SqlCommand(query, cn); cmd.Parameters.AddWithValue("@IdOrder", order.IdOrder); cmd.Parameters.AddWithValue("@Status", order.IdDish); cmd.Parameters.AddWithValue("@Date", order.Quantity); cn.Open(); result = cmd.ExecuteNonQuery(); } } catch (Exception e) { throw e; } return(result); }
public Order_Dishes AddOrder_Dishes(Order_Dishes order) { string connectionString = Configuration.GetConnectionString("DefaultConnection"); try { using (SqlConnection cn = new SqlConnection(connectionString)) { string query = "INSERT into Order_Dishes(Quantity,IdDish,IdOrder) VALUES(@Quantity,@IdDish,@IdOrder)"; SqlCommand cmd = new SqlCommand(query, cn); cmd.Parameters.AddWithValue("@Quantity", order.Quantity); cmd.Parameters.AddWithValue("@IdDish", order.IdDish); cmd.Parameters.AddWithValue("@IdOrder", order.IdOrder); string valuer = query.ToString(); cn.Open(); cmd.ExecuteScalar(); } } catch (Exception e) { throw e; } return(order); }
public List <Order_Dishes> GetOrder_Dishes(int id) { List <Order_Dishes> results = null; string connectionString = Configuration.GetConnectionString("DefaultConnection"); try { using (SqlConnection cn = new SqlConnection(connectionString)) { string query = "SELECT * FROM Order_Dishes WHERE IdOrder = @IdOrder"; SqlCommand cmd = new SqlCommand(query, cn); cmd.Parameters.AddWithValue("@IdOrder", id); cn.Open(); using (SqlDataReader dr = cmd.ExecuteReader()) { while (dr.Read()) { if (results == null) { results = new List <Order_Dishes>(); } Order_Dishes order = new Order_Dishes(); order.IdOrder = (int)dr["IdOrder"]; order.IdDish = (int)dr["IdDish"]; order.Quantity = (int)dr["Quantity"]; results.Add(order); } } } } catch (Exception e) { throw e; } return(results); }
//Add one dish and a quantity for an order public Order_Dishes AddOrder_Dishes(Order_Dishes order) { return(orderDishesDB.AddOrder_Dishes(order)); }
//Method that creates the order public ActionResult Order(string deliverytime) { User user = UserManager.GetUserByEmail(User.Identity.Name); int idCustomer = CustomerManager.GetCustomerByIdUser(user.IdUser); var cartlists = HttpContext.Session.GetObjectFromJson <List <Cart> >("Cart"); int idresto = cartlists[0].dish.IdRestaurant; var idcity = RestaurantManager.GetCityFromRestaurant(idresto); var users = UserManager.GetUsersByIdCity(idcity); var couriers = CourierManager.GetCouriersByUserIdSameCity(users); //Check if there is a courier in the same city as the restaurant if (!couriers.Any()) { return(RedirectToAction("NoFreeCourier")); } var orders = OrderManager.GetOrders(); List <Courier> courierFree = new List <Courier>(); //Retrieve the date of the order and the delivery date from the view ShoppingCart or Restaurants/Details string tspan = Convert.ToString(deliverytime); DateTime dt = DateTime.Now; DateTime ts = DateTime.Parse(tspan); foreach (var courier in couriers) { if (OrderManager.GetNumberOfOrder(courier.IdCourier, ts) < 5) { courierFree.Add(courier); } } //Check if any courier is available if (!courierFree.Any()) { return(RedirectToAction("NoFreeCourier")); } var courriers = CourierManager.GetCouriers(); OrderManager.GetNumberOfOrder(courriers[0].IdCourier, ts); //Insert the order from the cart Order order = new Order(); order.Status = "Not delivered"; order.Date = dt; order.ShippingDate = ts; order.TotalPrice = cartlists.Sum(m => m.totalPriceProduct); order.IdCourier = courierFree[0].IdCourier; order.IdClient = idCustomer; Order order1 = OrderManager.AddOrder(order); //Insert each dish and quantity into Order_Dishes foreach (var product in cartlists) { Order_Dishes productordered = new Order_Dishes(); productordered.Quantity = product.quantity; productordered.IdDish = product.dish.IdDish; productordered.IdOrder = order1.IdOrder; Order_DishesManager.AddOrder_Dishes(productordered); } var cart = new List <Cart>(); HttpContext.Session.SetObjectAsJson("Cart", cart); return(RedirectToAction("Confirmation", "Cart")); }