public ActionResult CommitPromotionParticipant(PromotionParticipantViewModel viewModel) { ViewResult result = (ViewResult)EditPromotionParticipant(viewModel); PDQGroup item = result.Model as PDQGroup; if (item == null) { return(result); } if (!viewModel.UID.HasValue) { this.ModelState.AddModelError("UID", "請選擇學員!!"); ViewBag.ModelState = this.ModelState; return(View("~/Views/Shared/ReportInputError.ascx")); } var quest = item.PDQQuestion.First(); var taskItem = new PDQTask { QuestionID = quest.QuestionID, UID = viewModel.UID.Value, TaskDate = DateTime.Now, PDQTaskBonus = new PDQTaskBonus { }, }; models.GetTable <PDQTask>().InsertOnSubmit(taskItem); models.SubmitChanges(); return(Json(new { result = true, bonus = taskItem != null })); }
public ActionResult InquirePromotionParticipant(PromotionParticipantViewModel viewModel) { ViewResult result = (ViewResult)EditPromotionParticipant(viewModel); PDQGroup item = result.Model as PDQGroup; if (item == null) { return(result); } IQueryable <UserProfile> items; viewModel.UserName = viewModel.UserName.GetEfficientString(); if (viewModel.UserName == null) { this.ModelState.AddModelError("UserName", "請輸學員名稱!!"); ViewBag.ModelState = this.ModelState; return(View("~/Views/Shared/ReportInputError.ascx")); } else { items = models.GetTable <UserProfile>() .Where(l => l.RealName.Contains(viewModel.UserName) || l.Nickname.Contains(viewModel.UserName)) .FilterByLearner(models, true) .OrderBy(l => l.RealName); } return(View("~/Views/CoachFacet/Module/VipSelector.ascx", items)); }
public ActionResult SelectPromotionParticipant(PromotionParticipantViewModel viewModel) { ViewResult result = (ViewResult)EditPromotionParticipant(viewModel); PDQGroup item = result.Model as PDQGroup; if (item == null) { return(result); } return(View("~/Views/Promotion/Module/SelectPromotionParticipant.ascx", item)); }
public ActionResult ListPromotionParticipant(PromotionParticipantViewModel viewModel) { ViewResult result = (ViewResult)EditPromotionParticipant(viewModel); PDQGroup item = result.Model as PDQGroup; if (item == null) { return(result); } var pdq = item.PDQQuestion.First(); var items = models.GetTable <PDQTask>().Where(t => t.QuestionID == pdq.QuestionID); ViewBag.DataItem = item; return(View("~/Views/Promotion/Module/PromotionParticipantList.ascx", items)); }
public ActionResult EditBonusPromotion(PromotionViewModel viewModel) { PDQGroup item = loadPromotionItem(viewModel); if (item != null) { var pdq = item.PDQQuestion.First(); var pdqExt = pdq.PDQQuestionExtension; viewModel.GroupID = item.GroupID; viewModel.GroupName = item.GroupName; viewModel.StartDate = item.StartDate; viewModel.EndDate = item.EndDate; viewModel.QuestionID = pdq.QuestionID; viewModel.Question = pdq.Question; viewModel.BonusPoint = pdqExt.BonusPoint; viewModel.Status = (Naming.LessonSeriesStatus?)pdqExt.Status; viewModel.AwardingAction = (Naming.BonusAwardingAction?)pdqExt.AwardingAction; viewModel.CreationTime = pdqExt.CreationTime; } ViewBag.ViewModel = viewModel; return(View("~/Views/Promotion/Module/EditBonusPromotion.ascx", item)); }
public ActionResult CommitBonusPromotion(PromotionViewModel viewModel) { ViewBag.ViewModel = viewModel; if (!viewModel.BonusPoint.HasValue || viewModel.BonusPoint < 1) { ModelState.AddModelError("BonusPoint", "請輸入贈送點數!!"); } if (!viewModel.StartDate.HasValue) { ModelState.AddModelError("StartDate", "請選擇活動起日!!"); } viewModel.GroupName = viewModel.GroupName.GetEfficientString(); if (viewModel.GroupName == null) { ModelState.AddModelError("GroupName", "請輸入活動名稱!!"); } viewModel.Question = viewModel.Question.GetEfficientString(); if (viewModel.Question == null) { ModelState.AddModelError("Question", "請輸入活動說明!!"); } if (!ModelState.IsValid) { ViewBag.ModelState = this.ModelState; return(View("~/Views/Shared/ReportInputError.ascx")); } var item = loadPromotionItem(viewModel); PDQQuestion pdq; PDQQuestionExtension pdqExt; if (item == null) { var table = models.GetTable <PDQGroup>(); item = new PDQGroup { }; item.GroupID = (table.OrderByDescending(p => p.GroupID).FirstOrDefault()?.GroupID + 1) ?? 1; table.InsertOnSubmit(item); pdq = new PDQQuestion { PDQGroup = item }; pdqExt = new PDQQuestionExtension { PDQQuestion = pdq, CreationTime = DateTime.Now, AwardingAction = (int)Naming.BonusAwardingAction.手動, }; } else { pdq = item.PDQQuestion.First(); pdqExt = pdq.PDQQuestionExtension; } item.GroupName = viewModel.GroupName; item.StartDate = viewModel.StartDate; item.EndDate = viewModel.EndDate; pdq.Question = viewModel.Question; pdqExt.BonusPoint = viewModel.BonusPoint; models.SubmitChanges(); return(Json(new { result = true })); }