mirror of
https://gitee.com/dotnetchina/OpenAuth.Net.git
synced 2025-07-15 23:13:40 +08:00
check issue #6
This commit is contained in:
parent
f0b42e83d4
commit
5317e07ae5
@ -96,15 +96,17 @@ namespace OpenAuth.App
|
|||||||
_repository.Delete(u =>u.Id ==id);
|
_repository.Delete(u =>u.Id ==id);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void AssignForRole(int roleId, int[] menuIds)
|
public void AssignForRole(int roleId,int moduleId, int[] menuIds)
|
||||||
{
|
{
|
||||||
_relevanceRepository.DeleteBy("RoleElement", roleId);
|
var elements = _repository.Find(u => u.ModuleId == moduleId).Select(u =>u.Id);
|
||||||
|
_relevanceRepository.Delete(u =>elements.Contains(u.SecondId) &&u.Key =="RoleElement" && u.FirstId == roleId);
|
||||||
_relevanceRepository.AddRelevance("RoleElement", menuIds.ToLookup(u => roleId));
|
_relevanceRepository.AddRelevance("RoleElement", menuIds.ToLookup(u => roleId));
|
||||||
}
|
}
|
||||||
|
|
||||||
public void AssignForUser(int userId, int[] ids)
|
public void AssignForUser(int userId, int moduleId, int[] ids)
|
||||||
{
|
{
|
||||||
_relevanceRepository.DeleteBy("UserElement", userId);
|
var elements = _repository.Find(u => u.ModuleId == moduleId).Select(u => u.Id);
|
||||||
|
_relevanceRepository.Delete(u => elements.Contains(u.SecondId) && u.Key == "UserElement" && u.FirstId == userId);
|
||||||
_relevanceRepository.AddRelevance("UserElement", ids.ToLookup(u => userId));
|
_relevanceRepository.AddRelevance("UserElement", ids.ToLookup(u => userId));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -39,7 +39,7 @@ namespace OpenAuth.App.ViewModel
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// 用户可访问的机构
|
/// 用户可访问的机构
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public List<Org> AccessedOrgs { get; set; }
|
public IEnumerable<Org> AccessedOrgs { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -77,13 +77,21 @@ namespace OpenAuth.Mvc.Controllers
|
|||||||
ViewBag.RoleId = roleId;
|
ViewBag.RoleId = roleId;
|
||||||
return View();
|
return View();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 为角色分配菜单
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="roleId">角色ID</param>
|
||||||
|
/// <param name="moduleId">模块ID</param>
|
||||||
|
/// <param name="menuIds">菜单ID列表</param>
|
||||||
|
/// <returns></returns>
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
public string AssignForRole(int roleId, string menuIds)
|
public string AssignForRole(int roleId,int moduleId, string menuIds)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
var ids = menuIds.Split(',').Select(id => int.Parse(id)).ToArray();
|
var ids = menuIds.Split(',').Select(id => int.Parse(id)).ToArray();
|
||||||
_app.AssignForRole(roleId, ids);
|
_app.AssignForRole(roleId,moduleId, ids);
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
@ -106,13 +114,20 @@ namespace OpenAuth.Mvc.Controllers
|
|||||||
ViewBag.UserId = userId;
|
ViewBag.UserId = userId;
|
||||||
return View();
|
return View();
|
||||||
}
|
}
|
||||||
|
/// <summary>
|
||||||
|
/// 为用户分配菜单
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="userId">用户ID</param>
|
||||||
|
/// <param name="moduleId">模块ID</param>
|
||||||
|
/// <param name="menuIds">菜单ID列表</param>
|
||||||
|
/// <returns></returns>
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
public string AssignForUser(int userId, string menuIds)
|
public string AssignForUser(int userId,int moduleId, string menuIds)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
var ids = menuIds.Split(',').Select(id => int.Parse(id)).ToArray();
|
var ids = menuIds.Split(',').Select(id => int.Parse(id)).ToArray();
|
||||||
_app.AssignForUser(userId, ids);
|
_app.AssignForUser(userId,moduleId, ids);
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
|
@ -3,6 +3,7 @@ using OpenAuth.App;
|
|||||||
using OpenAuth.Domain;
|
using OpenAuth.Domain;
|
||||||
using OpenAuth.Mvc.Models;
|
using OpenAuth.Mvc.Models;
|
||||||
using System;
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Web.Mvc;
|
using System.Web.Mvc;
|
||||||
using Infrastructure.Helper;
|
using Infrastructure.Helper;
|
||||||
@ -59,16 +60,15 @@ namespace OpenAuth.Mvc.Controllers
|
|||||||
var orgs = SessionHelper.GetSessionUser<LoginUserVM>().AccessedOrgs;
|
var orgs = SessionHelper.GetSessionUser<LoginUserVM>().AccessedOrgs;
|
||||||
return JsonHelper.Instance.Serialize(orgs);
|
return JsonHelper.Instance.Serialize(orgs);
|
||||||
}
|
}
|
||||||
|
public string LoadOrg()
|
||||||
public string LoadOrgWithRoot()
|
|
||||||
{
|
{
|
||||||
var orgs = SessionHelper.GetSessionUser<LoginUserVM>().AccessedOrgs;
|
var orgs = SessionHelper.GetSessionUser<LoginUserVM>().AccessedOrgs.MapToList<Org>();
|
||||||
//添加根节点
|
//添加根节点
|
||||||
orgs.Add(new Org
|
orgs.Add(new Org
|
||||||
{
|
{
|
||||||
Id = 0,
|
Id = 0,
|
||||||
ParentId = -1,
|
ParentId = -1,
|
||||||
Name = "根节点",
|
Name = "根结点",
|
||||||
CascadeId = "0"
|
CascadeId = "0"
|
||||||
});
|
});
|
||||||
return JsonHelper.Instance.Serialize(orgs);
|
return JsonHelper.Instance.Serialize(orgs);
|
||||||
@ -164,21 +164,7 @@ namespace OpenAuth.Mvc.Controllers
|
|||||||
}
|
}
|
||||||
return JsonHelper.Instance.Serialize(BjuiResponse);
|
return JsonHelper.Instance.Serialize(BjuiResponse);
|
||||||
}
|
}
|
||||||
|
|
||||||
public string LoadOrg()
|
|
||||||
{
|
|
||||||
var orgs = _orgApp.GetAll();
|
|
||||||
//添加根节点
|
|
||||||
orgs.Add(new Org
|
|
||||||
{
|
|
||||||
Id = 0,
|
|
||||||
ParentId = -1,
|
|
||||||
Name = "根结点",
|
|
||||||
CascadeId = "0"
|
|
||||||
});
|
|
||||||
return JsonHelper.Instance.Serialize(orgs);
|
|
||||||
}
|
|
||||||
|
|
||||||
public string LoadChildren(int id)
|
public string LoadChildren(int id)
|
||||||
{
|
{
|
||||||
return JsonHelper.Instance.Serialize(_orgApp.LoadAllChildren(id));
|
return JsonHelper.Instance.Serialize(_orgApp.LoadAllChildren(id));
|
||||||
|
@ -117,7 +117,8 @@
|
|||||||
|
|
||||||
$.post("ModuleElementManager/AssignForRole",
|
$.post("ModuleElementManager/AssignForRole",
|
||||||
{
|
{
|
||||||
roleId:$('#roleId').val(),
|
roleId: $('#roleId').val(),
|
||||||
|
moduleId: selectedId,
|
||||||
menuIds: selected
|
menuIds: selected
|
||||||
},
|
},
|
||||||
function (data) {
|
function (data) {
|
||||||
|
@ -115,6 +115,7 @@
|
|||||||
$.post("ModuleElementManager/AssignForUser",
|
$.post("ModuleElementManager/AssignForUser",
|
||||||
{
|
{
|
||||||
userId: $('#userId').val(),
|
userId: $('#userId').val(),
|
||||||
|
moduleId:selectedId,
|
||||||
menuIds: selected
|
menuIds: selected
|
||||||
},
|
},
|
||||||
function (data) {
|
function (data) {
|
||||||
|
Loading…
Reference in New Issue
Block a user