|
|
|
@ -86,6 +86,60 @@ namespace FactorySystemBll
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
|
|
/// 获取菜单权限
|
|
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
|
|
public object GetMenuList(int userId, bool returnAll = false)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
SqlSugarClient db = AppSettingsHelper.GetSqlSugar();
|
|
|
|
|
|
|
|
int delete = (int)Constant.DeleteCode.已删除;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
List<FPower> powers = db.Queryable<FPower>().Where(s => userId.ToString().Equals(s.FUserID)).ToList();
|
|
|
|
|
|
|
|
List<string> roles = new List<string>();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (powers != null && powers.Count > 0)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
powers.ForEach(power =>
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
roles.Add(power.FRole);
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
List<TFunction> menuList = db.Queryable<TFunction>().Where(s => s.FDeleted != delete).OrderBy(s => s.FOrder).ToList();
|
|
|
|
|
|
|
|
List<int> hasIds = db.Queryable<TRole, TRole_Right>((a, b) => new JoinQueryInfos(JoinType.Left, a.FID == b.FRoleID))
|
|
|
|
|
|
|
|
.Where((a, b) => a.FDeleted != delete && b.FType == (int)Constant.RoleType.菜单权限 && roles.Contains(a.FID.ToString()))
|
|
|
|
|
|
|
|
.Select((a, b) => b.FFunctionID).GroupBy("b.FFunctionID").ToList();
|
|
|
|
|
|
|
|
if (returnAll)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
return menuList.Select(s => new
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
s.FID,
|
|
|
|
|
|
|
|
s.FIcon,
|
|
|
|
|
|
|
|
s.FParentID,
|
|
|
|
|
|
|
|
s.FName,
|
|
|
|
|
|
|
|
s.FLevel,
|
|
|
|
|
|
|
|
s.FLocation,
|
|
|
|
|
|
|
|
s.FOrder,
|
|
|
|
|
|
|
|
s.FRemark,
|
|
|
|
|
|
|
|
FIsChose = hasIds.IndexOf(s.FID) != -1
|
|
|
|
|
|
|
|
}).ToList();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
return menuList.Where(s => hasIds.IndexOf(s.FID) != -1).Select(s => new
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
s.FID,
|
|
|
|
|
|
|
|
s.FIcon,
|
|
|
|
|
|
|
|
s.FParentID,
|
|
|
|
|
|
|
|
s.FName,
|
|
|
|
|
|
|
|
s.FLevel,
|
|
|
|
|
|
|
|
s.FLocation,
|
|
|
|
|
|
|
|
s.FOrder,
|
|
|
|
|
|
|
|
s.FRemark,
|
|
|
|
|
|
|
|
}).ToList();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// <summary>
|
|
|
|
/// 获取其他权限
|
|
|
|
/// 获取其他权限
|
|
|
|
/// </summary>
|
|
|
|
/// </summary>
|
|
|
|
|