Exemplo n.º 1
0
        public async Task <List <FoodUnit> > SearchFood(string search)
        {
            var db     = new DAL.DB.SmartLifeDbContext();
            var result = new List <FoodUnit>();

            try
            {
                var response = await Request(search, NutritionixReqType.searchFoods);

                if (response.TryGetValue("success", out object payload))
                {
                    var foodAutoComplete = SearchFoodsResult.FromJson(JsonConvert.SerializeObject(response));
                    foreach (var item in foodAutoComplete.Success.Select(Success => Success.Common).First())
                    {
                        var food = new FoodUnit()
                        {
                            Id       = Guid.NewGuid(),
                            Name     = item.FoodName,
                            ImageUrl = item.Photo.Thumb
                        };
                        result.Add(food);
                    }
                    SaveData(search, db, result);
                }
            }
            catch (Exception)
            {
            }

            return(result);
        }
Exemplo n.º 2
0
 private void Reset()
 {
     _foodUnit             = new FoodUnit();
     GbAddEdit.DataContext = _foodUnit;
     BtnSave.Content       = GbAddEdit.Header = "افزودن";
     BtnSave.Background    = new SolidColorBrush(Color.FromRgb(92, 184, 92));
     BindGrid();
 }
Exemplo n.º 3
0
 private void GrdList_OnMouseDoubleClick(object sender, MouseButtonEventArgs e)
 {
     if (GrdList.Items.Count > 0)
     {
         _foodUnit             = (FoodUnit)GrdList.SelectedItem;
         GbAddEdit.DataContext = _foodUnit;
         GbAddEdit.Header      = $"ویرایش '{_foodUnit.Title}'";
         BtnSave.Content       = "ویرایش";
         BtnSave.Background    = new SolidColorBrush(Color.FromRgb(247, 194, 44));
     }
 }
Exemplo n.º 4
0
        public void ShouldAddMealFoodToMeal()
        {
            Meal     meal     = GetMeal();
            FoodUnit foodUnit = new FoodUnit(UnitType.Grams, 1);

            Food food = new Food("Bacon", "Bacon de testes", Guid.NewGuid(), MacronutrientTable.Default(), MicronutrientTable.Default(), foodUnit);

            meal.AddMealFood(new MealFood(food, 1));

            Assert.AreEqual(1, meal.MealFoodCount);
        }
Exemplo n.º 5
0
        public Toast(FoodUnit Unit, ToastType Type, int Count)
        {
            this.Name = "Tost";
            this.Unit = Unit;
            this.Type = Type;
            decimal TypePrice = Type.Equals(ToastType.Kasarli) ? PriceList.KasarliTost :
                                PriceList.KarisikTost;

            this.UnitPrice = Unit.Equals(FoodUnit.Ceyrek) ? TypePrice / 4 :
                             Unit.Equals(FoodUnit.Yarim)  ? TypePrice / 2 :
                             TypePrice;
            this.Count = Count;
        }
Exemplo n.º 6
0
        public void ShouldFailToAddMealFoodToMealTwice()
        {
            Meal     meal     = GetMeal();
            FoodUnit foodUnit = new FoodUnit(UnitType.Grams, 1);

            Food     food     = new Food("Bacon", "Bacon de testes", Guid.NewGuid(), MacronutrientTable.Default(), MicronutrientTable.Default(), foodUnit);
            MealFood mealFood = new MealFood(food, 1);

            meal.AddMealFood(mealFood);
            meal.AddMealFood(mealFood);

            Assert.IsFalse(meal.IsValid);
        }
Exemplo n.º 7
0
        public void ShouldFailToRemoveMealFoodFromMealTwice()
        {
            Meal     meal     = GetMeal();
            FoodUnit foodUnit = new FoodUnit(UnitType.Grams, 1);

            Food     food     = new Food("Bacon", "Bacon de testes", Guid.NewGuid(), MacronutrientTable.Default(), MicronutrientTable.Default(), foodUnit);
            MealFood mealFood = new MealFood(food, 0);

            meal.RemoveMealFood(mealFood);
            meal.RemoveMealFood(mealFood);

            Assert.IsFalse(meal.IsValid);
            Assert.AreEqual("A lista de alimentos dessa refeição não contém esse alimento.", meal.GetNotifications().FirstOrDefault().Description);
        }
Exemplo n.º 8
0
        public void ShouldRecalculateMealMacros()
        {
            Meal     meal     = GetMeal();
            FoodUnit foodUnit = new FoodUnit(UnitType.Grams, 1);

            Food food    = new Food("Peito de Frango", "Peito de Frango cozido", Guid.NewGuid(), new MacronutrientTable(0, 24, 2), MicronutrientTable.Default(), foodUnit);
            Food foodTwo = new Food("Brócolis", "Brócolis Verde", Guid.NewGuid(), new MacronutrientTable(6, 2, 0), MicronutrientTable.Default(), foodUnit);

            meal.AddMealFood(new MealFood(food, 1));
            meal.AddMealFood(new MealFood(foodTwo, 1));

            Assert.AreEqual(6, meal.MealMacronutrients.Carbohydrate);
            Assert.AreEqual(26, meal.MealMacronutrients.Protein);
            Assert.AreEqual(2, meal.MealMacronutrients.Fat);
        }
Exemplo n.º 9
0
        public void ShouldRecalculateDietTotalMacros()
        {
            Diet     diet     = GetNewDiet();
            Meal     meal     = diet.AddMeal("Breakfast", "A faster breakfast", new Time(9, 0, 0));
            FoodUnit foodUnit = new FoodUnit(UnitType.Grams, 1);
            Food     food     = new Food("Peito de Frango", "Peito de Frango cozido", Guid.NewGuid(), new MacronutrientTable(0, 24, 2), MicronutrientTable.Default(), foodUnit);
            Food     foodTwo  = new Food("Brócolis", "Brócolis Verde", Guid.NewGuid(), new MacronutrientTable(6, 2, 0), MicronutrientTable.Default(), foodUnit);

            meal.AddMealFood(new MealFood(food, 1));
            meal.AddMealFood(new MealFood(foodTwo, 1));

            diet.RecalculateDietTotalMacros();

            Assert.AreEqual(6, diet.TotalMacronutrients.Carbohydrate);
            Assert.AreEqual(26, diet.TotalMacronutrients.Protein);
            Assert.AreEqual(2, diet.TotalMacronutrients.Fat);
        }
Exemplo n.º 10
0
        private async void OpenEditUnitDialogAsync(FoodUnit unit)
        {
            var unitClone = unit.Clone();

            var dialog = _dialogs.For <FoodUnitDialogViewModel>(FoodDialogDialogsIdentifier);

            dialog.Data.FoodUnit          = FoodUnitViewModel.FromModel(unitClone);
            dialog.Data.DialogTitle       = "Modified food unit";
            dialog.Data.SubmitButtonTitle = "Save";

            var dialogResult = await dialog.Show();

            if (dialogResult != DialogResult.Ok)
            {
                return;
            }

            unitClone = dialog.Data.FoodUnit.ToModel();
            Food.Units.Replace(unit, unitClone);
        }
Exemplo n.º 11
0
        private async void OpenAddUnitDialogAsync()
        {
            var unit = new FoodUnit
            {
                Grams = FoodUnitConstants.MinimumAllowedUnitGrams
            };

            var dialog = _dialogs.For <FoodUnitDialogViewModel>(FoodDialogDialogsIdentifier);

            dialog.Data.FoodUnit          = FoodUnitViewModel.FromModel(unit);
            dialog.Data.DialogTitle       = "New food unit";
            dialog.Data.SubmitButtonTitle = "Create";

            var dialogResult = await dialog.Show();

            if (dialogResult != DialogResult.Ok)
            {
                return;
            }

            unit = dialog.Data.FoodUnit.ToModel();
            Food.Units.Add(unit);
        }
Exemplo n.º 12
0
        public void Ekle_Button_Click(object Sender, EventArgs e)
        {
            try
            {
                string[]     arr = new string[5];
                ListViewItem itm;
                arr[0] = Numerator.GetInstance().OrderNo().ToString();

                string product = this.comboBox1.GetItemText(this.comboBox1.SelectedItem);
                arr[1] = product;
                int count = Convert.ToInt32(this.comboBox2.GetItemText(this.comboBox2.SelectedItem));
                if (product.Equals("Küçük Çay"))
                {
                    Tea tea = new Tea(DrinkUnit.KucukBardak, count);
                    arr[2] = tea.UnitPrice.ToString();
                    arr[3] = count.ToString();
                    arr[4] = (tea.UnitPrice * count).ToString();
                }
                else if (product.Equals("Büyük Çay"))
                {
                    Tea tea = new Tea(DrinkUnit.BuyukBardak, count);
                    arr[2] = tea.UnitPrice.ToString();
                    arr[3] = count.ToString();
                    arr[4] = (tea.UnitPrice * count).ToString();
                }
                else if (product.Equals("Türk Kahvesi"))
                {
                    TurkishCoffee turkishCoffee = new TurkishCoffee(DrinkUnit.Fincan, count);
                    arr[2] = turkishCoffee.UnitPrice.ToString();
                    arr[3] = count.ToString();
                    arr[4] = (turkishCoffee.UnitPrice * count).ToString();
                }

                else if (product.Equals("Küçük Nescafe"))
                {
                    Nescafe nescafe = new Nescafe(DrinkUnit.KucukBardak, count);
                    arr[2] = nescafe.UnitPrice.ToString();
                    arr[3] = count.ToString();
                    arr[4] = (nescafe.UnitPrice * count).ToString();
                }
                else if (product.Equals("Fincan Nescafe"))
                {
                    Nescafe nescafe = new Nescafe(DrinkUnit.Fincan, count);
                    arr[2] = nescafe.UnitPrice.ToString();
                    arr[3] = count.ToString();
                    arr[4] = (nescafe.UnitPrice * count).ToString();
                }
                else if (product.Equals("Soda"))
                {
                    Soda soda = new Soda(DrinkUnit.Sise, count);
                    arr[2] = soda.UnitPrice.ToString();
                    arr[3] = count.ToString();
                    arr[4] = (soda.UnitPrice * count).ToString();
                }
                else if (product.Equals("Kola") ||
                         product.Equals("Fanta") ||
                         product.Equals("Sprite") ||
                         product.Equals("Gazoz") ||
                         product.Equals("Limonlu Soda") ||
                         product.Equals("Ayran"))
                {
                    SoftDrinkType type = product.Equals("Kola") ? SoftDrinkType.Kola :
                                         product.Equals("Fanta") ? SoftDrinkType.Fanta :
                                         product.Equals("Sprite") ? SoftDrinkType.Sprite :
                                         product.Equals("Gazoz") ? SoftDrinkType.Gazoz :
                                         product.Equals("Limonlu Soda") ? SoftDrinkType.LimonluSoda :
                                         SoftDrinkType.Ayran;

                    SoftDrink mesrubat = new SoftDrink(type, count);
                    arr[2] = mesrubat.UnitPrice.ToString();
                    arr[3] = count.ToString();
                    arr[4] = (mesrubat.UnitPrice * count).ToString();
                }

                else if (product.Equals("Kaşarlı Tost") || product.Equals("Karışık Tost"))
                {
                    FoodUnit unit = comboBox3.GetItemText(this.comboBox3.SelectedItem)
                                    .Equals("Çeyrek") ? FoodUnit.Ceyrek :
                                    comboBox3.GetItemText(this.comboBox3.SelectedItem)
                                    .Equals("Yarım") ? FoodUnit.Yarim :
                                    FoodUnit.Tam;

                    ToastType type = comboBox1.GetItemText(this.comboBox1.SelectedItem)
                                     .Equals("Kaşarlı Tost") ? ToastType.Kasarli :
                                     ToastType.Karisik;
                    Toast tost = new Toast(unit, type, count);
                    arr[1] = unit + "  " + product;
                    arr[2] = tost.UnitPrice.ToString();
                    arr[3] = count.ToString();
                    arr[4] = (tost.UnitPrice * count).ToString();
                }
                else
                {
                }
                checkSum     += Convert.ToDecimal(arr[4]);
                textBox2.Text = checkSum.ToString();
                itm           = new ListViewItem(arr);
                listView1.Items.Add(itm);

                this.button2.Enabled = true;
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Exemplo n.º 13
0
        private MacronutrientTable CalculateQuantityMacros(MacronutrientTable macronutrient, FoodUnit foodUnit, decimal quantity)
        {
            decimal carbohydrates = (macronutrient.Carbohydrate * quantity) / foodUnit.DefaultGramsQuantityMultiplier;
            decimal protein       = (macronutrient.Protein * quantity) / foodUnit.DefaultGramsQuantityMultiplier;
            decimal fat           = (macronutrient.Fat * quantity) / foodUnit.DefaultGramsQuantityMultiplier;

            return(new MacronutrientTable(carbohydrates, protein, fat));
        }
Exemplo n.º 14
0
 private void RemoveUnit(FoodUnit unit) => Food.Units.RemoveByReference(unit);
Exemplo n.º 15
0
 public MealFood Clone() => new MealFood
 {
     Amount   = Amount,
     Food     = Food.Clone(),
     FoodUnit = FoodUnit.Clone()
 };
Exemplo n.º 16
0
 public FoodUnitWithNutrientsValue(FoodUnit foodUnit, DefaultFoodUnit defaultFoodUnit)
 {
     FoodUnit        = foodUnit;
     DefaultFoodUnit = defaultFoodUnit;
 }