private string NewInCode(string curInCode) { //获取结构树的已有筛选数据 int SectionLen = 3; string error = null; string NewInCode; TugDataEntities db = new TugDataEntities(); BaseTreeItems obj = new BaseTreeItems(); System.Linq.Expressions.Expression<Func<BaseTreeItems, bool>> expression = u => u.InCode.StartsWith(curInCode) && u.InCode.Length == curInCode.Length + SectionLen; List<BaseTreeItems> objs = db.BaseTreeItems.Where(expression).OrderByDescending(u => u.IDX).ToList<BaseTreeItems>(); if (objs.Count == 0) { NewInCode = curInCode + string.Format("{0:D" + SectionLen + "}", 1); } else { string No; string maxInCode; maxInCode = objs.First().InCode.ToString(); No = maxInCode.Substring(maxInCode.Length - SectionLen); NewInCode = curInCode + string.Format("{0:D" + SectionLen + "}", Convert.ToInt32(No) + 1); } return NewInCode; }
public ActionResult AddEdit() { string newcode; int level; this.Internationalization(); #region Add if (Request.Form["oper"].Equals("add")) { try { TugDataEntities db = new TugDataEntities(); var fatherid = Request.Form["FatherID"]; if (fatherid == "") { newcode = NewInCode("O"); level = 0; } else { int curid = Util.toint(fatherid); BaseTreeItems curobj; curobj = db.BaseTreeItems.Where(u => u.IDX == curid).FirstOrDefault(); string curincode = curobj.InCode; level = Util.toint(curobj.LevelValue) + 1; newcode = NewInCode(curincode); } { TugDataModel.BaseTreeItems obj = new BaseTreeItems(); obj.InCode = newcode; if (fatherid != "") obj.FatherID = Util.toint(fatherid); obj.LevelValue = level; obj.IsLeaf = "true"; obj.Name1 = Request.Form["Name1"]; obj.Name2 = ""; obj.SType = "Organizion"; obj.SortNum = 0; obj.Remark = ""; obj.OwnerID = -1; obj.CreateDate = obj.LastUpDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");; obj.UserID = Session.GetDataFromSession<int>("userid"); obj.UserDefinedCol1 = Request.Form["UserDefinedCol1"]; obj.UserDefinedCol2 = Request.Form["UserDefinedCol2"]; obj.UserDefinedCol3 = Request.Form["UserDefinedCol3"]; obj.UserDefinedCol4 = Request.Form["UserDefinedCol4"]; if (Request.Form["UserDefinedCol5"] != "") obj.UserDefinedCol5 = Convert.ToDouble(Request.Form["UserDefinedCol5"]); if (Request.Form["UserDefinedCol6"] != "") obj.UserDefinedCol6 = Util.toint(Request.Form["UserDefinedCol6"]); if (Request.Form["UserDefinedCol7"] != "") obj.UserDefinedCol7 = Util.toint(Request.Form["UserDefinedCol7"]); if (Request.Form["UserDefinedCol8"] != "") obj.UserDefinedCol8 = Util.toint(Request.Form["UserDefinedCol8"]); obj.UserDefinedCol9 = Request.Form["UserDefinedCol9"]; obj.UserDefinedCol10 = Request.Form["UserDefinedCol10"]; obj = db.BaseTreeItems.Add(obj); db.SaveChanges(); //将父节点的isleaf设为false if (fatherid != "") { int fid = Util.toint(fatherid); BaseTreeItems fobj = db.BaseTreeItems.Where(u => u.IDX == fid).FirstOrDefault(); fobj.IsLeaf = "false"; db.Entry(fobj).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); } var ret = new { code = Resources.Common.SUCCESS_CODE, message = Resources.Common.SUCCESS_MESSAGE }; //Response.Write(@Resources.Common.SUCCESS_MESSAGE); return Json(ret); } } catch (Exception) { var ret = new { code = Resources.Common.EXCEPTION_CODE, message = Resources.Common.EXCEPTION_MESSAGE }; //Response.Write(@Resources.Common.EXCEPTION_MESSAGE); return Json(ret); } } #endregion Add #region Edit if (Request.Form["oper"].Equals("edit")) { try { TugDataEntities db = new TugDataEntities(); int idx = Util.toint(Request.Form["IDX"]); BaseTreeItems obj = db.BaseTreeItems.Where(u => u.IDX == idx).FirstOrDefault(); if (obj == null) { return Json(new { code = Resources.Common.ERROR_CODE, message = Resources.Common.ERROR_MESSAGE }); } else { obj.InCode = ""; //obj.FatherID = System.DBNull.Value; obj.LevelValue = 0; obj.IsLeaf = "false"; obj.Name1 = Request.Form["Name1"]; obj.Name2 = ""; obj.SType = "Organizion"; obj.SortNum = 0; obj.Remark = ""; obj.OwnerID = -1; obj.LastUpDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");; obj.UserID = Session.GetDataFromSession<int>("userid"); obj.UserDefinedCol1 = Request.Form["UserDefinedCol1"]; obj.UserDefinedCol2 = Request.Form["UserDefinedCol2"]; obj.UserDefinedCol3 = Request.Form["UserDefinedCol3"]; obj.UserDefinedCol4 = Request.Form["UserDefinedCol4"]; if (Request.Form["UserDefinedCol5"] != "") obj.UserDefinedCol5 = Convert.ToDouble(Request.Form["UserDefinedCol5"]); if (Request.Form["UserDefinedCol6"] != "") obj.UserDefinedCol6 = Util.toint(Request.Form["UserDefinedCol6"]); if (Request.Form["UserDefinedCol7"] != "") obj.UserDefinedCol7 = Util.toint(Request.Form["UserDefinedCol7"]); if (Request.Form["UserDefinedCol8"] != "") obj.UserDefinedCol8 = Util.toint(Request.Form["UserDefinedCol8"]); obj.UserDefinedCol9 = Request.Form["UserDefinedCol9"]; obj.UserDefinedCol10 = Request.Form["UserDefinedCol10"]; db.Entry(obj).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); return Json(new { code = Resources.Common.SUCCESS_CODE, message = Resources.Common.SUCCESS_MESSAGE }); } } catch (Exception exp) { return Json(new { code = Resources.Common.EXCEPTION_CODE, message = Resources.Common.EXCEPTION_MESSAGE }); } } #endregion Edit return Json(new { code = Resources.Common.ERROR_CODE, message = Resources.Common.ERROR_MESSAGE }); }