public ActionResult Create(Department department) { //模型状态错误(为空) if (ModelState.IsValid) { /*选出ReserveFields中部门相关的记录*/ var recordList = (from p in db.ReserveFields where p.TableName == "Departments" select p).ToList(); ViewBag.recordList = recordList; /*生成部门编号*/ department.Number = (new Random().Next(1111, 9999)).ToString(); /*遍历*/ foreach (var temp in recordList) { DepartmentReserve dr = new DepartmentReserve(); dr.Number = department.Number; dr.FieldId = temp.Id; dr.Value = Request[temp.FieldName]; db.DepartmentReserves.Add(dr); /*把这行去掉之后即可运行*/ //db.SaveChanges(); } db.Departments.Add(department); db.SaveChanges(); return RedirectToAction("Index"); } return View(department); }
public ActionResult Create(Department department) { //实现下拉列表 List<SelectListItem> item = db.Departments.ToList().Select(c => new SelectListItem { Value = c.Number,//保存的值 Text = c.Name//显示的值 }).ToList(); //增加一个“无”选项 SelectListItem i = new SelectListItem(); i.Value = ""; i.Text = " "; item.Add(i); //传值到页面 ViewBag.List = item; //模型状态错误(为空) if (ModelState.IsValid) { db.Departments.Add(department); department.Number = (new Random().Next(1111, 9999)).ToString(); var itemId = (from p in db.Departments where p.Number == department.ParentDepartmentId select p.Name).FirstOrDefault(); db.SaveChanges(); return RedirectToAction("Index"); } return View(department); }
public ActionResult Create(Department department) { if (ModelState.IsValid) { /*Step1:如果上级部门为空则上级部门编号为公司Id*/ if (department.ParentDepartmentId == null) { department.ParentDepartmentId = this.CompanyId; } /*Step2:部门编号唯一,应该用Ajax??*/ //var find = (from p in db.Departments where p.DepartmentId == department.DepartmentId select p).FirstOrDefault(); //if (find != null) { ModelState.AddModelError("","部门编号已存在!" );} /*Step3:保存固定字段(为了生成主键Id)*/ db.Departments.Add(department); db.SaveChanges(); /*Step4:显示预留字段名称*/ var recordList = (from p in db.ReserveFields where p.TableName == "Departments" select p).ToList(); ViewBag.recordList = recordList; /*Step5:保存预留字段的值*/ foreach (var temp in recordList) { DepartmentReserve dr = new DepartmentReserve(); dr.Number = department.Id; dr.FieldId = temp.Id; dr.Value = Request[temp.FieldName]; /*占位,为了在Index中显示整齐的格式*/ if (dr.Value == null) dr.Value = " "; db.DepartmentReserves.Add(dr); db.SaveChanges(); } return RedirectToAction("Index"); } return View(department); }
public ActionResult Edit(Department department) { //如果公司的上级部门编号ParentDepartmentId为空,将它置为null if (department.ParentDepartmentId == "") department.ParentDepartmentId = this.CompanyId; //模型状态错误(为空) if (ModelState.IsValid) { Department d = db.Departments.Find(department.Id); if (d != null) { // 得到部门department.Number对应的所有动态变化的字段 var pp = (from df in db.DepartmentReserves join rf in db.ReserveFields on df.FieldId equals rf.Id where df.Number == department.Id select new DepartmentViewModel { Id = df.Id, Description = rf.Description, Value = df.Value }).ToList(); //对每个动态变化的字段进行赋值 foreach (var temp in pp) { DepartmentReserve dr = db.DepartmentReserves.Find(temp.Id); dr.Value = Request[temp.Description]; db.SaveChanges(); } d.Name = department.Name; d.DepartmentId = department.DepartmentId; d.ParentDepartmentId = department.ParentDepartmentId; d.Remark = department.Remark; db.SaveChanges(); return RedirectToAction("Index"); } } else { //自带的ValidationSummary提示 ModelState.AddModelError("", "修改失败"); } return View(department); }
public ActionResult Create(Department department) { if (ModelState.IsValid) {
public ActionResult Edit(Department department) { //如果公司的上级部门编号ParentDepartmentId为空,将它置为null if (department.ParentDepartmentId == "") department.ParentDepartmentId = null; //实现下拉列表 List<SelectListItem> item = db.Departments.ToList().Select(c => new SelectListItem { Value = c.Number,//保存的值 Text = c.Name//显示的值 }).ToList(); SelectListItem i = new SelectListItem(); i.Value = ""; i.Text = " "; item.Add(i); ViewBag.List = item;//传值到页面 //模型状态错误(为空) if (ModelState.IsValid) { Department d = db.Departments.Find(department.Number); if (d != null) { d.Name = department.Name; d.ParentDepartmentId = department.ParentDepartmentId; d.Remark = department.Remark; db.SaveChanges(); return RedirectToAction("Index"); } } else { //自带的ValidationSummary提示 ModelState.AddModelError("", "修改失败"); } return View(department); }