可访问机构控制调整到UserSession

This commit is contained in:
yubaolee
2017-12-12 11:42:57 +08:00
parent e49dcfd793
commit 8dcbae1517
8 changed files with 52 additions and 65 deletions

View File

@@ -70,17 +70,7 @@ namespace OpenAuth.Mvc.Controllers
return JsonHelper.Instance.Serialize(Result);
}
/// <summary>
/// 加载机构的全部下级机构
/// </summary>
/// <param name="orgId">机构ID</param>
/// <returns></returns>
public string LoadChildren(string orgId)
{
return JsonHelper.Instance.Serialize(OrgApp.LoadAllChildren(orgId));
}
/// <summary>
/// <summary>
/// 删除指定ID的组织
/// <para>Id为逗号分开的字符串</para>
/// </summary>

View File

@@ -1,5 +1,5 @@
using System.Linq;
using System.Web.Mvc;
using System;
using System.Linq;
using Infrastructure;
using OpenAuth.App.Response;
using OpenAuth.App.SSO;
@@ -8,6 +8,7 @@ namespace OpenAuth.Mvc.Controllers
{
/// <summary>
/// 获取登录用户的全部信息
/// <para>所有和当前登录用户相关的操作都在这里</para>
/// </summary>
public class UserSessionController : BaseController
{
@@ -28,21 +29,27 @@ namespace OpenAuth.Mvc.Controllers
/// <returns></returns>
public string GetModules(string pId)
{
var query = user.Modules;
string cascadeId = ".0.";
if (!string.IsNullOrEmpty(pId))
{
query = query.Where(u => u.ParentId == pId).ToList();
var obj = user.Modules.SingleOrDefault(u => u.Id == pId);
if (obj == null)
throw new Exception("未能找到指定对象信息");
cascadeId = obj.CascadeId;
}
var data = new TableData
var query = user.Modules.Where(u => u.CascadeId.Contains(cascadeId));
return JsonHelper.Instance.Serialize(new TableData
{
data = query,
data = query.ToList(),
count = query.Count(),
};
return JsonHelper.Instance.Serialize(data);
});
}
/// <summary>
/// 普通的List
/// 获取用户可访问的模块列表
/// </summary>
public string QueryModuleList()
{
@@ -52,12 +59,38 @@ namespace OpenAuth.Mvc.Controllers
/// <summary>
/// 获取登录用户可访问的所有部门
/// <para>用于树状结构</para>
/// </summary>
public string GetOrgs()
{
return JsonHelper.Instance.Serialize(user.Orgs);
}
/// <summary>
/// 加载机构的全部下级机构
/// </summary>
/// <param name="orgId">机构ID</param>
/// <returns></returns>
public string GetSubOrgs(string orgId)
{
string cascadeId = ".0.";
if (!string.IsNullOrEmpty(orgId))
{
var org = user.Orgs.SingleOrDefault(u => u.Id == orgId);
if (org == null)
throw new Exception("未能找到指定对象信息");
cascadeId = org.CascadeId;
}
var query = user.Orgs.Where(u => u.CascadeId.Contains(cascadeId));
return JsonHelper.Instance.Serialize(new TableData
{
data = query.ToList(),
count = query.Count(),
});
}
//获取当前页面菜单
public string GetButtonns()
{