View
<script type="text/javascript">
var dd;
var grid;
$(function () {
var queryData = null;
grid = $('#grid').datagrid({ //定位到Table标签,Table标签的ID是grid
url: '@Url.Action("getUserList")', //指向后台的Action来获取当前菜单的信息的Json格式的数据
title: '用户菜单',
iconCls: 'icon-view',
height: ,
width: function () { return document.body.clientWidth * 0.9 },
nowrap: true,
autoRowHeight: false,
striped: true,
collapsible: true,
pagination: true, //分页插件置为true
pageSize: , //每页显示几条数据
pageNumber: , //页索引
rownumbers: true,
sortOrder: 'asc',
remoteSort: false,
idField: 'U_ID',
columns: [[
{ field: 'ck', checkbox: true }, //选择
{title: '用户名', field: 'U_Name', width: },
{ title: '角色名称', field: 'R_Name', width: },
]],
toolbar: [{
id: 'btnAdd',
text: '添加',
iconCls: 'icon-add',
handler: function () {
ShowAddDialog(); //实现添加记录的页面
}
}, '-', {
id: 'btnEdit',
text: '编辑',
iconCls: 'icon-edit',
handler: function () {
var selected = grid.datagrid("getSelected");
if (selected) {
var userID = selected.U_ID;
ShowEditOrViewDialog(userID); //实现修改记录的方法
} else {
$.messager.alert("友情提示", "请选择");
}
}
}, '-', {
id: 'btnDelete',
text: '删除',
iconCls: 'icon-remove',
handler: function () {
Delete(); //实现直接删除数据的方法
}
},
'-', {
id: 'btnReload',
text: '刷新',
iconCls: 'icon-reload',
handler: function () {
//实现刷新栏目中的数据
$("#grid").datagrid("reload");
}
}],
onDblClickRow: function (rowIndex, rowData) {
$('#grid').datagrid('uncheckAll');
$('#grid').datagrid('checkRow', rowIndex);
ShowEditOrViewDialog(rowData.D_id);
}
})
</script>
Controller:
/// <summary>
/// 获取用户列表
/// </summary>
public ActionResult getUserList()
{
//判断参数不为空
if (string.IsNullOrEmpty(Request.Params["page"]))
{
return null;
}
//获取前台参数数组值
var page = Request.Params["page"];
var pageSize = Request.Params["rows"];
var pageIndex = int.Parse(page) - ;
using (UserService.UserContractClient client = new UserService.UserContractClient())
{
int size = Convert.ToInt32(pageSize);
int index = Convert.ToInt32(pageIndex); RoleService.RoleContractClient role = new RoleService.RoleContractClient();
List<Role> rolelist = role.GetList().ToList();
//管理员全部显示 其他角色显示部分
var adminuser = (User)Session["adminuser"];
var rid = adminuser.U_RoleID;
var uid = adminuser.U_ID;
string rname = role.GetRole(rid.ToString()).R_Name;
if (rname.Contains("管理员"))
{
List<User> userlist = client.GetList().OrderByDescending(s => s.U_ID).ToList();
//获取符合条件的用户总条数
int totalCount = userlist.Count();
var query = from b in rolelist
from c in userlist
where c.U_RoleID == b.R_ID
select new { c.U_ID, c.U_Name, b.R_Name };
//分页
query = query.Skip(size * (index)).Take(size);
var jsonResult = new { total = totalCount, rows = query };
return Json(jsonResult, JsonRequestBehavior.AllowGet);
}
else
{
List<User> userlist = client.GetListOrderBy(uid).OrderByDescending(s => s.U_ID).Skip(size * (index)).Take(size).ToList();
//获取符合条件的所有记录条数
int totalCount = userlist.Count();
var query = from b in rolelist
from c in userlist
where c.U_RoleID == b.R_ID
select new { c.U_ID, c.U_Name, b.R_Name };
var jsonResult = new { total = totalCount, rows = query };
return Json(jsonResult, JsonRequestBehavior.AllowGet);
}
}
}
Controller