<td><a href="/Sys/RoleMenu.aspx?roleId=<%=roleInfo.RoleID %>&name=<%=roleInfo.Name %>" class="btn btn-success btn-small">分配菜单</a></td>
private Sys_MenuBLL sys_menuBll = new Sys_MenuBLL();
private Sys_MenuInRoleBLL sys_menuInRoleBll = new Sys_MenuInRoleBLL();
protected List<Sys_MenuInfo> parentMenuList = new List<Sys_MenuInfo>();
protected List<Sys_MenuInfo> sonMenuList = new List<Sys_MenuInfo>();
protected List<Sys_MenuInRoleInfo> rmlist = new List<Sys_MenuInRoleInfo>();
protected List<int> menuIdList = new List<int>();
protected int roleId = 0;
protected string roleName = string.Empty;
protected void Page_Load(object sender, EventArgs e) {
var action = this.Request.Params[ "action" ];
roleId = InputHelper.GetInputInt( this.Request.Params[ "roleId" ] );
roleName = this.Request.Params[ "name" ];
// 权限判断,没有权限,直接返回
if (!LoginUser.IsAssignPermission(10))
{
Response.Write("您暂无分配菜单的权限");
Response.End();
return;
}
if ( string.IsNullOrWhiteSpace( action ) ) {
//初始化 加载数据
/*
* 1. 获取所有菜单信息(包括主导航)
* 2. 获取所有主导航
* 3. 获取所有子导航
* 4. 获取当前角色的菜单分配信息
*/
// 获取所有导航信息
var menuList = sys_menuBll.GetList( "", "", "" );
// 获取所有主导航信息,赋值给 parentMenuList
parentMenuList = menuList.Where( m => m.ParentID == 0 ).ToList();
// 获取所有子导航信息,复制给 sonMenuList
sonMenuList = menuList.Where( m => m.ParentID != 0 ).ToList();
// 获取当前角色的菜单分配信息
rmlist = sys_menuInRoleBll.GetList( "", string.Format( "RoleID = {0}", roleId ), "" );
menuIdList = rmlist.Select( r => r.MenuID ).ToList();
}
}// 权限判断,没有权限,直接返回
if (!LoginUser.IsAssignPermission(10))
{
Response.Write("您暂无分配菜单的权限");
Response.End();
return;
}
if ( string.IsNullOrWhiteSpace( action ) ) {
//初始化 加载数据
/*
* 1. 获取所有菜单信息(包括主导航)
* 2. 获取所有主导航
* 3. 获取所有子导航
* 4. 获取当前角色的菜单分配信息
*/
// 获取所有导航信息
var menuList = sys_menuBll.GetList( "", "", "" );
// 获取所有主导航信息,赋值给 parentMenuList
parentMenuList = menuList.Where( m => m.ParentID == 0 ).ToList();
// 获取所有子导航信息,复制给 sonMenuList
sonMenuList = menuList.Where( m => m.ParentID != 0 ).ToList();
// 获取当前角色的菜单分配信息
rmlist = sys_menuInRoleBll.GetList( "", string.Format( "RoleID = {0}", roleId ), "" );
menuIdList = rmlist.Select( r => r.MenuID ).ToList();
} <div class="si-main">
<div class="si-block">
<div class="si-form">
<table class="table-form table">
<tbody>
<tr>
<td align="left"><h4><%=roleName %></h4></td>
</tr>
</tbody>
</table>
<table class="table table-page" id="grid">
<thead>
<tr>
<td align="center" style="width:30%">主导航</td>
<td align="center" style="width:20%">操作</td>
<td align="center" style="width:50%">二级导航(勾选二级导航时请务必勾选它所在的主导航,否则系统将不会显示,切记)</td>
</tr>
</thead>
<tbody>
<%foreach (var menuInfo in parentMenuList)
{ %>
<tr >
<td align="center">
<label for="like<%=menuInfo.MenuID %>" class="form-check" data-scheck>
<input type="checkbox" id="like<%=menuInfo.MenuID %>" name="like" value="<%=menuInfo.MenuID %>" <%=(menuIdList.Contains(menuInfo.MenuID) ? "checked=\"checked\"" : string.Empty ) %> data-value=<%=menuInfo.MenuID %>>
<span class="check-icons"><i class="icon icon-check"></i> <i class="icon icon-uncheck">
</i> </span><%=menuInfo.MenuName %>
</label>
</td>
<td align="center">
<a href="javascript:;" class="toggle" >查看|设置菜单</a>
</td>
<td>
<%var sonList = sonMenuList.Where(m => m.ParentID == menuInfo.MenuID); %>
<ul id="UL<%=menuInfo.MenuID %>" style="display:none">
<%if( sonList != null && sonList.Any() ){
foreach (var sonMenu in sonList)
{%>
<li>
<label for="Checkbox<%=sonMenu.MenuID %>" class="form-check" data-scheck>
<input type="checkbox" id="Checkbox<%=sonMenu.MenuID %>" name="menuChild" value="<%=sonMenu.MenuID %>" <%=(menuIdList.Contains(sonMenu.MenuID) ? "checked=\"checked\"" : string.Empty ) %> data-value="<%=menuInfo.MenuID %>"/>
<span class="check-icons"><i class="icon icon-check"></i> <i class="icon icon-uncheck">
</i> </span><%=sonMenu.MenuName%>
</label>
</li>
<%}} else{%>
<li style="color:Red">暂无子菜单项</li>
<%}%>
</ul>
</td>
</tr>
<%
} %>
<tr>
<td colspan="3" align="center">
</td>
</tr>
<tr>
<td colspan="3" align="center">
<button class="btn btn-primary" id="btnSave">保存</button>
<button class="btn btn-cancel" id="btnCancle">取消</button>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
$('#grid').on('click', '.toggle', function () {
var $this = $(this);
$this.parent().next().find('ul').toggle();
$this.parents('tr').siblings().find('ul').hide();
})| 欢迎光临 苏飞论坛 (http://www.sufeinet.com/) | Powered by Discuz! X3.4 |