public ActionResult Edit(int id = 0) { using (var db = new XkSystem.Models.DbContext()) { var vm = new Models.SurveyGroup.Edit(); if (id != 0) { var tb = (from p in db.Table <Entity.tbSurveyGroup>() where p.Id == id select p).FirstOrDefault(); if (tb != null) { vm.SurveyGroupEdit = tb; } } return(View(vm)); } }
public ActionResult Edit(Models.SurveyGroup.Edit vm) { using (var db = new XkSystem.Models.DbContext()) { var error = new List <string>(); if (error.Count == decimal.Zero) { var tb = new Entity.tbSurveyGroup(); if (vm.SurveyGroupEdit.Id == 0) { tb.No = vm.SurveyGroupEdit.No == null?db.Table <Entity.tbSurveyGroup>().Select(d => d.No).DefaultIfEmpty(0).Max() + 1 : (int)vm.SurveyGroupEdit.No; tb.SurveyGroupName = vm.SurveyGroupEdit.SurveyGroupName; tb.tbSurvey = db.Set <Entity.tbSurvey>().Find(vm.SurveyId); tb.IsOrg = vm.SurveyGroupEdit.IsOrg; db.Set <Entity.tbSurveyGroup>().Add(tb); XkSystem.Areas.Sys.Controllers.SysUserLogController.Insert("添加评价分组"); } else { tb = (from p in db.Table <Entity.tbSurveyGroup>() where p.Id == vm.SurveyGroupEdit.Id select p).FirstOrDefault(); if (tb != null) { XkSystem.Areas.Sys.Controllers.SysUserLogController.Insert("修改评价分组"); tb.No = vm.SurveyGroupEdit.No == null?db.Table <Entity.tbSurveyGroup>().Select(d => d.No).DefaultIfEmpty(0).Max() + 1 : (int)vm.SurveyGroupEdit.No; tb.SurveyGroupName = vm.SurveyGroupEdit.SurveyGroupName; tb.IsOrg = vm.SurveyGroupEdit.IsOrg; } } //新增:班主任评价,不保存课程 if (vm.SurveyGroupEdit.IsOrg == false) { if (vm.SurveyGroupEdit.Id > decimal.Zero) { var tbSurveyCourse = (from p in db.Table <Entity.tbSurveyCourse>() where p.tbSurveyGroup.Id == vm.SurveyGroupEdit.Id select p).ToList(); foreach (var a in tbSurveyCourse) { //删除数据 a.IsDeleted = true; a.UpdateTime = DateTime.Now; } } db.SaveChanges(); } else { var errorSubject = new SurveyCourseController().SaveSubjectNode(db, Request["txtSubjectIds"], tb, vm.SurveyId); if (errorSubject.Status == decimal.Zero) { return(Json(errorSubject));//出错抛出 } else { db.SaveChanges(); } } } return(Code.MvcHelper.Post(error, null)); } }