public ActionResult Edit(int id = 0) { using (var db = new XkSystem.Models.DbContext()) { var vm = new Models.ClassAllotClass.Edit(); vm.GradeList = GradeController.SelectList(); vm.ClassTypeList = ClassTypeController.SelectList(); vm.YearList = YearController.SelectList(Code.EnumHelper.YearType.Year); if (vm.ClassAllotClassEdit.YearId == 0 && vm.YearList.Count > 0) { vm.ClassAllotClassEdit.YearId = vm.YearList.OrderByDescending(d => d.Selected).FirstOrDefault().Value.ConvertToInt(); } if (id != 0) { vm.ClassAllotClassEdit = (from p in db.Table <Basis.Entity.tbClassAllotClass>() where p.Id == id select new Dto.ClassAllotClass.Edit() { Id = p.Id, No = p.No, ClassName = p.ClassName, ClassTypeId = p.tbClassType.Id, GradeId = p.tbGrade.Id, YearId = p.tbYear.Id }).FirstOrDefault(); } return(View(vm)); } }
public ActionResult Edit(Models.ClassAllotClass.Edit vm) { using (var db = new XkSystem.Models.DbContext()) { var error = new List <string>(); if (error.Count == decimal.Zero) { if (vm.ClassAllotClassEdit.Id == 0) { var tb = new Basis.Entity.tbClassAllotClass(); tb.No = vm.ClassAllotClassEdit.No == null?db.Table <Basis.Entity.tbClassAllotClass>().Select(d => d.No).DefaultIfEmpty(0).Max() + 1 : (int)vm.ClassAllotClassEdit.No; tb.tbYear = db.Set <Basis.Entity.tbYear>().Find(vm.ClassAllotClassEdit.YearId); tb.ClassName = vm.ClassAllotClassEdit.ClassName; tb.tbClassType = db.Set <Basis.Entity.tbClassType>().Find(vm.ClassAllotClassEdit.ClassTypeId); tb.tbGrade = db.Set <Basis.Entity.tbGrade>().Find(vm.ClassAllotClassEdit.GradeId); db.Set <Basis.Entity.tbClassAllotClass>().Add(tb); } else { var tb = (from p in db.Table <Basis.Entity.tbClassAllotClass>()//.Where(d => d.Id == vm.ClassAllotClassEdit.Id).FirstOrDefault() where p.Id == vm.ClassAllotClassEdit.Id select p).FirstOrDefault(); if (tb != null) { tb.No = vm.ClassAllotClassEdit.No == null?db.Table <Basis.Entity.tbClassAllotClass>().Select(d => d.No).DefaultIfEmpty(0).Max() + 1 : (int)vm.ClassAllotClassEdit.No; tb.ClassName = vm.ClassAllotClassEdit.ClassName; tb.tbYear = db.Set <Basis.Entity.tbYear>().Find(vm.ClassAllotClassEdit.YearId); tb.tbClassType = db.Set <Basis.Entity.tbClassType>().Find(vm.ClassAllotClassEdit.ClassTypeId); tb.tbGrade = db.Set <Basis.Entity.tbGrade>().Find(vm.ClassAllotClassEdit.GradeId); } } if (db.SaveChanges() > 0) { XkSystem.Areas.Sys.Controllers.SysUserLogController.Insert("添加/修改了分班方式"); } } return(Code.MvcHelper.Post(error)); } }