internal static OrderedDishModel ToModel(OrderedDish o) { return(new OrderedDishModel { CuisineId = o.CuisineId, DishId = o.DishId, Quantity = o.Quantity, }); }
private decimal DishPrice(OrderedDish dish) { decimal summ = dish.DishFromMenu.Price; foreach (var mod in dish.OrderedMods) { summ += mod.Mod.Price * mod.Count; } return(summ); }
public string DishMods(OrderedDish dish) { var respText = ""; var allOrderedMods = dish.OrderedMods.Where(o => o.Count > 0); if (allOrderedMods.Any()) { foreach (var mod in allOrderedMods) { respText += " " + mod.Mod.Name + " " + mod.Mod.Price + " р." + " x" + mod.Count + Environment.NewLine; } } return(respText); }
OrderedDish XElementToOrderedDish(XElement XOrderedDish) { OrderedDish orderedDish = new OrderedDish { orderId = uint.Parse(XOrderedDish.Element("OrderID").Value), dishID = uint.Parse(XOrderedDish.Element("DishID").Value), numberOfSameDish = uint.Parse(XOrderedDish.Element("SameDish").Value), dishLevelOfKosher = (Kosher)Enum.Parse(typeof(Kosher), XOrderedDish.Element("Kosher").Value), dishSize = (SizeOfDish)Enum.Parse(typeof(SizeOfDish), XOrderedDish.Element("Size").Value), notes = XOrderedDish.Element("Notes").Value, }; return(orderedDish); }
public JsonResult AddToCart(CartEntryViewModel entry) { MongoDBDataProvider provider = new MongoDBDataProvider(); if (Session["Cart"] == null) { Session["Cart"] = new List <OrderedDish>(); } OrderedDish orderedDish = new OrderedDish(); Category tmpCat = provider.CategoryGet(entry.category); orderedDish.price = 0; orderedDish.dish = tmpCat.dishes.Where(x => x.name == entry.dish).SingleOrDefault(); orderedDish.quantity = entry.quantity; if (entry.supplements == null) { orderedDish.supplements = null; } else { orderedDish.supplements = new List <Supplement>(); foreach (string supName in entry.supplements) { foreach (Supplement catSup in tmpCat.supplements) { if (supName == catSup.name) { Supplement tmpSup = new Supplement(); tmpSup.name = catSup.name; tmpSup.price = catSup.price; orderedDish.supplements.Add(tmpSup); orderedDish.price += tmpSup.price; } } } } orderedDish.price += orderedDish.dish.price * orderedDish.quantity; List <OrderedDish> cart = (List <OrderedDish>)Session["Cart"]; cart.Add(orderedDish); return(Json(cart)); }
public void OrderDish() { var service = new TestLiteCustomerService(); var serviceManager = new TestLiteManagerService(); var rand = new Random(); var dishList = service.GetAllMenus().First().DishList; var randomDish = dishList[rand.Next(dishList.Count)]; var orderedDish = new OrderedDish() { Remarks = "Побольше перца", DishFromMenu = randomDish }; var tableList = serviceManager.GetAllTables(); var randomTable = tableList[rand.Next(tableList.Count)]; service.OrderDish(randomTable.Id, orderedDish); }
public void AddDishIntoOrderedDishes(Dish dish) { // проверяем, есть ли уже в списке такое блюдо var orderedDish = _dishes.FirstOrDefault(cur => cur.DishId == dish.Id); if (orderedDish != null) { orderedDish.Quantity++; } else { orderedDish = new OrderedDish { DishId = dish.Id, Quantity = 1, OrderedPrice = GetRealPrice(dish) }; _dishes.Add(orderedDish); } }
private void CheckBonus() { var bonuses = _unitOfWork.BonusActions.GetAll().Where(b => b.ExcessSum < TotalSum); var bonus = bonuses.OrderBy(b => b.ExcessSum).LastOrDefault(); if (bonus != null) { BonusHeaderString = $"{bonus.Dish.Name} | ЗАКАЗ > {bonus.ExcessSum}"; BonusInfo = bonus.Description; // добавить бонусное блюдо _bonusDish = new OrderedDish { DishId = bonus.DishId, OrderedPrice = 0, Quantity = 1 }; OrderedDishes.Add(_bonusDish); } else { BonusInfo = "Извините, но за Ваш заказ бонус не предусмотрен."; } }
public void OrderDish(Guid tableId, OrderedDish dish) { using (var db = new LiteDatabase(CurrentDb)) { var tableCol = db.GetCollection <Table>("Tables"); var table = tableCol.Find(o => o.Id == tableId).FirstOrDefault(); if (table == null) { throw new TableNotFoundException(); } else { table.Orders.Add(dish); table.OrderPlaced = DateTime.Now; table.OrderProcessed = false; table.Cheque = null; tableCol.Update(table); } } }
public static void Initialize( ApplicationDbContext context, UserManager <ApplicationUser> userManager, RoleManager <IdentityRole> roleManager) { // Users & Roles var adminRole = new IdentityRole { Name = "Admin" }; var roleResult = roleManager.CreateAsync(adminRole).Result; var aUser = new ApplicationUser { UserName = "******", Email = "*****@*****.**", Address = "sjövägen 3", Zipcode = "11320", CustomerName = "Kunden", PhoneNumber = "0720302020" }; var adminUser = new ApplicationUser { UserName = "******", Email = "*****@*****.**", Address = "sjövägen 3", Zipcode = "11320", CustomerName = "Admin", PhoneNumber = "0720302020" }; var userResult = userManager.CreateAsync(aUser, "pass").Result; var adminUserResult = userManager.CreateAsync(adminUser, "pass").Result; var adminRoleResult = userManager.AddToRoleAsync(adminUser, "Admin").Result; // Ingredients var cheese = new Ingredient { Name = "Cheese", AddExtraPrice = 5, IsActive = true }; var tomatoe = new Ingredient { Name = "Tomatoe", AddExtraPrice = 5, IsActive = true }; var ham = new Ingredient { Name = "Ham", AddExtraPrice = 10, IsActive = true }; var mushroom = new Ingredient { Name = "Mushroom", AddExtraPrice = 10, IsActive = true }; var pineapple = new Ingredient { Name = "Pineapple", AddExtraPrice = 10, IsActive = true }; // Categories var pizza = new Category { Name = "Pizza", IsActive = true }; var pasta = new Category { Name = "Pasta", IsActive = true }; // Dishes var capricciosa = new BaseDish { Name = "Capricciosa", Price = 100, IsActive = true, Category = pizza }; var margherita = new BaseDish { Name = "Margherita", Price = 90, IsActive = true, Category = pizza }; var hawaii = new BaseDish { Name = "Hawaii", Price = 100, IsActive = true, Category = pizza }; var pastacarbonara = new BaseDish { Name = "Pasta carbonara", Price = 90, IsActive = true, Category = pasta }; // Orders var order1 = new Order { TotalPrice = 200, User = aUser, OrderDate = DateTime.Now, Address = "Testvägen 3", Email = "*****@*****.**", PhoneNumber = "23920323223", Zipcode = "12321", IsComplete = true }; var order2 = new Order { TotalPrice = 100, OrderDate = DateTime.Now, Address = "Testvägen 3", Email = "*****@*****.**", PhoneNumber = "23920323223", Zipcode = "12321", IsComplete = false }; var orderedDish1 = new OrderedDish { Name = "Capricciosa", Price = 100, Category = pizza }; orderedDish1.OrderedDishIngredients = new List <OrderedDishIngredient> { new OrderedDishIngredient { OrderedDish = orderedDish1, Ingredient = cheese }, new OrderedDishIngredient { OrderedDish = orderedDish1, Ingredient = tomatoe }, new OrderedDishIngredient { OrderedDish = orderedDish1, Ingredient = ham }, new OrderedDishIngredient { OrderedDish = orderedDish1, Ingredient = mushroom } }; var orderedDish2 = new OrderedDish { Name = "Margaritha", Price = 90, Category = pizza }; orderedDish2.OrderedDishIngredients = new List <OrderedDishIngredient> { new OrderedDishIngredient { OrderedDish = orderedDish2, Ingredient = cheese }, new OrderedDishIngredient { OrderedDish = orderedDish2, Ingredient = tomatoe }, new OrderedDishIngredient { OrderedDish = orderedDish2, Ingredient = mushroom } }; var orderedDish3 = new OrderedDish { Name = "Hawaii", Price = 100, Category = pizza }; orderedDish3.OrderedDishIngredients = new List <OrderedDishIngredient> { new OrderedDishIngredient { OrderedDish = orderedDish3, Ingredient = cheese }, new OrderedDishIngredient { OrderedDish = orderedDish3, Ingredient = tomatoe }, new OrderedDishIngredient { OrderedDish = orderedDish3, Ingredient = ham }, new OrderedDishIngredient { OrderedDish = orderedDish3, Ingredient = pineapple } }; capricciosa.BaseDishIngredients = new List <BaseDishIngredient> { new BaseDishIngredient { BaseDish = capricciosa, Ingredient = cheese }, new BaseDishIngredient { BaseDish = capricciosa, Ingredient = tomatoe }, new BaseDishIngredient { BaseDish = capricciosa, Ingredient = ham }, new BaseDishIngredient { BaseDish = capricciosa, Ingredient = mushroom } }; margherita.BaseDishIngredients = new List <BaseDishIngredient> { new BaseDishIngredient { BaseDish = margherita, Ingredient = cheese }, new BaseDishIngredient { BaseDish = margherita, Ingredient = ham } }; hawaii.BaseDishIngredients = new List <BaseDishIngredient> { new BaseDishIngredient { BaseDish = hawaii, Ingredient = cheese }, new BaseDishIngredient { BaseDish = hawaii, Ingredient = ham }, new BaseDishIngredient { BaseDish = hawaii, Ingredient = pineapple } }; order1.OrderedDishes = new List <OrderedDish> { orderedDish1, orderedDish2 }; order2.OrderedDishes = new List <OrderedDish> { orderedDish3 }; context.AddRange(cheese, tomatoe, ham, mushroom, pineapple); context.AddRange(capricciosa, margherita, hawaii, pastacarbonara); context.AddRange(order1, order2); context.AddRange(orderedDish1, orderedDish2, orderedDish3); context.AddRange(pizza, pasta); context.SaveChanges(); }
public bool GetMonthlyOrderedDishes(OrderedDish od) => od.Order.Reservation.Day.Date > DateTime.Today.AddMonths(-1);
public bool GetWeeklyOrderedDishes(OrderedDish od) => od.Order.Reservation.Day.Date > DateTime.Today.AddDays(-7);
public bool GetDailyOrderedDishes(OrderedDish od) => od.Order.Reservation.Day.Date == DateTime.Today;
public void Initialize() { string date = DateTime.Now.ToString("dd-MM-yyyy"); MongoDBDataProvider dbMongo = new MongoDBDataProvider(); StreamReader stream; //Check is database initialized if (dbMongo.CategoryGetAll().Count != 0) { return; } DeleteAllData(); try { stream = new StreamReader(HostingEnvironment.MapPath(categoryFilePath)); while (!stream.EndOfStream) { Category category = new Category(); category.name = stream.ReadLine(); stream.ReadLine(); int numofdishes = Convert.ToInt32(stream.ReadLine()); List <Dish> dishes = new List <Dish>(); for (int i = 0; i < numofdishes; i++) { Dish dish = new Dish(); dish.name = stream.ReadLine(); dish.description = stream.ReadLine(); dish.price = Convert.ToInt32(stream.ReadLine()); dishes.Add(dish); } int numofsupplements = Convert.ToInt32(stream.ReadLine()); List <Supplement> supplements = new List <Supplement>(); for (int i = 0; i < numofsupplements; i++) { Supplement supplement = new Supplement(); supplement.name = stream.ReadLine(); supplement.price = Convert.ToInt32(stream.ReadLine()); supplements.Add(supplement); } category.dishes = dishes; category.supplements = supplements; dbMongo.CategoryCreate(category.name); foreach (Dish dish in category.dishes) { dbMongo.CategoryDishCreate(dish.name, dish.description, dish.price, category.name); } foreach (Supplement supplement in category.supplements) { dbMongo.CategorySupplementCreate(supplement.name, supplement.price, category.name); } } stream.Close(); } catch (Exception e) { } try { stream = new StreamReader(HostingEnvironment.MapPath(districtFilePath)); while (!stream.EndOfStream) { District district = new District(); district.name = stream.ReadLine(); int numofRestaurants = Convert.ToInt32(stream.ReadLine()); district.restaurants = new List <Restaurant>(); for (int i = 0; i < numofRestaurants; i++) { Restaurant restaurant = new Restaurant(); restaurant.name = stream.ReadLine(); restaurant.address = stream.ReadLine(); restaurant.coordinates = new double[2]; restaurant.coordinates[0] = Convert.ToDouble(stream.ReadLine()); restaurant.coordinates[1] = Convert.ToDouble(stream.ReadLine()); district.restaurants.Add(restaurant); } dbMongo.DistrictCreate(district); } stream.Close(); } catch (Exception e) { } dbMongo.DelivererCreate("Piter Parker"); dbMongo.DelivererCreate("Tony Stark"); dbMongo.DelivererCreate("Bruce Wayne"); try { stream = new StreamReader(HostingEnvironment.MapPath(orderFilePath)); while (!stream.EndOfStream) { Order order = new Order(); order.name = stream.ReadLine(); order.adress = stream.ReadLine(); order.phone = stream.ReadLine(); order.price = stream.ReadLine(); OrderedDish orderDish = new OrderedDish(); Dish dish = new Dish(); dish.name = stream.ReadLine(); dish.description = stream.ReadLine(); dish.price = Convert.ToInt32(stream.ReadLine()); orderDish.dish = dish; orderDish.quantity = Convert.ToInt32(stream.ReadLine()); int numofsupplements = Convert.ToInt32(stream.ReadLine()); List <Supplement> supplements = new List <Supplement>(); for (int i = 0; i < numofsupplements; i++) { Supplement supplement = new Supplement(); supplement.name = stream.ReadLine(); supplement.price = Convert.ToInt32(stream.ReadLine()); supplements.Add(supplement); } orderDish.supplements = supplements; order.orderedDish = new List <OrderedDish> { orderDish }; List <Restaurant> restaurants = dbMongo.DistrictGet("Palilula").restaurants; Restaurant restaurant = restaurants.ElementAt(new Random().Next() % restaurants.Count); dbMongo.OrderCreate(order.name, order.adress, order.phone, order.price, date, restaurant.id, order.orderedDish); } stream.Close(); } catch (Exception e) { } }