public static void Add(Esmart_Sys_Departments model) { var engine = PermissionDb.CreateEngine(); model.DeparentId = (engine.Esmart_Sys_Departments.Max(n => (int?)n.DeparentId) ?? 0) + 1; engine.Esmart_Sys_Departments.Add(model); engine.SaveChanges(); RightLogDb.AddLog(new Esmart_Right_Log { CreateBy = model.CreateId, CreateTime = DateTime.Now, EventType = "add", OprTbName = "Esmart_Sys_Departments", OprUserId = model.CreateId, OptDescription = string.Format(logFormat, model.CreateId, System.DateTime.Now, "添加", model.DeparentId), Remark = Newtonsoft.Json.JsonConvert.SerializeObject(model) }); CommonAction.ClearCache(); }
/// <summary> /// 获取部门所有下级部门Id哈希集合 /// </summary> private static void GetAllChildId(Esmart_Sys_Departments department, HashSet <int> resultSet) { if (department.Children == null || department.Children.Count == 0) { return; } foreach (var child in department.Children) { resultSet.Add(child.DeparentId); GetAllChildId(child, resultSet); } }
public static int Update(Esmart_Sys_Departments model) { var engine = PermissionDb.CreateEngine(); DbEntityEntry <Esmart_Sys_Departments> entry = engine.Entry(model); entry.State = EntityState.Modified; RightLogDb.AddLog(new Esmart_Right_Log { CreateBy = model.CreateId, CreateTime = DateTime.Now, EventType = "update", OprTbName = "Esmart_Sys_Departments", OprUserId = model.CreateId, OptDescription = string.Format(logFormat, model.CreateId, System.DateTime.Now, "修改", model.DeparentId), Remark = Newtonsoft.Json.JsonConvert.SerializeObject(model) }); int result = engine.SaveChanges(); CommonAction.ClearCache(); return(result); }
/// <summary> /// 删除部门及所有下级部门 -- 软删除 /// </summary> private static void DeleteDepartment(PermissionContext dbContext, Esmart_Sys_Departments department, ref Dictionary <string, List <object> > dctDel) { department.IsDelete = 1; //删除部门-角色关联 var deparentRoles = dbContext.Esmart_Sys_Deparent_Role.Where(a => a.DeparentId == department.DeparentId).ToArray(); dbContext.Esmart_Sys_Deparent_Role.RemoveRange(deparentRoles); if (!dctDel.ContainsKey("role")) { dctDel.Add("role", new List <object> { }); } if (deparentRoles.Count() > 0) { dctDel["role"].Add(deparentRoles); } //删除部门-用户关联 var deparentUsers = dbContext.Esmart_Sys_Department_User.Where(a => a.DeparentId == department.DeparentId).ToArray(); dbContext.Esmart_Sys_Department_User.RemoveRange(deparentUsers); if (!dctDel.ContainsKey("user")) { dctDel.Add("user", new List <object> { }); } if (deparentUsers.Count() > 0) { dctDel["user"].Add(deparentUsers); } if (!dctDel.ContainsKey("department")) { dctDel.Add("department", new List <object> { }); } dctDel["department"].Add(department); if (department.Children == null || department.Children.Count == 0) { return; } foreach (var child in department.Children) { DeleteDepartment(dbContext, child, ref dctDel); } }
/// <summary> /// 修改 /// </summary> /// <returns>返回值</returns> public int Update(DepartmentRequest request) { var result = 0; var model = new Esmart_Sys_Departments(); if (request != null) { model.DeparentId = request.DeparentId; model.CreateId = request.CreateId; model.CreateTime = request.CreateTime; model.Name = request.Name; model.ParentId = request.ParentId; model.Remark = request.Remark; model.SortNo = request.SortNo; model.IsDelete = request.IsDelete; result = DepartmentDbAction.Update(model); } return(result); }
/// <summary> /// 添加 /// </summary> /// <returns>返回值</returns> public int Add(DepartmentRequest request) { var model = new Esmart_Sys_Departments(); if (request != null) { model.DeparentId = request.DeparentId; model.CreateId = request.CreateId; model.CreateTime = request.CreateTime; model.Name = request.Name; model.ParentId = request.ParentId; model.Remark = request.Remark; model.SortNo = request.SortNo; model.IsDelete = request.IsDelete; DepartmentDbAction.Add(model); return(model.DeparentId); } return(-1); }