Пример #1
0
 public FoodDetailsUserControl()
 {
     InitializeComponent();
     this.DataContext     = this;
     foodDetailsViewModel = new FoodDetailsViewModel();
     this.DataContext     = foodDetailsViewModel;
 }
Пример #2
0
        public IActionResult FoodDetails(int foodID, int mealID, string date, string apiID, string imageURL)
        {
            Food f;
            FoodDetailsViewModel vm;

            //Used to get API Food Details in future
            //if (foodID == 0)
            //{
            //    f = APIHelper.GetFoodByID(apiID).Result;
            //    vm = new FoodDetailsViewModel(f);
            //    vm.ImageURL = imageURL;
            //}
            f  = _foodService.getByID(Convert.ToInt32(foodID));
            vm = new FoodDetailsViewModel(f);

            if (vm.CreatorID.ToString().Equals(_userManager.GetUserId(User)))
            {
                vm.SubmitType = (SubmitType)4;
            }
            else
            {
                vm.SubmitType = (SubmitType)3;
            }

            ViewBag.UserID = _userManager.GetUserId(User);

            return(View("FoodDetails", vm));
        }
Пример #3
0
        private void CreateAndReplaceForMeal(FoodDetailsViewModel vm)
        {
            int foodID = CreateFood(vm);

            _foodService.AddFoodToExistingMeal(foodID, HttpContext.Session.GetInt32("MealID").Value, null);
            //meal id twice?
            _foodService.RemoveFoodFromMeal(HttpContext.Session.GetInt32("MealID").Value, HttpContext.Session.GetInt32("MealID").Value, HttpContext.Session.GetString("FoodID"));
        }
Пример #4
0
        public IActionResult CreateCustomFood(int mealID, string date)
        {
            FoodDetailsViewModel vm = new FoodDetailsViewModel();

            vm.SubmitType  = (SubmitType)1;
            ViewBag.Mode   = "create";
            ViewBag.UserID = _userManager.GetUserId(User);

            return(View("FoodDetails", vm));
        }
Пример #5
0
        private void CreateForMeal(FoodDetailsViewModel vm)
        {
            int foodID = CreateFood(vm);

            if (HttpContext.Session.GetInt32("MealID").Value == 0)
            {
                _foodService.AddFoodToNewMeal(HttpContext.Session.GetString("MealDate"), HttpContext.Session.GetInt32("MealType").Value, foodID, null, Convert.ToInt32(User.FindFirstValue(ClaimTypes.NameIdentifier)));
            }
            else
            {
                _foodService.AddFoodToExistingMeal(foodID, HttpContext.Session.GetInt32("MealID").Value, null);
            }
        }
Пример #6
0
        public ActionResult Details(int id)
        {
            Food food = _foodContext.Get(id);

            food.Reviews = _reviewContext.GetAll().Where(r => r.FoodId == id).ToList();

            var config = new MapperConfiguration(cfg => cfg.CreateMap <Food, FoodDetailsViewModel>());
            var mapper = config.CreateMapper();

            //Copy values
            FoodDetailsViewModel foodDetails = mapper.Map <FoodDetailsViewModel>(food);

            return(View(foodDetails));
        }
Пример #7
0
        public IActionResult SubmitFood(FoodDetailsViewModel vm)
        {
            if (ModelState.IsValid)
            {
                int caseSwitch = (int)vm.SubmitType;
                switch (caseSwitch)
                {
                //Create for meal
                case 1:
                    CreateForMeal(vm);
                    return(RedirectToAction("GoToDate", "MealPlanner", new { date = HttpContext.Session.GetString("MealDate") }));

                //Update (unused - will be for updating food unrelated to meal planner)
                case 2:
                    UpdateFood(vm);
                    return(View("FoodDetails", vm));

                //Create for meal and replace old record
                case 3:
                    CreateAndReplaceForMeal(vm);
                    return(RedirectToAction("GoToDate", "MealPlanner", new { date = HttpContext.Session.GetString("MealDate") }));

                //Update For Meal
                case 4:
                    UpdateFood(vm);
                    return(RedirectToAction("GoToDate", "MealPlanner", new { date = HttpContext.Session.GetString("MealDate") }));

                default:
                    return(View("FoodDetails", vm));
                }
            }
            else
            {
                //Add validation errors
                return(View("FoodDetails", vm));
            }
        }
Пример #8
0
 private int CreateFood(FoodDetailsViewModel vm)
 {
     return(_foodService.CreateFood(vm.FoodName, vm.FoodDesc, vm.Brand, vm.Cals, vm.MacC, vm.MacF, vm.MacP, Convert.ToInt32(User.FindFirstValue(ClaimTypes.NameIdentifier)), vm.APIFoodID, vm.ImageURL));
 }
Пример #9
0
 private void UpdateFood(FoodDetailsViewModel vm)
 {
     _foodService.UpdateFood(vm.FoodName, vm.Brand, vm.FoodDesc, vm.Cals, vm.MacC, vm.MacF, vm.MacP, vm.FoodID);
 }