fix(#I120CR): 修复菜单授权问题
#Comment comment #I120CR #Issue link https://gitee.com/LongbowEnterprise/dashboard/issues?id=I120CR
This commit is contained in:
parent
c6a741ebb4
commit
63948e970b
|
@ -1,4 +1,5 @@
|
|||
using MongoDB.Driver;
|
||||
using Longbow.Configuration;
|
||||
using MongoDB.Driver;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
|
@ -50,7 +51,8 @@ namespace Bootstrap.Client.DataAccess.MongoDB
|
|||
public override IEnumerable<string> RetrievesByUrl(string url)
|
||||
{
|
||||
var menu = DbManager.Menus.Find(md => md.Url.StartsWith(url)).FirstOrDefault();
|
||||
var ret = RoleHelper.Retrieves().Where(md => md.Menus.Any(m => m == menu.Id)).Select(m => m.RoleName).ToList();
|
||||
var appId = ConfigurationManager.GetValue("AppId", "2");
|
||||
var ret = RoleHelper.Retrieves().Where(md => md.Menus.Any(m => m == menu.Id) && md.Apps.Any(m => m == appId)).Select(m => m.RoleName).ToList();
|
||||
if (!ret.Any(r => r.Equals("Administrators", StringComparison.OrdinalIgnoreCase))) ret.Add("Administrators");
|
||||
return ret;
|
||||
}
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
using Bootstrap.Security.DataAccess;
|
||||
using Longbow.Configuration;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace Bootstrap.Client.DataAccess
|
||||
|
@ -21,6 +22,6 @@ namespace Bootstrap.Client.DataAccess
|
|||
/// 从Navigators -> GroupNavigatorRole -> Role查查询某个用户所拥有的角色
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public virtual IEnumerable<string> RetrievesByUrl(string url) => DbHelper.RetrieveRolesByUrl(url);
|
||||
public virtual IEnumerable<string> RetrievesByUrl(string url) => DbHelper.RetrieveRolesByUrl(url, ConfigurationManager.GetValue("AppId", "2"));
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue