导读部分
教程部分
本帖子主要讲解权限管理>角色管理列表的实现方法,即下图内容:
角色列表:
后台cs代码如下: 1. 实例化数据,用于页面调用 [C#] 纯文本查看 复制代码 private Sys_RoleBLL sys_roleBll = new Sys_RoleBLL();
protected int addRole = -1;
protected List<Sys_RoleInfo> list = new List<Sys_RoleInfo>();
此处变量: list 即为获取角色列表赋值,是页面初始化加载时调用数据使用
2. 所有逻辑,均在Page_Load中实现,如下代码所示: [C#] 纯文本查看 复制代码 var action = this.Request.Params[ "action" ];
if ( !string.IsNullOrWhiteSpace( action ) && action == "save" ) {
// 保存新增角色信息
/*
* 1. 获取角色名称
* 2. 角色名称非空校验
* 3. 新增数据
*/
//获取角色名称
var name = this.Request.Params[ "name" ];
var result = -1;
var msg = "保存成功";
var isCheck = true;
// 角色名称非空校验
if ( string.IsNullOrWhiteSpace( name ) ) { msg = "角色名称不能为空"; isCheck = false; }
// 新增数据
if ( isCheck ) {
result = sys_roleBll.Insert( new Sys_RoleInfo() {
Name = name
} );
msg = ( result > 0 ? "保存成功" : "保存失败" );
}
// 返回信息
this.Response.Clear();
this.Response.ContentType = "text/plain";
this.Response.Write( "{\"reCode\":" + result + ",\"msg\":\"" + msg + "\"}" );
this.Response.End();
} else {
// 初始化加载角色信息
// 获取所有的权限信息
list = sys_roleBll.GetList( "", "RoleID != 1", "" );
// 获取是否有新增权限 以便页面弹出新增框
addRole = LoginUser.IsAssignPermission(9) ? 1 : -1;
}
}
其中有新增逻辑,列表逻辑,以及其它逻辑,本次主要看的逻辑为最后的else中的逻辑,即: 初始化加载角色信息,以及获取是否有新增权限部分
页面列表html实现如下: [C#] 纯文本查看 复制代码 <div class="si-main">
<div class="si-block">
<div class="si-form">
<table class="table table-form">
<tr>
<td align="left">
<a class="btn btn-primary" href="#" id="btn_add">添加角色</a>
</td>
</tr>
</table>
<table class="table table-page" id="grid">
<thead>
<tr>
<td>编号</td>
<td>角色名称</td>
<td>菜单分配</td>
<td>权限分配</td>
</tr>
</thead>
<tbody>
<%
int t = 1;
foreach (var roleInfo in list)
{
string tempstr = string.Empty;
if (t % 2 == 0)
{
tempstr = "style=\"background-color: rgb(240, 248, 255);\"";
}
else
{
tempstr = "style=\"background-color: white;\"";
}
t++;
%>
<tr <%=tempstr %>>
<td><%=roleInfo.RoleID%></td>
<td><%=roleInfo.Name%></td>
<td><a href="/Sys/RoleMenu.aspx?roleId=<%=roleInfo.RoleID %>&name=<%=roleInfo.Name %>" class="btn btn-success btn-small">分配菜单</a></td>
<td><a href="/Sys/RoleFunction.aspx?roleId=<%=roleInfo.RoleID %>&name=<%=roleInfo.Name %>" class="btn btn-success btn-small">分配权限</a></td>
</tr>
<%
}%>
</tbody>
</table>
</div>
</div>
</div>
此处页面没有分页处理,即获取所有角色信息,在页面上直接使用循环list的方法处理数据
以上即为角色管理列表逻辑实现过程
|