public ActionResult Edit(int studentId, int id = 0) { using (var db = new XkSystem.Models.DbContext()) { var vm = new Models.ExamChange.Edit(); if (studentId == 0) { return(Content("<script>alert('请先输入学号或者学生姓名,点击搜索按钮查询学生成绩,才能进行调整');parent.location.reload();</script>")); } vm.ExamList = Areas.Exam.Controllers.ExamController.SelectList(); vm.ExamStatusList = Areas.Exam.Controllers.ExamStatusController.SelectList(); if (id != 0) { var tb = (from p in db.Table <Exam.Entity.tbExamMark>() where p.Id == id select new Dto.ExamChange.Edit { Id = p.Id, ExamId = p.tbExamCourse.tbExam.Id, ExamCourseId = p.tbExamCourse.Id, AppraiseMark = p.AppraiseMark, TotalMark = p.TotalMark, SegmentMark = p.SegmentMark, ExamLevelId = p.tbExamLevel.Id, StudentId = p.tbStudent.Id, LevelGroupId = p.tbExamCourse.tbExamLevelGroup.Id, ExamStatusId = p.tbExamStatus.Id }).FirstOrDefault(); if (tb != null) { vm.ExamCourseList = Areas.Exam.Controllers.ExamCourseController.GetExamCourseList(tb.ExamId); vm.ExamLevelList = Areas.Exam.Controllers.ExamLevelController.SelectList(tb.LevelGroupId ?? 0); vm.ExamChangeEdit = tb; } } else { vm.ExamCourseList = Areas.Exam.Controllers.ExamCourseController.GetExamCourseList(vm.ExamList.FirstOrDefault().Value.ConvertToInt()); if (vm.ExamCourseList.Count > 0) { vm.ExamLevelList = Areas.Exam.Controllers.ExamLevelController.SelectList(vm.ExamList.FirstOrDefault().Value.ConvertToInt(), vm.ExamCourseList.FirstOrDefault().Value.ConvertToInt()); } } return(View(vm)); } }
public ActionResult Edit(Models.ExamChange.Edit vm, int studentId) { using (var db = new XkSystem.Models.DbContext()) { var error = new List <string>(); if (error.Count == decimal.Zero) { if (vm.ExamChangeEdit.Id == 0) { var tf = (from p in db.Table <Exam.Entity.tbExamMark>() where p.tbStudent.Id == studentId && p.tbExamCourse.Id == vm.ExamChangeEdit.ExamCourseId && p.tbExamCourse.tbExam.Id == vm.ExamChangeEdit.ExamId select p).FirstOrDefault(); if (tf == null) { var tb = new Exam.Entity.tbExamMark(); tb.tbStudent = db.Set <Student.Entity.tbStudent>().Find(studentId); tb.tbExamCourse = db.Table <Exam.Entity.tbExamCourse>().Where(d => d.tbExam.Id == vm.ExamChangeEdit.ExamId && d.Id == vm.ExamChangeEdit.ExamCourseId).FirstOrDefault(); tb.AppraiseMark = vm.ExamChangeEdit.AppraiseMark; tb.SegmentMark = vm.ExamChangeEdit.SegmentMark; tb.TotalMark = vm.ExamChangeEdit.TotalMark; tb.tbExamStatus = db.Set <Exam.Entity.tbExamStatus>().Find(vm.ExamChangeEdit.ExamStatusId); tb.tbExamLevel = db.Set <Exam.Entity.tbExamLevel>().Find(vm.ExamChangeEdit.ExamLevelId); db.Set <Exam.Entity.tbExamMark>().Add(tb); XkSystem.Areas.Sys.Controllers.SysUserLogController.Insert("添加考试成绩"); } else { XkSystem.Areas.Sys.Controllers.SysUserLogController.Insert("修改考试成绩"); tf.AppraiseMark = vm.ExamChangeEdit.AppraiseMark; tf.TotalMark = vm.ExamChangeEdit.TotalMark; tf.SegmentMark = vm.ExamChangeEdit.SegmentMark; tf.tbExamLevel = db.Set <Exam.Entity.tbExamLevel>().Find(vm.ExamChangeEdit.ExamLevelId); tf.tbExamStatus = db.Set <Exam.Entity.tbExamStatus>().Find(vm.ExamChangeEdit.ExamStatusId); } db.SaveChanges(); } else { var tb = (from p in db.Table <Exam.Entity.tbExamMark>() where p.Id == vm.ExamChangeEdit.Id select p).FirstOrDefault(); if (tb != null) { tb.tbExamCourse = db.Table <Exam.Entity.tbExamCourse>().Where(d => d.tbExam.Id == vm.ExamChangeEdit.ExamId && d.Id == vm.ExamChangeEdit.ExamCourseId).FirstOrDefault(); tb.AppraiseMark = vm.ExamChangeEdit.AppraiseMark; tb.TotalMark = vm.ExamChangeEdit.TotalMark; tb.SegmentMark = vm.ExamChangeEdit.SegmentMark; tb.tbExamStatus = db.Set <Exam.Entity.tbExamStatus>().Find(vm.ExamChangeEdit.ExamStatusId); tb.tbExamLevel = db.Set <Exam.Entity.tbExamLevel>().Find(vm.ExamChangeEdit.ExamLevelId); if (db.SaveChanges() > 0) { XkSystem.Areas.Sys.Controllers.SysUserLogController.Insert("修改考试成绩"); } } else { error.AddError(Resources.LocalizedText.MsgNotFound); } } } return(Code.MvcHelper.Post(error)); } }