public ActionResult Edit(int id = 0) { using (var db = new XkSystem.Models.DbContext()) { var vm = new Models.Room.Edit(); vm.BuildList = BuildController.SelectList(); vm.RoomTypeList = RoomTypeController.SelectList(); if (id != 0) { var tb = (from p in db.Table <Basis.Entity.tbRoom>() where p.Id == id select new Dto.Room.Edit { Id = p.Id, No = p.No, AttendanceMachine = p.AttendanceMachine, RoomName = p.RoomName, BuildId = p.tbBuild.Id, RoomTypeId = p.tbRoomType.Id, MaxUser = p.MaxUser }).FirstOrDefault(); if (tb != null) { vm.RoomEdit = tb; } } return(View(vm)); } }
public ActionResult Edit(Models.Room.Edit vm) { using (var db = new XkSystem.Models.DbContext()) { var error = new List <string>(); if (error.Count == decimal.Zero) { if (db.Table <Basis.Entity.tbRoom>().Where(d => d.RoomName == vm.RoomEdit.RoomName && d.Id != vm.RoomEdit.Id).Any()) { error.AddError("该教室已存在!"); } else { if (vm.RoomEdit.Id == 0) { var tb = new Basis.Entity.tbRoom(); tb.No = vm.RoomEdit.No == null?db.Table <Basis.Entity.tbRoom>().Select(d => d.No).DefaultIfEmpty(0).Max() + 1 : (int)vm.RoomEdit.No; tb.RoomName = vm.RoomEdit.RoomName; tb.tbBuild = db.Set <Basis.Entity.tbBuild>().Find(vm.RoomEdit.BuildId); tb.tbRoomType = db.Set <Basis.Entity.tbRoomType>().Find(vm.RoomEdit.RoomTypeId); tb.MaxUser = vm.RoomEdit.MaxUser; tb.AttendanceMachine = vm.RoomEdit.AttendanceMachine; db.Set <Basis.Entity.tbRoom>().Add(tb); if (db.SaveChanges() > 0) { XkSystem.Areas.Sys.Controllers.SysUserLogController.Insert("添加了教室"); } } else { var tb = (from p in db.Table <Basis.Entity.tbRoom>() where p.Id == vm.RoomEdit.Id select p).FirstOrDefault(); if (tb != null) { tb.No = vm.RoomEdit.No == null?db.Table <Basis.Entity.tbRoom>().Select(d => d.No).DefaultIfEmpty(0).Max() + 1 : (int)vm.RoomEdit.No; tb.RoomName = vm.RoomEdit.RoomName; tb.tbBuild = db.Set <Basis.Entity.tbBuild>().Find(vm.RoomEdit.BuildId); tb.tbRoomType = db.Set <Basis.Entity.tbRoomType>().Find(vm.RoomEdit.RoomTypeId); tb.MaxUser = vm.RoomEdit.MaxUser; tb.AttendanceMachine = vm.RoomEdit.AttendanceMachine; if (db.SaveChanges() > 0) { XkSystem.Areas.Sys.Controllers.SysUserLogController.Insert("修改了教室"); } } else { error.AddError(Resources.LocalizedText.MsgNotFound); } } } } return(Code.MvcHelper.Post(error)); } }