// GET: DietPlans/Details/5
        public ActionResult Details(int?id)
        {
            DietViewModel dvm = new DietViewModel();

            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            DietPlan dietPlan = db.DietPlans.Find(id);

            if (dietPlan == null)
            {
                return(HttpNotFound());
            }
            dvm.dietPlan = dietPlan;
            int             category = db.DietPlans.Find(id).Category;
            IList <WorkOut> workOut  = db.WorkOuts.Where(w => w.Category == category).ToList();

            dvm.workOuts = workOut;
            IList <DayPerWeek> dayPerWeeks = db.DayPerWeeks.ToList();

            dvm.dayPerWeeks = dayPerWeeks;
            IList <Resource> resources = db.Resources.ToList();

            dvm.resources = resources;
            return(View(dvm));
        }
Example #2
0
        public DietViewModel CreateDiet(DietViewModel newDiet, string userId)
        {
            var diet = DownloadIngredient();

            newDiet.UserId = userId;


            if (newDiet.Diet == null)
            {
                newDiet.Diet = new List <DietPosition>();
            }

            int lastId = db.Diets.Max(k => k.DietId);

            foreach (var meal in diet)
            {
                var newPosition = new DietPosition()
                {
                    ProductId = meal.Model.ProductId,
                    Quantity  = meal.Weight,
                    DietId    = newDiet.DietId
                };

                newDiet.Diet.Add(newPosition);
            }
            db.Diets.Add(newDiet);

            db.SaveChanges();

            return(newDiet);
        }
        //
        // GET: /DailyDiet/

        public ViewResult Index()
        {
            var diets           = ddb.DailyDiet.ToList();
            var dailyentries    = ddeb.DailyDietEntry.ToList();
            var dietviewmodels  = new List <DietViewModel>();
            var entryviewmodels = new List <DailyDietEntryViewModel>();

            //var TableData = new DailyDietEntryViewModel[1, 24];
            foreach (var diet in diets)
            {
                var newVM = new DietViewModel();
                newVM.ID        = diet.ID;
                newVM.StartDate = diet.StartDate;
                newVM.Goals     = diet.Goals;
                newVM.Method    = diet.Method;
                dietviewmodels.Add(newVM);
            }
            foreach (var entry in dailyentries)
            {
                var newVM = new DailyDietEntryViewModel();
                newVM.ID    = entry.ID;
                newVM.Time  = entry.Time;
                newVM.Entry = entry.Entry;
                //TableData[1, newVM.Time] = newVM;
                entryviewmodels.Add(newVM);
            }
            var VMIndex = new DietViewModelIndex();

            VMIndex.diet       = dietviewmodels;
            VMIndex.dailyentry = entryviewmodels;
            //VMIndex.TableData = TableData;
            return(View(VMIndex));
        }
Example #4
0
        public async Task <ActionResult <int> > Create([FromBody] DietViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            return(await dietRepository.Create(model));
        }
Example #5
0
        public DietaDiaria()
        {
            InitializeComponent();
            InitializeComponent();
            BindingContext = vm = ViewModelLocator.DietViewModel;

            //vm.dataTasks.CollectionChanged += (sender, e);
            listViewdietadiari.ItemsSource = vm.dietaDay;
        }
Example #6
0
        public async Task <DietViewModel> GetDietViewModel()
        {
            var model = new DietViewModel();

            model.LCHFRecipes = await GetLowCarbHighFatRecipes();

            model.HighProteinLowCarbRecipes = await GetHighProteinLowCarb();

            return(model);
        }
Example #7
0
        public async Task <ActionResult> Create(DietViewModel details)
        {
            var userId = User.Identity.GetUserId();

            var newOrder = mealMenager.CreateDiet(details, userId);

            mealMenager.DeleteAll();


            return(RedirectToAction("CreateDiet"));
        }
        public ActionResult Create(int dietId)
        {
            var allProducts = _productService.GetSelectAllProductsListItem();
            var productVm   = new ProductDietViewModel()
            {
                AllProducts = allProducts,
                DietId      = dietId
            };
            var vm = new DietViewModel()
            {
                DietId               = dietId,
                ChosenProducts       = _dietService.GetChosenProducts(dietId),
                ProductDietViewModel = productVm,
                Date = DateTime.Now.Date
            };

            return(View(vm));
        }
Example #9
0
        public void RegisterDietForUser(DietViewModel vm, string name)
        {
            int userId        = _userRepository.GetUserIdByName(name);
            var alreadyInBase = _dietRepository.USER_DIETS.FirstOrDefault(x => x.USER_ID == userId && x.DIET_ID == vm.DietId);

            if (alreadyInBase != null)
            {
                return;
            }


            var entry = new USER_DIETS()
            {
                ENTRY_DATE = vm.Date,
                DIET_ID    = vm.DietId,
                USER_ID    = userId
            };

            _dietRepository.AddUserDietsEntry(entry);
        }
Example #10
0
        public async Task <DietViewModel> GetDietViewModelByEpiRowIdAsync(long epiRowId)
        {
            var nutriInfos = await _questionnaireRepository.GetNutriInfoBehavioralAsync(epiRowId);

            var nutritions = new List <NutritionInformation>();
            var result     = new DietViewModel();
            var hn         = "";
            var epiNo      = "";

            foreach (var item in nutriInfos)
            {
                hn    = string.IsNullOrEmpty(hn) ? item.PAPMI_No : hn;
                epiNo = string.IsNullOrEmpty(epiNo) ? item.PAADM_ADMNo : epiNo;

                var dietPatterns = await _questionnaireRepository.GetNutriInfoDietaryPatternAsync(item.ID);

                var dietaryPatterns = await dietPatterns.GetDietaryPatterns();

                var behavioral = new Behavioral()
                {
                    QAlcoholConsumption   = item.QAlcoholConsumption,
                    QAlcoholFrequency     = item.QAlcoholFrequency,
                    QAlcoholNote          = item.QAlcoholNote,
                    QAlcoholType          = item.QAlcoholType,
                    QAlcoholTypeOther     = item.QAlcoholTypeOther,
                    QBehavioralNA         = item.QBehavioralNA,
                    QCoffeeConsumption    = item.QCoffeeConsumption,
                    QCoffeeFrequency      = item.QCoffeeFrequency,
                    QCoffeeNote           = item.QCoffeeNote,
                    QCoffeeTpyeOther      = item.QCoffeeTpyeOther,
                    QCoffeeType           = item.QCoffeeType,
                    QFruitConsumption     = item.QFruitConsumption,
                    QFruitFrequency       = item.QFruitFrequency,
                    QFruitNote            = item.QFruitNote,
                    QTeaConsumption       = item.QTeaConsumption,
                    QTeaFrequency         = item.QTeaFrequency,
                    QTeaNote              = item.QTeaNote,
                    QTeaType              = item.QTeaType,
                    QTeaTypeOther         = item.QTeaTypeOther,
                    QVegetableConsumption = item.QVegetableConsumption,
                    QVegetableFrequency   = item.QVegetableFrequency,
                    QVegetableNote        = item.QVegetableNote
                };

                var nutrition = new NutritionInformation()
                {
                    ID              = item.ID,
                    QUESDate        = item.QUESDate,
                    QUESTime        = item.QUESTime,
                    Behavioral      = behavioral,
                    DietaryPatterns = dietaryPatterns,
                    QDietHistory    = item.QDietHistory,
                    QDietOrder      = item.QDietOrder,
                    QUESUserDR      = item.QUESUserDR,
                    SSUSR_Initials  = item.SSUSR_Initials,
                    SSUSR_Name      = item.SSUSR_Name
                };

                nutritions.Add(nutrition);
            }

            result = new DietViewModel()
            {
                PAPMI_No              = hn,
                PAADM_ADMNo           = epiNo,
                NutritionInformations = nutritions
            };

            return(result);
        }
 public ActionResult Create(DietViewModel vm)
 {
     _dietService.RegisterDietForUser(vm, User.Identity.Name);
     _dietService.UpdateDate(vm.DietId, vm.Date);
     return(RedirectToAction("Index"));
 }
Example #12
0
        public async Task <int> Create(DietViewModel model)
        {
            var meals = await appDbContext.Meals.AsNoTracking().Select(m2 => new
            {
                breakfast          = appDbContext.Meals.AsNoTracking().Where(m => m.Type == Meal.MealType.BREAKFAST).OrderBy(o => Guid.NewGuid()).First(),
                lunch              = appDbContext.Meals.AsNoTracking().Where(m => m.Type == Meal.MealType.LUNCH).OrderBy(o => Guid.NewGuid()).First(),
                dinner             = appDbContext.Meals.AsNoTracking().Where(m => m.Type == Meal.MealType.DINNER).OrderBy(o => Guid.NewGuid()).First(),
                snack              = appDbContext.Meals.AsNoTracking().Where(m => m.Type == Meal.MealType.SNACK).OrderBy(o => Guid.NewGuid()).First(),
                supper             = appDbContext.Meals.AsNoTracking().Where(m => m.Type == Meal.MealType.SUPPER).OrderBy(o => Guid.NewGuid()).First(),
                ifAlreadyExistDiet = appDbContext.Diets.AsNoTracking().Any(d => d.UserId.Equals(httpContextAccessor.HttpContext.User.FindFirst(Constants.Strings.JwtClaimIdentifiers.Id).Value))
            }).FirstOrDefaultAsync();

            var newDiet = new Diet
            {
                Name        = model.Name,
                Calories    = model.Calories,
                Meals       = model.MealsAmount,
                Created     = DateTime.UtcNow,
                DietCurrent = true,
                UserId      = httpContextAccessor.HttpContext.User.FindFirst(Constants.Strings.JwtClaimIdentifiers.Id).Value
            };

            // Get current diet and set prop DietCurrent to false;
            if (meals.ifAlreadyExistDiet)
            {
                var currentDiet = await appDbContext.Diets
                                  .Where(d => d.UserId.Equals(httpContextAccessor.HttpContext.User.FindFirst(Constants.Strings.JwtClaimIdentifiers.Id).Value))
                                  .OrderByDescending(d => d.Created).FirstOrDefaultAsync();

                currentDiet.DietCurrent = false;
            }

            appDbContext.Diets.Add(newDiet);
            await appDbContext.SaveChangesAsync();

            // Create meals to diet
            var mealDiet = new MealDiet
            {
                DietId = newDiet.Id,
                MealId = meals.breakfast.Id
            };
            var mealDiet2 = new MealDiet
            {
                DietId = newDiet.Id,
                MealId = meals.lunch.Id
            };
            var mealDiet3 = new MealDiet
            {
                DietId = newDiet.Id,
                MealId = meals.dinner.Id
            };
            var mealDiet4 = new MealDiet
            {
                DietId = newDiet.Id,
                MealId = meals.snack.Id
            };
            var mealDiet5 = new MealDiet
            {
                DietId = newDiet.Id,
                MealId = meals.supper.Id
            };

            if (model.MealsAmount == 5)
            {
                appDbContext.MealDiets.AddRange(mealDiet, mealDiet2, mealDiet3, mealDiet4, mealDiet5);
            }
            else if (model.MealsAmount == 4)
            {
                appDbContext.MealDiets.AddRange(mealDiet, mealDiet2, mealDiet3, mealDiet5);
            }
            else
            {
                appDbContext.MealDiets.AddRange(mealDiet, mealDiet3, mealDiet5);
            }

            await appDbContext.SaveChangesAsync();

            return(newDiet.Id);
        }