Exemplo n.º 1
0
        public MealFood(Food food, decimal quantity)
        {
            FoodId   = food.Id;
            Quantity = quantity;

            Macronutrients = CalculateQuantityMacros(food.Macronutrients, food.FoodUnit, quantity);
        }
Exemplo n.º 2
0
 public Diet(Guid profileId, string name, string description)
 {
     ProfileId           = profileId;
     Name                = name;
     Description         = description;
     StartDate           = DateTime.Now;
     TotalMacronutrients = MacronutrientTable.Default();
 }
Exemplo n.º 3
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.º 4
0
 public void Update(string name, string description, Guid foodTableId, MacronutrientTable macronutrients, MicronutrientTable micronutrients, FoodUnit foodUnit)
 {
     Name           = name;
     Description    = description;
     FoodTableId    = foodTableId;
     Macronutrients = macronutrients;
     Micronutrients = micronutrients ?? new MicronutrientTable();
     FoodUnit       = foodUnit;
 }
Exemplo n.º 5
0
 public Food(string name, string description, Guid foodTableId, MacronutrientTable macronutrients, MicronutrientTable micronutrients, FoodUnit foodUnit)
 {
     FoodType       = FoodType.Default;
     Name           = name;
     Description    = description;
     FoodTableId    = foodTableId;
     Macronutrients = macronutrients;
     Micronutrients = micronutrients ?? new MicronutrientTable();
     FoodUnit       = foodUnit;
 }
Exemplo n.º 6
0
        public Meal(Guid profileId, Guid dietId, string name, string description, Time timeOfDay)
        {
            ProfileId   = profileId;
            DietId      = dietId;
            Name        = name;
            Description = description;
            TimeOfDay   = timeOfDay;

            MealMacronutrients = MacronutrientTable.Default();
            _mealFoods         = new List <MealFood>();
        }
Exemplo n.º 7
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.º 8
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.º 9
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.º 10
0
        private void RecalculateMealTotalMacros()
        {
            MealMacronutrients = MacronutrientTable.Default();

            if (!_mealFoods.Any())
            {
                MealMacronutrients = MacronutrientTable.Default();
            }

            foreach (MealFood mealFood in _mealFoods)
            {
                MealMacronutrients = MealMacronutrients
                                     .Sum(mealFood.Macronutrients);
            }
        }
Exemplo n.º 11
0
        public void RecalculateDietTotalMacros()
        {
            TotalMacronutrients = MacronutrientTable.Default();

            if (!_dietMeals.Any())
            {
                TotalMacronutrients = MacronutrientTable.Default();
            }

            foreach (Meal dietMeal in _dietMeals)
            {
                TotalMacronutrients = TotalMacronutrients
                                      .Sum(dietMeal.MealMacronutrients);
            }
        }
Exemplo n.º 12
0
 public CustomFood(Guid profileId, string name, string description, Guid foodTableId, MacronutrientTable macronutrients, MicronutrientTable micronutrients, FoodUnit foodUnit)
     : base(name, description, foodTableId, macronutrients, micronutrients, foodUnit)
 {
     FoodType  = FoodType.Custom;
     ProfileId = profileId;
 }