/// <summary> /// 获取授权范围数据 (按道理,应该是在某个数据区域上起作用) /// </summary> public DataTable GetPermissionItemScop(string permissionItemScopeCode) { // 获取部门数据 DataTable dtPermissionItem = new DataTable(PiPermissionItemTable.TableName); RDIFrameworkService platFormService = new RDIFrameworkService(); if (UserInfo.IsAdministrator || (String.IsNullOrEmpty(permissionItemScopeCode) || (!SystemInfo.EnableUserAuthorizationScope))) { dtPermissionItem = platFormService.PermissionItemService.GetDT(UserInfo); if (platFormService.PermissionItemService is ICommunicationObject) { ((ICommunicationObject)platFormService.PermissionItemService).Close(); } // 这里需要只把有效的模块显示出来 // BusinessLogic.SetFilter(dtPermissionItem, BasePermissionItemEntity.FieldEnabled, "1"); // 未被打上删除标标志的 // BusinessLogic.SetFilter(dtPermissionItem, BasePermissionItemEntity.FieldDeleteMark, "0"); } else { dtPermissionItem = platFormService.PermissionService.GetPermissionItemDTByPermissionScope(UserInfo, UserInfo.Id, permissionItemScopeCode); if (platFormService.PermissionService is ICommunicationObject) { ((ICommunicationObject)platFormService.PermissionService).Close(); } BasePageLogic.CheckTreeParentId(dtPermissionItem, PiPermissionItemTable.FieldId, PiPermissionItemTable.FieldParentId); } return(dtPermissionItem); }
/// <summary> /// 获取组织机构权限域数据 /// </summary> public DataTable GetOrganizeScope(string permissionItemScopeCode = "Resource.ManagePermission", bool isInnerOrganize = true) { // 获取部门数据,不启用权限域 var dataTable = new DataTable(PiOrganizeTable.TableName); if ((UserInfo.IsAdministrator) || (String.IsNullOrEmpty(permissionItemScopeCode) || (!SystemInfo.EnableUserAuthorizationScope))) { dataTable = ClientCache.Instance.GetOrganizeDT(UserInfo).Copy(); if (isInnerOrganize) { BusinessLogic.SetFilter(dataTable, PiOrganizeTable.FieldIsInnerOrganize, "1"); BasePageLogic.CheckTreeParentId(dataTable, PiOrganizeTable.FieldId, PiOrganizeTable.FieldParentId); } dataTable.DefaultView.Sort = PiOrganizeTable.FieldSortCode; } else { var platFormService = new RDIFrameworkService(); dataTable = platFormService.PermissionService.GetOrganizeDTByPermissionScope(UserInfo, UserInfo.Id, permissionItemScopeCode); this.CloseCommunicationObject(platFormService.PermissionService); if (isInnerOrganize) { BusinessLogic.SetFilter(dataTable, PiOrganizeTable.FieldIsInnerOrganize, "1"); BasePageLogic.CheckTreeParentId(dataTable, PiOrganizeTable.FieldId, PiOrganizeTable.FieldParentId); } dataTable.DefaultView.Sort = PiOrganizeTable.FieldSortCode; } return(dataTable); }
/// <summary> /// 获取模块菜单限域数据 /// </summary> public DataTable GetModuleScope(string permissionItemScopeCode) { RDIFrameworkService platFormService = new RDIFrameworkService(); // 获取部门数据 if ((UserInfo.IsAdministrator) || (String.IsNullOrEmpty(permissionItemScopeCode) || (!SystemInfo.EnableUserAuthorizationScope))) { DataTable dtModule = platFormService.ModuleService.GetDT(UserInfo); if (platFormService.ModuleService is ICommunicationObject) { ((ICommunicationObject)platFormService.ModuleService).Close(); } // 这里需要只把有效的模块显示出来 // BusinessLogic.SetFilter(dtModule, PiModuleTable.FieldEnabled, "1"); // 未被打上删除标标志的 // BusinessLogic.SetFilter(dtModule, PiModuleTable.FieldDeleteMark, "0"); return(dtModule); } else { DataTable dataTable = platFormService.PermissionService.GetModuleDTByPermissionScope(UserInfo, UserInfo.Id, permissionItemScopeCode); if (platFormService.PermissionService is ICommunicationObject) { ((ICommunicationObject)platFormService.PermissionService).Close(); } BasePageLogic.CheckTreeParentId(dataTable, PiModuleTable.FieldId, PiModuleTable.FieldParentId); return(dataTable); } }