public ActionResult SelectTrainingAids(TrainingItemViewModel viewModel) { ViewResult result = (ViewResult)EditTrainingItem(viewModel); result.ViewName = "~/Views/Training/Module/SelectTrainingAids.ascx"; return(result); }
public ActionResult EditBreakInterval(TrainingItemViewModel viewModel) { ViewResult result = (ViewResult)EditTrainingItem(viewModel); result.ViewName = "~/Views/Training/Module/EditBreakInterval.ascx"; return(result); }
public ActionResult EditBreakInterval(TrainingItemViewModel viewModel) { ViewResult result = (ViewResult)EditTrainingItem(viewModel); result.ViewName = "~/Views/LearnerProfile/ProfileModal/EditBreakInterval.cshtml"; return(result); }
public ActionResult CommitBreakInterval(TrainingItemViewModel viewModel) { ViewBag.ViewModel = viewModel; //if (!ModelState.IsValid) //{ // ViewBag.ModelState = this.ModelState; // return View(Settings.Default.ReportInputError); //} TrainingExecution execution = models.GetTable <TrainingExecution>().Where(t => t.ExecutionID == viewModel.ExecutionID).FirstOrDefault(); if (execution == null) { return(Json(new { result = false, message = "預編課程項目不存在!!" })); } var stage = models.GetTable <TrainingStage>().Where(s => s.StageID == viewModel.StageID).FirstOrDefault(); if (stage == null) { return(View("~/Views/Shared/JsAlert.cshtml", model: "資料錯誤!!")); } TrainingItem item = execution.TrainingItem.Where(i => i.ItemID == viewModel.ItemID).FirstOrDefault(); if (item == null) { item = new TrainingItem { ExecutionID = execution.ExecutionID, Sequence = execution.TrainingItem.Count, TrainingID = stage.TrainingStageItem .Select(t => t.TrainingType) .Where(t => t.BreakMark == true) .Select(t => t.TrainingID).FirstOrDefault() }; execution.TrainingItem.Add(item); } item.BreakIntervalInSecond = viewModel.BreakInterval = viewModel.BreakInterval.GetEfficientString(); item.Repeats = viewModel.Repeats = viewModel.Repeats.GetEfficientString(); item.Remark = viewModel.Remark; models.SubmitChanges(); if (item.Repeats != null) { calculateTotalMinutes(execution, stage.StageID); } return(Json(new { result = true, message = "", stage.StageID })); }
public ActionResult EditTrainingItem(TrainingItemViewModel viewModel) { if (!models.GetTable <TrainingExecution>().Any(t => t.ExecutionID == viewModel.ExecutionID)) { return(View("~/Views/ConsoleHome/Shared/AlertMessage.cshtml", model: "資料錯誤!!")); } var stage = models.GetTable <TrainingStage>().Where(s => s.StageID == viewModel.StageID).FirstOrDefault(); if (stage == null) { return(View("~/Views/ConsoleHome/Shared/AlertMessage.cshtml", model: "資料錯誤!!")); } ViewBag.TrainingStage = stage; TrainingItem item = models.GetTable <TrainingItem>().Where(x => x.ItemID == viewModel.ItemID).FirstOrDefault(); if (item != null) { viewModel.ItemID = item.ItemID; viewModel.TrainingID = item.TrainingID; viewModel.GoalTurns = item.GoalTurns; viewModel.GoalStrength = item.GoalStrength; viewModel.ExecutionID = item.ExecutionID; viewModel.Description = item.Description; viewModel.ActualStrength = item.ActualStrength; viewModel.ActualTurns = item.ActualTurns; viewModel.Remark = item.Remark; viewModel.Repeats = item.Repeats; viewModel.DurationInSeconds = item.DurationInMinutes * 60; viewModel.BreakInterval = item.BreakIntervalInSecond; viewModel.PurposeID = item.PurposeID; viewModel.AidID = item.TrainingItemAids.Select(s => s.AidID).ToArray(); } ViewBag.ViewModel = viewModel; if (item == null) { return(View("~/Views/LearnerProfile/ProfileModal/CreateTrainingItem.cshtml", item)); } else { return(View("~/Views/LearnerProfile/ProfileModal/EditTrainingItem.cshtml", item)); } }
public ActionResult DeleteTrainingItem(TrainingItemViewModel viewModel) { var item = models.GetTable <TrainingItem>().Where(i => i.ItemID == viewModel.ItemID).FirstOrDefault(); if (item == null) { return(Json(new { result = false, message = "課程項目不存在!!" }, JsonRequestBehavior.AllowGet)); } var execution = item.TrainingExecution; if (item.PurposeID.HasValue) { models.ExecuteCommand("delete PersonalExercisePurposeItem where ItemID = {0}", item.PurposeID); } models.ExecuteCommand("delete TrainingItem where ItemID = {0}", item.ItemID); calculateTotalMinutes(execution, viewModel.StageID.Value); return(Json(new { result = true, viewModel.StageID }, JsonRequestBehavior.AllowGet)); }
// GET: Training public ActionResult ShowTrainingAids(TrainingItemViewModel viewModel) { ViewBag.ViewModel = viewModel; return(View("~/Views/Training/Module/ShowTrainingAids.ascx")); }
public ActionResult CommitTrainingItem(TrainingItemViewModel viewModel) { ViewBag.ViewModel = viewModel; viewModel.Description = viewModel.Description.GetEfficientString(); if (viewModel.Description == null) { ModelState.AddModelError("Description", "請輸入動作"); } //viewModel.ActualStrength = viewModel.ActualStrength.GetEfficientString(); //if(viewModel.ActualStrength == null) //{ // ModelState.AddModelError("ActualStrength", "請輸入強度"); //} //viewModel.ActualTurns = viewModel.ActualTurns.GetEfficientString(); //if (viewModel.ActualTurns == null) //{ // ModelState.AddModelError("ActualTurns", "請輸入次數"); //} if (!viewModel.DurationInSeconds.HasValue) { ModelState.AddModelError("DurationInSeconds", "請輸入時間"); } if (!viewModel.TrainingID.HasValue) { ModelState.AddModelError("TrainingID", "請選擇類別"); } viewModel.Remark = viewModel.Remark.GetEfficientString(); if (viewModel.PurposeID.HasValue && viewModel.Remark == null) { ModelState.AddModelError("Remark", "請輸入里程碑內容"); } if (!ModelState.IsValid) { ViewBag.ModelState = this.ModelState; return(View(Settings.Default.ReportInputError)); } TrainingExecution execution = models.GetTable <TrainingExecution>().Where(t => t.ExecutionID == viewModel.ExecutionID).FirstOrDefault(); if (execution == null) { return(Json(new { result = false, message = "預編課程項目不存在!!" })); } TrainingItem item = execution.TrainingItem.Where(i => i.ItemID == viewModel.ItemID).FirstOrDefault(); if (item == null) { item = new TrainingItem { ExecutionID = execution.ExecutionID, Sequence = execution.TrainingItem.Count }; execution.TrainingItem.Add(item); } item.GoalStrength = viewModel.GoalStrength; item.GoalTurns = viewModel.GoalTurns; item.Description = viewModel.Description; item.TrainingID = viewModel.TrainingID; item.Remark = viewModel.Remark; item.DurationInMinutes = viewModel.DurationInMinutes; models.SubmitChanges(); models.ExecuteCommand("delete TrainingItemAids where ItemID = {0}", item.ItemID); if (viewModel.AidID != null && viewModel.AidID.Length > 0) { foreach (var aid in viewModel.AidID) { item.TrainingItemAids.Add(new TrainingItemAids { AidID = aid }); } models.SubmitChanges(); } calculateTotalMinutes(execution, viewModel.StageID.Value); bool UpdatePurpose = false; if (item.PurposeID.HasValue) { if (viewModel.PurposeID.HasValue) { models.ExecuteCommand("Update PersonalExercisePurposeItem set PurposeItem = {0} where ItemID = {1}", viewModel.Remark, item.PurposeID); } else { models.ExecuteCommand("delete PersonalExercisePurposeItem where ItemID = {0}", item.PurposeID); } UpdatePurpose = true; } else if (viewModel.PurposeID == -1 && item.Remark != null) { var purpose = item.TrainingExecution.TrainingPlan.LessonTime.RegisterLesson.UserProfile.AssertPurposeItem(models, item.Remark); purpose.CompleteDate = item.TrainingExecution.TrainingPlan.LessonTime.ClassTime; //DateTime.Now; item.PurposeID = purpose.ItemID; models.SubmitChanges(); UpdatePurpose = true; } return(Json(new { result = true, message = "", viewModel.StageID, UpdatePurpose })); }