public ListResult <WXQ.Enties.CommonObj.MenuTree> GetMenuTreeByRoleId(int roleId) { ListResult <WXQ.Enties.CommonObj.MenuTree> result = new ListResult <WXQ.Enties.CommonObj.MenuTree>(); MenuManager MenuManager = new MenuManager(); var rmQuery = MenuManager.Db.Queryable <WXQ.Enties.RoleMenu>().Where(rm => rm.RoleId == roleId); var menusQuery = MenuManager.Db.Queryable <WXQ.Enties.Menu>(); var lt = MenuManager.Db.Queryable(menusQuery, rmQuery, JoinType.Left, (m, rm) => m.MenuId == rm.MenuId && rm.RoleId == roleId).Select((m, rm) => new { m.MenuId, m.MenuName, m.Url, m.Icon, rm.RoleId }).ToList();//left join if (lt != null && lt.Count > 0) { List <WXQ.Enties.Menu> menuList = new List <Enties.Menu>(); foreach (var d in lt) { WXQ.Enties.Menu m = new Enties.Menu(); m.MenuId = d.MenuId; m.MenuName = d.MenuName; m.Url = d.Url; m.Icon = d.Icon; menuList.Add(m); } result.Result = GetMenuTree(menuList, 0); result.Total = result.Result.Count; result.PageSize = result.Result.Count; } result.PageIndex = 1; return(result); }
public bool CreateMenu(ref List <string> result) { WXQ.BusinessCore.systemmanage.MenuOp menuOp = new MenuOp(0); bool returnValue = true; int menuId = 0; #region 系统首页 WXQ.Enties.Menu sysindexMenu = new Enties.Menu { Icon = "el-icon-menu", MenuName = "系统首页", ParentId = 0, Url = "dashboard", MenuType = 1 }; menuId = menuOp.InsertMenuReturnId(sysindexMenu); if (menuId > 0) { result.Add("添加菜单系统首页成功"); } else { result.Add("添加菜单系统首页失败"); } #endregion 系统首页 #region 系统管理 WXQ.Enties.Menu sysmanagerMenu = new Enties.Menu { Icon = "el-icon-menu", MenuName = "系统管理", ParentId = 0, Url = "", MenuType = 1 }; menuId = menuOp.InsertMenuReturnId(sysmanagerMenu); if (menuId > 0) { result.Add("添加菜单系统管理成功"); int sysmanagerId = menuId; #region 用户 WXQ.Enties.Menu sysuserMenu = new Enties.Menu { Icon = "el-icon-menu", MenuName = "用户", ParentId = sysmanagerId, Url = "", MenuType = 1 }; int usermenuId = menuOp.InsertMenuReturnId(sysuserMenu); if (usermenuId > 0) { result.Add("添加菜单用户成功"); #region 用户管理 WXQ.Enties.Menu usermanageMenu = new Enties.Menu { Icon = "el-icon-menu", MenuName = "用户管理", ParentId = usermenuId, Url = "usermanage", MenuType = 1 }; if (menuOp.InsertMenuReturnId(usermanageMenu) > 0) { result.Add("添加菜单用户管理成功"); } else { result.Add("添加菜单用户管理失败"); } #endregion 用户管理 } else { result.Add("添加菜单用户失败"); } #endregion 用户 #region 角色 WXQ.Enties.Menu sysroleMenu = new Enties.Menu { Icon = "el-icon-menu", MenuName = "角色管理", ParentId = sysmanagerId, Url = "", MenuType = 1 }; int rolemenuId = menuOp.InsertMenuReturnId(sysroleMenu); if (rolemenuId > 0) { result.Add("添加菜单角色管理成功"); #region 用户管理 WXQ.Enties.Menu rolemanageMenu = new Enties.Menu { Icon = "el-icon-menu", MenuName = "角色", ParentId = rolemenuId, Url = "rolemanage", MenuType = 1 }; if (menuOp.InsertMenuReturnId(rolemanageMenu) > 0) { result.Add("添加菜单角色成功"); } else { result.Add("添加菜单角色失败"); } #endregion 用户管理 } else { result.Add("添加菜单角色管理失败"); } #endregion 角色 #region 部门 WXQ.Enties.Menu departmentmanageMenu = new Enties.Menu { Icon = "el-icon-menu", MenuName = "部门管理", ParentId = sysmanagerId, Url = "", MenuType = 1 }; int departmentmanagermenuId = menuOp.InsertMenuReturnId(departmentmanageMenu); if (departmentmanagermenuId > 0) { result.Add("添加菜单部门管理成功"); #region 用户管理 WXQ.Enties.Menu departmentMenu = new Enties.Menu { Icon = "el-icon-menu", MenuName = "部门", ParentId = departmentmanagermenuId, Url = "departmentmanage", MenuType = 1 }; if (menuOp.InsertMenuReturnId(departmentMenu) > 0) { result.Add("添加菜单部门成功"); } else { result.Add("添加菜单部门失败"); } #endregion 用户管理 } else { result.Add("添加菜单部门管理失败"); } #endregion 部门 } else { result.Add("添加菜单系统首页失败"); } #endregion 系统管理 #region 我的首页 WXQ.Enties.Menu myindexMenu = new Enties.Menu { Icon = "el-icon-menu", MenuName = "我的首页", ParentId = 0, Url = "myselfinfo", MenuType = 1 }; menuId = menuOp.InsertMenuReturnId(myindexMenu); if (menuId > 0) { result.Add("添加菜单我的首页成功"); } else { result.Add("添加菜单我的首页失败"); } #endregion 我的首页 if (returnValue) { result.Add("添加菜单成功"); } else { result.Add("添加菜单失败"); } return(returnValue); }