OA之为用户设置角色和为用户设置权限
1.为用户设置角色
{
Layout = null;
}
@using OA.Model
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>SetRoleInfo</title>
<script src="~/Scripts/jquery-1.8.2.min.js"></script>
<script src="~/Scripts/jquery.unobtrusive-ajax.min.js"></script>
<script type="text/javascript">
function subForm()
{
$('#form1').submit();
}
function a()
{
alert("a");
}
function afterSubmit(data)
{
window.parent.AfterSubmit(data)
//parent.document.getElementsByTagName("roleFrame")["roleFrame"].AfterSubmit(data);
}
</script>
</head>
<body>
<div>
为用户@{
UserInfo userInfo = ViewBag.UserInfo;
@userInfo.UName
}添加角色
@using (Ajax.BeginForm("AddRole", "UserInfo", new { }, new AjaxOptions() { HttpMethod = "Post", OnSuccess = "afterSubmit" }, new { id = "form1" }))
{
<input type="hidden" name="userId" value="@userInfo.ID"/>
IList<RoleInfo> roleInfoList=ViewBag.RoleInfoList;
IList<int> roleIds=ViewBag.roleIds;
string ckName="ck_";
foreach (RoleInfo role in roleInfoList)
{
string checkName=ckName+role.ID;
if (roleIds.Contains(role.ID))
{
<input type="checkbox" value="@role.ID" name="@checkName" id="@role.ID" checked="checked"/>@role.RoleName<br/>
}
else
{
<input type="checkbox" value="@role.ID" name="@checkName" id="@role.ID" />@role.RoleName<br/>
}
}
}
</div>
</body>
</html>
后台代码
public ActionResult AddRole()
{
int userId = int.Parse(Request["userId"]);
string[] allKeys = Request.Form.AllKeys;
IList<int> roleIdList = new List<int>();
foreach (string k in allKeys)
{
if (k.StartsWith("ck_"))
{
string k1 = k.Replace("ck_", "");
roleIdList.Add(int.Parse(k1));
}
}
string result = userInfoService.SetRole(userId, roleIdList);
return Content(result);
}
2.为用户设置权限
@{
Layout = null;
}
@using OA.Model
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>SetUserActionInfo</title>
<link href="~/Content/themes/default/easyui.css" rel="stylesheet" />
<link href="~/Content/themes/icon.css" rel="stylesheet" />
<link href="~/Content/tableStyle.css" rel="stylesheet" />
<script src="~/Scripts/jquery-1.8.2.min.js"></script>
<script src="~/Scripts/jquery.unobtrusive-ajax.min.js"></script>
<script src="~/Scripts/easyui-lang-zh_CN.js"></script>
<script src="~/Scripts/jquery.easyui.min.js"></script>
</head>
<body>
<div>
为用户@{
UserInfo user = ViewBag.User as UserInfo;
@user.UName
}分配权限
<table>
<tr>
<th>权限编号</th>
<th>权限名称</th>
<th>地址</th>
<th>请求方式</th>
<th>操作</th>
</tr>
@{
IList<ActionInfo> actionInfoList = ViewBag.ActionInfoList as IList<ActionInfo>;
IList<R_UserInfo_ActionInfo> userActionList = ViewBag.UserActionList as IList<R_UserInfo_ActionInfo>;
foreach (ActionInfo action in actionInfoList)
{
<tr>
<td>@action.ID</td>
<td>@action.ActionInfoName</td>
<td>@action.Url</td>
<td>@action.HttpMethod</td>
<td>
@{
var result =( from a in userActionList
where a.ActionInfoID == action.ID
select a).ToList();
if (result != null&&result .Count >)
{
R_UserInfo_ActionInfo rua = result.FirstOrDefault();
if (rua.IsPass)
{
<label for="rdo_@action.ID">允许</label><input type="radio" class="radiosecelction" checked="checked" name="rdoY_@action.ID" id="rdo_@action.ID" ids="@action.ID" value="" />
<label for="rdoY_@action.ID">禁止</label><input type="radio" class="radiosecelction" name="rdoY_@action.ID" id="rdoY_@action.ID" ids="@action.ID" value="" />
<input type="button" value="清除" class="clearbtn" ids="@action.ID" />
}
else
{
<label for="rdo_@action.ID">允许</label><input type="radio" name="rdoY_@action.ID" class="radiosecelction" id="rdo_@action.ID" value="" ids="@action.ID" />
<label for="rdoY_@action.ID">禁止</label><input type="radio" checked="checked" class="radiosecelction" name="rdoY_@action.ID" id="rdoY_@action.ID" value="" ids="@action.ID" />
<input type="button" value="清除" class="clearbtn" ids="@action.ID" />
}
}
else
{
<label for="rdo_@action.ID">允许</label><input type="radio" class="radiosecelction" name="rdoY_@action.ID" id="rdo_@action.ID" value="" ids="@action.ID" />
<label for="rdoY_@action.ID">禁止</label><input type="radio" class="radiosecelction" name="rdoY_@action.ID" id="rdoY_@action.ID" value="" ids="@action.ID" />
<input type="button" value="清除" class="clearbtn" ids="@action.ID" />
}
}
</td>
</tr>
}
}
</table>
</div>
</body>
</html>
<script type="text/javascript">
$(".radiosecelction").click(function () {
var obj=$(this);
$.post(
"/UserInfo/SetUserAction",
{ "userId": '@user.ID', "actionId": obj.attr("ids"), "isPass": obj.val() },
function (data)
{
if (data == "OK") {
$.messager.show({
title: '提示',
msg: '权限修改成功',
showType: 'show'
});
}
else {
$.messager.show({
title: '提示',
msg: '权限修改失败',
showType: 'show'
});
}
}
)
});
$(".clearbtn").click(function () {
var obj = $(this);
$.post(
"/UserInfo/ClearUserAction",
{ "userId": '@user.ID', "actionId": obj.attr("ids") },
function (data) {
if (data == "OK") {
obj.parent().find(".radiosecelction").removeAttr("checked")
$.messager.show({
title: '提示',
msg: '权限删除成功',
showType: 'show'
});
}
else {
$.messager.show({
title: '提示',
msg: '权限修改失败',
showType: 'show'
});
}
}
)
});
</script>
后天代码
public ActionResult SetActionInfo()
{
int id = Request["id"] == null ? - : int.Parse(Request["id"]);
if (id >= )
{
//需要获取所有的权限信息进行展示
//需要获取用户已经拥有的权限信息进行展示
//需要获取用户的信息,如用户的名称
UserInfo user = userInfoService.LoadEntity(u => u.ID == id).FirstOrDefault();
ViewBag.User = user;
IList<ActionInfo> actionInfoList = actionInfoService.LoadEntity(a => a.DelFlag == (short)DelFlagEnum.Noraml).ToList();
ViewBag.ActionInfoList = actionInfoList;
IList<R_UserInfo_ActionInfo> userActionList = user.R_UserInfo_ActionInfo.ToList();
ViewBag.UserActionList = userActionList;
}
return View("SetUserActionInfo");
} //为用户修改权限
public ActionResult SetUserAction()
{
int userId = int.Parse(Request["userId"]);
int actionId = int.Parse(Request["actionId"]);
bool isPass = Request["isPass"] == "" ? true : false;
string result = userInfoService.SetUserAction(userId, actionId, isPass);
return Content(result);
}
OA之为用户设置角色和为用户设置权限的更多相关文章
- ASP.NET MVC+EF框架+EasyUI实现权限管理系列(23)-设置角色遗留问题和为权限设置角色以及EasyUI Tabs的使用
ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇) (1):框架搭建 (2):数据库访问层的设计Demo (3):面向接口编程 (4 ):业务逻辑层的封装 ...
- 设置角色遗留问题和为权限设置角色以及EasyUI Tabs的使用
设置角色遗留问题和为权限设置角色以及EasyUI Tabs的使用 ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇) (1):框架搭建 (2):数据库访问层的设计Demo ...
- Wordpress 为用户或角色 role 添加 capabilities(权限)
首先查看角色具有哪些权限: $admin_role_set = get_role( 'administrator' )->capabilities; $author_role_set = get ...
- ASP.NET MVC+EF框架+EasyUI实现权限管理系列(22)-为用户设置角色
ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇) (1):框架搭建 (2):数据库访问层的设计Demo (3):面向接口编程 (4 ):业务逻辑层的封装 ...
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(27)-权限管理系统-分配用户给角色
系列目录 分配用户给角色,跟分配角色给用户操作是基本一致的. 打开模块维护,展开SysRole模块添加一个操作码,并赋予权限 设置好之后将权限授权给管理员,在SysRole的index添加操作码与js ...
- 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(27)-权限管理系统-分配用户给角色
原文:构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(27)-权限管理系统-分配用户给角色 分配用户给角色,跟分配角色给用户操作是基本一致的. 打开模块维护,展 ...
- Oracle操作管理之用户和角色
1.用户管理 (1)建立用户(数据库验证) CREATE USER smith IDENTIFIED BY smith_pwd DEFAULTTABLESPACE users TEMPORARY TA ...
- MongoDB 的用户和角色权限
副本和分片集群的安全设置参考这个:高级:https://files.cnblogs.com/files/sanduzxcvbnm/mongodb_advance.pdf 默认情况下,MongoDB实例 ...
- 为用户分配角色 C#
开发网站时,在后台管理系统中,如果有多类角色,将会涉及到为角色分配用户的功能,或者是为用户选择角色.为用户分配角色相对来说操作的数据量比较小,因为系统所设定的角色不会有很多种.而如果是为角色分配用户, ...
随机推荐
- Hibernate关系映射 一对一双向外键关联@OneToOne Annotation方式
首先还是来构造一个实际应用的场景,比如实体类车辆(Car),它具有以下属性:Id,品牌(brand),车牌(lisencePlate):实体类车牌(LisencePlate),它具有以下属性:Id,号 ...
- c++ list reverse_iterator
#pragma warning(disable:4786) #include <set> #include <iostream> using namespace std ; t ...
- sip 认证分析
转自:http://blog.csdn.net/wangqi0079/article/details/11569489 SIP类似Http协议.其认证模式也一样.Http协议(RFC 2616 )规定 ...
- 使用 JMeter 完成常用的压力测试 [转]
讲到测试,人们脑海中首先浮现的就是针对软件正确性的测试,即常说的功能测试.但是软件仅仅只是功能正确是不够的.在实际开发中,还有其它的非功能因素也起着决定性的因素,例如软件的响应速度.影响软件响应速度的 ...
- win10系统下cmd输入一下安装的软件命令提示拒绝访问解决办法
问题:win10系统安装了nvm,cmd命令提示不是内部或外部命令 解决:卸载nvm,重新安装,再一次输入nvm,发现正常显示: 问题:win10安装了nvm之后,安装node成功,输入node命令, ...
- JQuery上传插件Uploadify使用详解 asp.net版
先来一个实例 Uploadify插件是JQuery的一个文件支持多文件上传的上传插件,ajax异步上传,实现的效果非常不错,带进度显示.不过官方提供的实例时php版本的,本文将详细介绍Uploadif ...
- 【matlab】error:试图访问 im2(1,1211);由于 size(im2)=[675,1210],索引超出范围。
试图访问 im2(1,1211):由于 size(im2)=[675,1210],索引超出范围. 出错 dect (line 14) if abs((im2(i,j))-(im1(i,j)))> ...
- shell脚本中,将所有的参数值否赋给一个变量或者说将所有的参数合成一个字符串,获取所有参数
需求描述: 在写脚本的过程中,遇到这样的一个需求,将脚本执行过程中,传递给 脚本的所有的参数,都赋值给一个变量然后在对这个变量进行处理. 测试过程: 通过以下的脚本将所有传递给脚本的变量都赋值一个变量 ...
- Quartz是一个完全由java编写的开源作业调度框架
http://www.quartz-scheduler.org/ 找个时间研究一下
- SqlBulkCopy类进行大数据(10000万条以上)插入测试
好多天没写博客了,刚刚毕业一个多月,在IT的路上真是迷茫啊! 关于上一篇博客中提到的,在进行批量数据插入数据库的时候可以通过给存储过程传递一个类型为Table的参数进行相关操作,在这个过程中本人没有进 ...