This commit is contained in:
yubao 2017-12-16 23:29:38 +08:00
parent 277676cbba
commit a904438b94
5 changed files with 116 additions and 52 deletions

View File

@ -36,6 +36,18 @@ namespace OpenAuth.App
return UnitWork.Find<Module>(u => moduleIds.Contains(u.Id)).OrderBy(u => u.SortNo); return UnitWork.Find<Module>(u => moduleIds.Contains(u.Id)).OrderBy(u => u.SortNo);
} }
/// <summary>
/// 根据某用户ID获取可访问某模块的菜单项
/// </summary>
/// <param name="moduleId"></param>
/// <param name="userId"></param>
/// <returns></returns>
public IEnumerable<ModuleElement> LoadMenusForUser(string moduleId, string userId)
{
var elementIds = RevelanceManagerApp.Get(Define.USERELEMENT, true, userId);
return UnitWork.Find<ModuleElement>(u => elementIds.Contains(u.Id) && u.ModuleId == moduleId);
}
/// <summary> /// <summary>
/// 加载特定角色的模块 /// 加载特定角色的模块
/// </summary> /// </summary>
@ -47,6 +59,13 @@ namespace OpenAuth.App
return UnitWork.Find<Module>(u => moduleIds.Contains(u.Id)).OrderBy(u => u.SortNo); return UnitWork.Find<Module>(u => moduleIds.Contains(u.Id)).OrderBy(u => u.SortNo);
} }
public IEnumerable<ModuleElement> LoadMenusForRole(string moduleId, string roleId)
{
var elementIds = RevelanceManagerApp.Get(Define.ROLEELEMENT, true, roleId);
return UnitWork.Find<ModuleElement>(u => elementIds.Contains(u.Id) && u.ModuleId == moduleId);
}
#endregion / #endregion /
@ -67,7 +86,5 @@ namespace OpenAuth.App
} }
#endregion #endregion
} }
} }

View File

@ -36,8 +36,17 @@ namespace OpenAuth.Mvc.Controllers
/// <returns>System.String.</returns> /// <returns>System.String.</returns>
public string LoadForUser(string firstId) public string LoadForUser(string firstId)
{ {
var orgs = App.LoadForUser(firstId); var modules = App.LoadForUser(firstId);
return JsonHelper.Instance.Serialize(orgs); return JsonHelper.Instance.Serialize(modules);
}
/// <summary>
/// 根据某用户ID获取可访问某模块的菜单项
/// </summary>
/// <returns></returns>
public string LoadMenusForUser(string moduleId, string firstId)
{
var menus = App.LoadMenusForUser(moduleId, firstId);
return JsonHelper.Instance.Serialize(menus);
} }
/// <summary> /// <summary>
@ -47,8 +56,18 @@ namespace OpenAuth.Mvc.Controllers
/// <returns>System.String.</returns> /// <returns>System.String.</returns>
public string LoadForRole(string firstId) public string LoadForRole(string firstId)
{ {
var orgs = App.LoadForRole(firstId); var modules = App.LoadForRole(firstId);
return JsonHelper.Instance.Serialize(orgs); return JsonHelper.Instance.Serialize(modules);
}
/// <summary>
/// 根据某角色ID获取可访问某模块的菜单项
/// </summary>
/// <returns></returns>
public string LoadMenusForRole(string moduleId, string firstId)
{
var menus = App.LoadMenusForRole(moduleId, firstId);
return JsonHelper.Instance.Serialize(menus);
} }
#region #region

View File

@ -33,11 +33,26 @@ layui.config({
, "json"); , "json");
}); });
//todo:如果该用户已经分配菜单了,则设置相应的状态 //如果该用户已经分配菜单了,则设置相应的状态
var url = "/ModuleManager/LoadMenusForUser";
if (type.indexOf("Role") != -1) {
url = "/ModuleManager/LoadMenusForRole";
}
$.getJSON(url,
{
firstId: id
, moduleId: options.moduleId
}
, function (data) {
$.each(data,
function (i) {
var that = this;
//todo:怎么给lay table设置选中啊
});
});
} }
//左边树状机构列表 //左边树状模块列表
var ztree = function () { var ztree = function () {
var url = '/UserSession/QueryModuleList'; var url = '/UserSession/QueryModuleList';
var zTreeObj; var zTreeObj;
@ -82,7 +97,20 @@ layui.config({
$.getJSON(url, function (json) { $.getJSON(url, function (json) {
zTreeObj = $.fn.zTree.init($("#tree"), setting); zTreeObj = $.fn.zTree.init($("#tree"), setting);
zTreeObj.addNodes(null, json); zTreeObj.addNodes(null, json);
//todo:如果该用户已经分配模块了,则设置相应的状态 //如果该用户已经分配模块了,则设置相应的状态
var url = "/ModuleManager/LoadForUser";
if (type.indexOf("Role") != -1) {
url = "/ModuleManager/LoadForRole";
}
$.getJSON(url, { firstId: id }
, function (data) {
$.each(data,
function(i) {
var that = this;
var node = zTreeObj.getNodeByParam("Id", that.Id, null);
zTreeObj.checkNode(node, true, false);
});
});
menuList({ moduleId: json[0].Id }); menuList({ moduleId: json[0].Id });
zTreeObj.expandAll(true); zTreeObj.expandAll(true);

View File

@ -33,9 +33,9 @@ layui.config({
) )
//用户数 //用户数
$.get("/json/usersList.json", $.getJSON("/UserManager/Load?limit=1&page=1",
function(data){ function(data){
$(".userAll span").text(data.length); $(".userAll span").text(data.count);
} }
) )