public IActionResult CreateDish(string name)
        {
            IEnumerable <BusinessLogic.Dish> dish = restaurantService.GetDish();
            var mapper2 = new MapperConfiguration(cfg => cfg.CreateMap <BusinessLogic.Dish, DishViewModel>()).CreateMapper();
            var dishs   = mapper2.Map <IEnumerable <BusinessLogic.Dish>, List <DishViewModel> >(dish);
            var last    = dishs.LastOrDefault().Dishid;

            var dishDto = new BusinessLogic.Dish
            {
                Name = name,
            };

            restaurantService.EditDish(dishDto);

            var IDs = AreChecked.ToArray();

            for (int i = 0; i < IDs.Length; i++)
            {
                var detailsDto = new BusinessLogic.Dishdetails
                {
                    Dishid       = last + 1,
                    Ingredientid = IDs[i],
                };
                restaurantService.EditDetails(detailsDto);
            }

            return(new RedirectToPageResult("/"));
        }
Example #2
0
        /// <summary>
        /// Creates the dish.
        /// </summary>
        /// <returns>The dish.</returns>
        private BusinessLogic.Dish CreateDish()
        {
            Console.Write("Введіть назву страви: ");

            // Dish name can contain any characters
            var dishName    = Console.ReadLine();
            var cookTime    = 0.0;
            var ingredients = new List <BusinessLogic.Ingredient> ();

            DisplayPredefinedIngredients();
            Console.WriteLine("Виберіть інгрідієнти (перелічуйте через один пустий символ) або створіть новий (+) (буде автоматично додано до замовлення): ");
            do
            {
                CommandPromtWithColor(ConsoleColor.Cyan);
                try {
                    var ingredientsToAdd = Console.ReadLine().Split(' ');
                    IEnumerable <int> parsedIngredientsToAdd;
                    if (ingredientsToAdd [0].Equals("+"))
                    {
                        ingredients.Add(CreateIngredientUsing(predefinedIngredients));
                    }
                    else
                    {
                        parsedIngredientsToAdd = ingredientsToAdd.Select(x => int.Parse(x) - 1);
                        foreach (var i in parsedIngredientsToAdd)
                        {
                            ingredients.Add(predefinedIngredients [i]);
                        }
                    }
                } catch (Exception) {
                    Console.WriteLine("Помилка при створенні страви. Спробуйте ще раз!");
                    continue;
                }
                break;
            } while(true);

            do
            {
                Console.Write("Введіть час приготування (в хв.): ");
                try {
                    cookTime = double.Parse(Console.ReadLine());
                    if (cookTime < minimalCookTime)
                    {
                        throw new ArgumentException("Час приготування має бути більшим.");
                    }
                } catch (Exception) {
                    Console.WriteLine("Помилка при введенні часу приготування. Спробуйте ще раз!");
                    continue;
                }
                break;
            } while(true);

            var dish = new BusinessLogic.Dish(dishName, ingredients, dishMargin, cookTime);

            predefinedDishes.Add(dish);

            return(dish);
        }
        public void DishPriceSet()
        {
            var dish1 = new BusinessLogic.Dish ();
            var dishPrice = 10.4;

            order.AddDish (dish1);
            order.SetDishPrice (dish1, dishPrice);
            Assert.AreEqual (dishPrice, order.Dishes[0].Price);
        }
        public void DishPriceSet()
        {
            var dish1     = new BusinessLogic.Dish();
            var dishPrice = 10.4;

            order.AddDish(dish1);
            order.SetDishPrice(dish1, dishPrice);
            Assert.AreEqual(dishPrice, order.Dishes[0].Price);
        }
        public void DishAdded()
        {
            var dish1 = new BusinessLogic.Dish ();
            dish1.AddIngredient (new BusinessLogic.Ingredient ("Carrot", 10));
            dish1.AddIngredient (new BusinessLogic.Ingredient ("Water", 1));
            dish1.AddIngredient (new BusinessLogic.Ingredient ("Salt", 0.5));

            order.AddDish (dish1);
            Assert.Contains (dish1, order.Dishes);
        }
        public void DishCookTimeSet()
        {
            var dish1 = new BusinessLogic.Dish ();
            var dishCookTime = 5.25;

            order.AddDish (dish1);
            order.SetDishCookTime (dish1, dishCookTime);

            Assert.AreEqual (dishCookTime, order.Dishes [0].Time);
        }
        public void DishNameSet()
        {
            var dish1 = new BusinessLogic.Dish ();
            var dishName = "sample_name";

            order.AddDish (dish1);
            order.SetDishName (dish1, dishName);

            Assert.AreSame (order.Dishes[0].Name, dishName);
        }
        public void DishRemovedById()
        {
            var dish1 = new BusinessLogic.Dish();
            var id    = 0;

            order.AddDish(dish1);
            order.RemoveDishById(id);

            Assert.That(order.Dishes.Count == 0);
        }
        public void DishCookTimeSet()
        {
            var dish1        = new BusinessLogic.Dish();
            var dishCookTime = 5.25;

            order.AddDish(dish1);
            order.SetDishCookTime(dish1, dishCookTime);

            Assert.AreEqual(dishCookTime, order.Dishes [0].Time);
        }
Example #10
0
        public void DishNameSet()
        {
            var dish1    = new BusinessLogic.Dish();
            var dishName = "sample_name";

            order.AddDish(dish1);
            order.SetDishName(dish1, dishName);

            Assert.AreSame(order.Dishes[0].Name, dishName);
        }
Example #11
0
        public void DishRemovedById()
        {
            var dish1 = new BusinessLogic.Dish ();
            var id = 0;

            order.AddDish (dish1);
            order.RemoveDishById (id);

            Assert.That (order.Dishes.Count == 0);
        }
Example #12
0
        public void DishAdded()
        {
            var dish1 = new BusinessLogic.Dish();

            dish1.AddIngredient(new BusinessLogic.Ingredient("Carrot", 10));
            dish1.AddIngredient(new BusinessLogic.Ingredient("Water", 1));
            dish1.AddIngredient(new BusinessLogic.Ingredient("Salt", 0.5));

            order.AddDish(dish1);
            Assert.Contains(dish1, order.Dishes);
        }
Example #13
0
        public void TotalCostUpdated()
        {
            var dish1 = new BusinessLogic.Dish("sample", new List <Ingredient> {
                new Ingredient("1", 10), new Ingredient("2", 10)
            }, 4, 10);

            order.TotalCost = 0;

            order.AddDish(dish1);
            order.UpdateTotalCost();

            Assert.AreEqual(order.TotalCost, dish1.Price);
        }
 public void Initialize()
 {
     dish = new BusinessLogic.Dish ();
     ingredient1 = new BusinessLogic.Ingredient ("sample1", 10);
     ingredient2 = new BusinessLogic.Ingredient ("sample2", 15);
 }
Example #15
0
 public void SetDishCookTime(Dish dish, double dishCookTime)
 {
     dish.Time = dishCookTime;
 }
Example #16
0
 public void AddDish(Dish dish)
 {
     Dishes.Add (dish);
     TotalCost += dish.Price;
 }
Example #17
0
 public void SetDishName(Dish dish, string name)
 {
     dish.Name = name;
 }
Example #18
0
 public void SetDishCookTime(Dish dish, double dishCookTime)
 {
     dish.Time = dishCookTime;
 }
Example #19
0
 public void SetDishPrice(Dish dish, double price)
 {
     dish.Price = price;
 }
Example #20
0
 public void SetDishName(Dish dish, string name)
 {
     dish.Name = name;
 }
Example #21
0
        public void TotalCostUpdated()
        {
            var dish1 = new BusinessLogic.Dish ("sample", new List<Ingredient> { new Ingredient("1", 10), new Ingredient("2", 10) }, 4, 10);
            order.TotalCost = 0;

            order.AddDish (dish1);
            order.UpdateTotalCost ();

            Assert.AreEqual (order.TotalCost, dish1.Price);
        }
Example #22
0
 public void SetDishPrice(Dish dish, double price)
 {
     dish.Price = price;
 }
Example #23
0
        /// <summary>
        /// Creates the dish.
        /// </summary>
        /// <returns>The dish.</returns>
        private BusinessLogic.Dish CreateDish()
        {
            Console.Write ("Введіть назву страви: ");

            // Dish name can contain any characters
            var dishName = Console.ReadLine ();
            var cookTime = 0.0;
            var ingredients = new List<BusinessLogic.Ingredient> ();

            DisplayPredefinedIngredients ();
            Console.WriteLine ("Виберіть інгрідієнти (перелічуйте через один пустий символ) або створіть новий (+) (буде автоматично додано до замовлення): ");
            do {
                CommandPromtWithColor (ConsoleColor.Cyan);
                try {
                    var ingredientsToAdd = Console.ReadLine ().Split (' ');
                    IEnumerable<int> parsedIngredientsToAdd;
                    if (ingredientsToAdd [0].Equals ("+")) {
                        ingredients.Add (CreateIngredientUsing (predefinedIngredients));
                    } else {
                        parsedIngredientsToAdd = ingredientsToAdd.Select (x => int.Parse (x) - 1);
                        foreach (var i in parsedIngredientsToAdd) {
                            ingredients.Add (predefinedIngredients [i]);
                        }
                    }
                } catch (Exception) {
                    Console.WriteLine ("Помилка при створенні страви. Спробуйте ще раз!");
                    continue;
                }
                break;
            } while(true);

            do {
                Console.Write ("Введіть час приготування (в хв.): ");
                try {
                    cookTime = double.Parse (Console.ReadLine ());
                    if (cookTime < minimalCookTime) {
                        throw new ArgumentException ("Час приготування має бути більшим.");
                    }
                } catch (Exception) {
                    Console.WriteLine ("Помилка при введенні часу приготування. Спробуйте ще раз!");
                    continue;
                }
                break;
            } while(true);

            var dish = new BusinessLogic.Dish (dishName, ingredients, dishMargin, cookTime);
            predefinedDishes.Add (dish);

            return dish;
        }
Example #24
0
 public void AddDish(Dish dish)
 {
     Dishes.Add(dish);
     TotalCost += dish.Price;
 }
 public void Initialize()
 {
     dish        = new BusinessLogic.Dish();
     ingredient1 = new BusinessLogic.Ingredient("sample1", 10);
     ingredient2 = new BusinessLogic.Ingredient("sample2", 15);
 }