/// <summary> /// 实现查询出所有的菜单组信息 /// </summary> /// <returns>返回查询出来的菜单组的Json串</returns> public ActionResult GetAllPermissionGroups() { //首先拿到传递过来的参数 int pageIndex = Request["page"] == null ? 1 : int.Parse(Request["page"]); int pageSize = Request["rows"] == null ? 10 : int.Parse(Request["rows"]); int total = 0; //得到多条件查询和回收站的参数 string GroupName = Request["GroupName"]; int? GroupType = Request["GroupType"] == null ? -1 : int.Parse(Request["GroupType"]); int? DeletionStateCode = Request["DeletionStateCode"] == null ? -1 : int.Parse(Request["DeletionStateCode"]); //封装一个实体层表示查询的类 PermissionGroupQuery permissionGroup = new PermissionGroupQuery() { PageIndex = pageIndex, PageSize = pageSize, Total = total, GroupName = GroupName, GroupType = GroupType, DeletionStateCode = DeletionStateCode }; //根据条件查询结果 var data = _permissionGroupService.LoadSearchDate(permissionGroup); var result = new { total = permissionGroup.Total, rows = data }; return(JsonDate(result)); }
/// <summary> /// 实现对菜单组的查询 /// </summary> /// <param name="permission">传递的是菜单组查询的实体类</param> /// <returns>返回结果</returns> public IEnumerable <BasePermissionGroup> LoadSearchDate(PermissionGroupQuery permissionGroup) { var temp = _DbSession.BasePermissionGroupRepository.LoadEntities(c => true); if (!string.IsNullOrEmpty(permissionGroup.GroupName)) { temp = temp.Where <BasePermissionGroup>(c => c.GroupName.Contains(permissionGroup.GroupName)); } if (permissionGroup.GroupType != -1) { temp = temp.Where <BasePermissionGroup>(c => c.GroupType == permissionGroup.GroupType); } if (permissionGroup.DeletionStateCode == 1) { temp = temp.Where <BasePermissionGroup>(c => c.DeletionStateCode == permissionGroup.DeletionStateCode); } else { temp = temp.Where <BasePermissionGroup>(c => c.DeletionStateCode == 0); } permissionGroup.Total = temp.Count(); return(temp.OrderBy(c => c.SortCode) .Skip(permissionGroup.PageSize * (permissionGroup.PageIndex - 1)) .Take(permissionGroup.PageSize)); }