public ActionResult Homework(HomeworkViewModel HVM) { checkLogin(); HVM.groupSelectList = (IEnumerable <SelectListItem>)Session["groupSelectList"]; HVM.typeSelectList = (IEnumerable <SelectListItem>)Session["typeSelectList"]; HVM.groupFilList = (IEnumerable <SelectListItem>)Session["groupFilList"]; HVM.typeFilList = (IEnumerable <SelectListItem>)Session["typeFilList"]; HVM.termFilList = (IEnumerable <SelectListItem>)Session["termFilList"]; bool result = true; //inactive deleted view item foreach (var i in HVM.inactiveList) { if (result && i > 1) { result = false; result = DBS.InactiveRecord("HOMEWORK", i, CP.userID); } } //add new work from new view item foreach (var n in HVM.viewList) { if (result && n.ID < 1) { result = false; HOMEWORK newWork = new HOMEWORK() { NAME = n.name, STUDENT_GROUP = n.group_id, HOMEWORK_TYPE = n.type_id, DUE_DATE = n.date_due, FULL_MARK = n.full_mark, ADD_BY = CP.userID, ADD_DATE = DateTime.Now, ACTIVE = true }; result = DBS.addRecord(newWork); } } ModelState.Clear(); TempData["showForm"] = true; TempData["showForm2"] = false; if (result) { TempData[Constant.msg_success] = "Changes have been saved"; } else { TempData[Constant.msg_error] = "Changes have not been saved"; } return(Homework(HVM.SelectedTerm, HVM.SelectedGroup, HVM.SelectedType, HVM)); }
public ActionResult StudentGroup(StudentGroupViewModel SGVM) { checkLogin(); bool result = true; foreach (var group in SGVM.InactiveGroupsList) //remove groups wanted to remove { if (result && group > 0) { result = false; result = DBS.InactiveRecord("STUDENT_GROUP", group, CP.userID); } } if (result) { foreach (var group in SGVM.groupList) //add new groups { if (result) { if (group.ID < 1) { result = false; group.ADD_BY = CP.userID; group.ADD_DATE = DateTime.Now; group.ACTIVE = true; result = DBS.addRecord(group); } else { result = false; group.MODIFY_BY = CP.userID; group.MODIFY_DATE = DateTime.Now; result = DBS.updateRecord(group); } } } } ModelState.Clear(); if (result) { TempData[Constant.msg_success] = Constant.ChangeSucceed; if (SGVM.SelectedTerm == CP.currentTerm.ID) { Session["currentStudentGroups"] = DBS.findActiveCurrentRecords <STUDENT_GROUP>(); //reset current group } } else { TempData[Constant.msg_error] = Constant.ChangeFailed; } return(StudentGroup(SGVM.SelectedTerm)); }
public ActionResult Merit(MeritsViewModel MVM) { checkLogin(); MVM.TermList = CP.termSelectList; MVM.userList = CP.teacherSelectList; MVM.classList = classSelectList; // fields checking if (!ModelState.IsValid) { return(View("Merit", MVM)); } //edit or create bool result = true; for (int m = 0; m < MVM.merits.Count; m++) { if (result) { if (MVM.merits[m].ID < 1) { result = false; result = DBS.addRecord(MVM.merits[m]); } } } foreach (var i in MVM.inactiveList) { if (result && i > 0) { result = false; result = DBS.InactiveRecord("MERITS", i, CP.userID); } } ModelState.Clear(); if (result) { TempData[Constant.msg_success] = Constant.ChangeSucceed; } else { TempData[Constant.msg_error] = Constant.ChangeFailed; } return(viewMerits(MVM.selectedTerm, MVM.selectedClass, MVM.selectedStudent)); }
public ActionResult TermPost(TERM next) { checkLogin(); TERM previousT = Session["previousT"] != null? (TERM)Session["previousT"]: TermService.GetPreviousTerm(); TERM currentT = Session["currentT"] != null ? (TERM)Session["currentT"] : TermService.GetCurrentTerm(); TERM nextT = Session["nextT"] != null ? (TERM)Session["nextT"] : TermService.GetNextTerm(); TermViewModel viewModel = new TermViewModel(previousT, currentT, nextT); TempData["showForm"] = false; TempData["resultMsg"] = ""; // fields checking if (!ModelState.IsValid) { TempData["showForm"] = true; return(View("Term", viewModel)); // redirect to form with data } // logic checking bool pass = true; if (TermService.GetTermByName(next.TERM_NAME).ID != 0 && TermService.GetTermByName(next.TERM_NAME).ID != next.ID) { TempData[Constant.msg_error] = "term name already in use"; pass = false; } if (pass && next.TERM_START >= next.TERM_END) { TempData[Constant.msg_error] = "start date > end date"; pass = false; } if (pass && next.TERM_START < DateTime.Now.Date) { TempData[Constant.msg_error] = "start date < today"; pass = false; } if (pass && (currentT != null) && currentT.TERM_END >= next.TERM_START) { TempData[Constant.msg_error] = "current term end date > next term start date"; pass = false; } if (!pass) { TempData["showForm"] = true; return(View("Term", viewModel)); }// redirect to form with data next.ACTIVE = true; bool isSuccess = false; if (next.ID == Constant.DEF_INT) { isSuccess = DBS.addRecord(next); } else { isSuccess = DBS.updateRecord(next); } // some unkown error happened if (!isSuccess) { TempData[Constant.msg_error] = "Ops! something gone wrong."; TempData["showForm"] = true; return(View("Term", viewModel)); // redirect to form with data } TempData[Constant.msg_success] = ((next.ID == Constant.DEF_INT) ? "New term has been created" : "Next term has been edited"); //regen lists previousT = TermService.GetPreviousTerm(); currentT = TermService.GetCurrentTerm(); nextT = TermService.GetNextTerm(); return(View(new TermViewModel(previousT, currentT, nextT))); // success }