public IActionResult AddModifySpecLine(int headId, int id, DateTime date) { if (headId != 0) { ViewBag.TrainingDay = date; TrainigSpecLineChangeViewModel model = new TrainigSpecLineChangeViewModel { Exercises = appContext.Exercises.ToList(), HeadId = headId, }; if (id != 0) //existed Line { ViewBag.Tittle = localizer["TittleModify"]; var spec = appContext.TrainingSpecs.Include(x => x.Exercise).Where(x => x.Id == id).ToList().FirstOrDefault(); model.Id = id; model.Name = spec.Exercise.Name; model.Set = spec.Set; model.Weight = spec.Weight; model.Amount = spec.Amount; return(View(model)); } else //new Line { ViewBag.Tittle = localizer["TittleAdd"]; return(View(model)); } } return(RedirectToAction("Index", "Home")); }
public IActionResult AddModifyTrainingSpecLine(int headId, int specId = 0) { if (headId == 0) { ModelState.AddModelError("Incorrect Head Id", "Incorrect Head Id"); } else { var line = new TrainigSpecLineChangeViewModel() { HeadId = headId, Exercises = appContext.Exercises.ToList(), }; if (specId != 0) //ветка модификации существующей позиции { ViewBag.Tittle = localizer["TittleModify"]; var spec = appContext.TrainingProgramSpecs.Include(x => x.Exercise).Where(x => x.Id == specId).ToList().FirstOrDefault(); line.Id = spec.Id; line.Name = spec.Exercise.Name; line.Set = spec.Set; line.Weight = spec.Weight; line.Amount = spec.Amount; } else { ViewBag.Tittle = localizer["TittleAdd"]; } return(View(line)); } return(RedirectToAction("List")); }
public IActionResult AddModifyTrainingPlanLine(DayOfWeek dayTraining, int headId) { var exercises = appContext.Exercises.OrderBy(x => x.Name).ToList(); int specId = 0; var model = new TrainigSpecLineChangeViewModel { Exercises = exercises, HeadId = headId }; if (TempData["specId"] != null && TempData["headId"] != null && TempData["dayTraining"] != null) { specId = (int)TempData["specId"]; headId = (int)TempData["headId"]; dayTraining = (DayOfWeek)TempData["dayTraining"]; ViewData["Tittle"] = (string)localizer["ModifyPlanExercise"]; var line = appContext.TrainingPlanSpecs.Find(specId); model.Id = specId; model.HeadId = headId; model.Set = line.Set; model.Weight = line.Weight; model.Name = line.Exercise.Name; model.Amount = line.Amount; } else { ViewData["Tittle"] = (string)localizer["AddingExerciseToPlan"]; } ViewBag.TrainingDay = dayTraining; return(View(model)); }
public async Task <IActionResult> AddModifyTrainingPlanLine(TrainigSpecLineChangeViewModel viewModel) { if (viewModel != null) { var exercises = appContext.Exercises.ToList(); if (!specLineValidator.IsSpecLineHasCorrectWeight(viewModel.ExerciseId, viewModel.Weight, exercises, out string shortMessage, out string longMessage)) { ModelState.AddModelError(shortMessage, longMessage); } if (ModelState.IsValid) { int headId = viewModel.HeadId; if (viewModel.HeadId == 0) { headId = await CreateTrainigPlanHead(viewModel.DayTraining, CreateTrainingPlanName(viewModel.DayTraining)); } documentSpecHandler.FillDocument(appContext.TrainingPlanSpecs.Where(x => x.HeadId.Equals(headId)).ToList()); var planSpecLine = new TrainingPlanSpec { HeadId = headId, ExId = viewModel.ExerciseId, Set = viewModel.Set, Weight = viewModel.Weight, Amount = viewModel.Amount, Order = documentSpecHandler.GetLastOrder() }; if (viewModel.Id == 0) { await appContext.TrainingPlanSpecs.AddAsync(planSpecLine); await appContext.SaveChangesAsync(); } else { planSpecLine.Id = viewModel.Id; var changingProgramPlanSpec = appContext.TrainingPlanSpecs.Find(planSpecLine.Id); if (changingProgramPlanSpec != null) { changingProgramPlanSpec.ExId = planSpecLine.ExId; changingProgramPlanSpec.Set = planSpecLine.Set; changingProgramPlanSpec.Weight = planSpecLine.Weight; changingProgramPlanSpec.Amount = planSpecLine.Amount; } appContext.TrainingPlanSpecs.Update(changingProgramPlanSpec); await appContext.SaveChangesAsync(); } } else { viewModel.Exercises = exercises.OrderBy(x => x.Name).ToList(); ViewBag.TrainingDay = viewModel.DayTraining; ViewData["Tittle"] = viewModel.Id == 0 ? (string)localizer["AddingExerciseToPlan"] : (string)localizer["ModifyPlanExercise"]; return(View(viewModel)); } } TempData["dayTraining"] = viewModel.DayTraining; return(RedirectToAction("Show")); }
public async Task <IActionResult> AddModifySpecLine(TrainigSpecLineChangeViewModel viewModel) { ViewBag.Tittle = viewModel.Id != 0 ? localizer["TittleModify"] : localizer["TittleAdd"]; string userId = userManager.GetUserId(HttpContext.User); if (viewModel == null) { ModelState.AddModelError("Incorrect TrainigSpecLineChangeViewModel", "Incorrect TrainigSpecLineChangeViewModel"); return(RedirectToAction("AddTrainingManually")); } var exercises = appContext.Exercises.ToList(); if (!specLineValidator.IsSpecLineHasCorrectWeight(viewModel.ExerciseId, viewModel.Weight, exercises, out string shortMessage, out string longMessage)) { ModelState.AddModelError(shortMessage, longMessage); } if (ModelState.IsValid) { var spec = new TrainingSpec { HeadId = viewModel.HeadId, Set = viewModel.Set, ExId = viewModel.ExerciseId, Weight = viewModel.Weight, Amount = viewModel.Amount, Id = viewModel.Id }; if (viewModel.Id == 0) { documentSpecHandler.FillDocument(appContext.TrainingSpecs.Where(x => x.HeadId.Equals(viewModel.HeadId)).ToList()); spec.Order = documentSpecHandler.GetLastOrder(); await appContext.TrainingSpecs.AddAsync(spec); } else { spec = appContext.TrainingSpecs.Find(viewModel.Id); spec.Set = viewModel.Set; spec.ExId = viewModel.ExerciseId; spec.Weight = viewModel.Weight; spec.Amount = viewModel.Amount; appContext.TrainingSpecs.Update(spec); } await appContext.SaveChangesAsync(); int headId = viewModel.HeadId; return(RedirectToAction("ViewTrainingSpecs", new { headId = headId })); } else { viewModel.Exercises = exercises; } return(View(viewModel)); }
public async Task <IActionResult> AddModifyTrainingSpecLine(TrainigSpecLineChangeViewModel viewModel) { ViewBag.Tittle = viewModel.Id == 0?localizer["TittleAdd"]:localizer["TittleModify"]; if (viewModel == null) { ModelState.AddModelError("Incorrect TrainigSpecLineChangeViewModel", "Incorrect TrainigSpecLineChangeViewModel"); return(RedirectToAction("List")); } var exercises = appContext.Exercises.ToList(); if (!specValidator.IsSpecLineHasCorrectWeight(viewModel.ExerciseId, viewModel.Weight, exercises, out string shortMessage, out string longMessage)) { ModelState.AddModelError(shortMessage, longMessage); } if (ModelState.IsValid) { if (viewModel.Id == 0) { TrainingProgramSpec programSpec = new TrainingProgramSpec { HeadId = viewModel.HeadId, ExId = viewModel.ExerciseId, Set = viewModel.Set, Weight = viewModel.Weight, Amount = viewModel.Amount }; await appContext.TrainingProgramSpecs.AddAsync(programSpec); await appContext.SaveChangesAsync(); } else { TrainingProgramSpec programSpec = await appContext.TrainingProgramSpecs.FindAsync(viewModel.Id); programSpec.ExId = viewModel.ExerciseId; programSpec.Set = viewModel.Set; programSpec.Weight = viewModel.Weight; programSpec.Amount = viewModel.Amount; appContext.Update(programSpec); await appContext.SaveChangesAsync(); } return(View("TrainingSpecList", Getmodel(viewModel.HeadId))); } viewModel.Exercises = exercises; return(View(viewModel)); }