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);
|
||||
}
|
||||
|
||||
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));
|
||||
}
|
||||
|
||||
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));
|
||||
}
|
||||
}
|
||||
|
@ -39,7 +39,7 @@ namespace OpenAuth.App.ViewModel
|
||||
/// <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;
|
||||
return View();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 为角色分配菜单
|
||||
/// </summary>
|
||||
/// <param name="roleId">角色ID</param>
|
||||
/// <param name="moduleId">模块ID</param>
|
||||
/// <param name="menuIds">菜单ID列表</param>
|
||||
/// <returns></returns>
|
||||
[HttpPost]
|
||||
public string AssignForRole(int roleId, string menuIds)
|
||||
public string AssignForRole(int roleId,int moduleId, string menuIds)
|
||||
{
|
||||
try
|
||||
{
|
||||
var ids = menuIds.Split(',').Select(id => int.Parse(id)).ToArray();
|
||||
_app.AssignForRole(roleId, ids);
|
||||
_app.AssignForRole(roleId,moduleId, ids);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
@ -106,13 +114,20 @@ namespace OpenAuth.Mvc.Controllers
|
||||
ViewBag.UserId = userId;
|
||||
return View();
|
||||
}
|
||||
/// <summary>
|
||||
/// 为用户分配菜单
|
||||
/// </summary>
|
||||
/// <param name="userId">用户ID</param>
|
||||
/// <param name="moduleId">模块ID</param>
|
||||
/// <param name="menuIds">菜单ID列表</param>
|
||||
/// <returns></returns>
|
||||
[HttpPost]
|
||||
public string AssignForUser(int userId, string menuIds)
|
||||
public string AssignForUser(int userId,int moduleId, string menuIds)
|
||||
{
|
||||
try
|
||||
{
|
||||
var ids = menuIds.Split(',').Select(id => int.Parse(id)).ToArray();
|
||||
_app.AssignForUser(userId, ids);
|
||||
_app.AssignForUser(userId,moduleId, ids);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
|
@ -3,6 +3,7 @@ using OpenAuth.App;
|
||||
using OpenAuth.Domain;
|
||||
using OpenAuth.Mvc.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Web.Mvc;
|
||||
using Infrastructure.Helper;
|
||||
@ -59,16 +60,15 @@ namespace OpenAuth.Mvc.Controllers
|
||||
var orgs = SessionHelper.GetSessionUser<LoginUserVM>().AccessedOrgs;
|
||||
return JsonHelper.Instance.Serialize(orgs);
|
||||
}
|
||||
|
||||
public string LoadOrgWithRoot()
|
||||
public string LoadOrg()
|
||||
{
|
||||
var orgs = SessionHelper.GetSessionUser<LoginUserVM>().AccessedOrgs;
|
||||
var orgs = SessionHelper.GetSessionUser<LoginUserVM>().AccessedOrgs.MapToList<Org>();
|
||||
//添加根节点
|
||||
orgs.Add(new Org
|
||||
{
|
||||
Id = 0,
|
||||
ParentId = -1,
|
||||
Name = "根节点",
|
||||
Name = "根结点",
|
||||
CascadeId = "0"
|
||||
});
|
||||
return JsonHelper.Instance.Serialize(orgs);
|
||||
@ -164,21 +164,7 @@ namespace OpenAuth.Mvc.Controllers
|
||||
}
|
||||
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)
|
||||
{
|
||||
return JsonHelper.Instance.Serialize(_orgApp.LoadAllChildren(id));
|
||||
|
@ -117,7 +117,8 @@
|
||||
|
||||
$.post("ModuleElementManager/AssignForRole",
|
||||
{
|
||||
roleId:$('#roleId').val(),
|
||||
roleId: $('#roleId').val(),
|
||||
moduleId: selectedId,
|
||||
menuIds: selected
|
||||
},
|
||||
function (data) {
|
||||
|
@ -115,6 +115,7 @@
|
||||
$.post("ModuleElementManager/AssignForUser",
|
||||
{
|
||||
userId: $('#userId').val(),
|
||||
moduleId:selectedId,
|
||||
menuIds: selected
|
||||
},
|
||||
function (data) {
|
||||
|
Loading…
Reference in New Issue
Block a user