public DataTable GetStaffDataTableByPermissionScope(BaseUserInfo userInfo, string userId, string permissionCode) { var dt = new DataTable(BaseUserEntity.TableName); var parameter = ServiceInfo.Create(userInfo, MethodBase.GetCurrentMethod()); ServiceUtil.ProcessUserCenterWriteDb(userInfo, parameter, (dbHelper) => { // 获得组织机构列表 var manager = new BasePermissionScopeManager(dbHelper, userInfo); // 若权限是空的,直接返回所有数据 if (!String.IsNullOrEmpty(permissionCode)) { // 被管理部门的列表 string[] organizeIds = manager.GetOrganizeIds(userInfo.SystemCode, userId, permissionCode, false); var staffManager = new BaseStaffManager(dbHelper, userInfo); dt = staffManager.GetDataTableByOrganizes(organizeIds); dt.TableName = BaseStaffEntity.TableName; } }); return(dt); }