kd.bos.servicehelper.permission

## 类 PermissionServiceHelper

- java.lang.Object
- - kd.bos.servicehelper.permission.PermissionServiceHelper

-     public class PermissionServiceHelper
      extends java.lang.Object

  权限服务类 当前这个类所在包才是正确位置，以前在kd.bos.servicehelp.permission下的类，等业务的代码都改过来后将弃用。

- - ### 字段概要

    字段
    限定符和类型 | 字段和说明
    --- | ---
    `static java.lang.String` | `admin_entityID`
    `static java.lang.String` | `ADMINTYPE_ORGADMIN`
    `static java.lang.String` | `ADMINTYPE_SUPERADMIN`
    `static java.lang.String` | `baseService_bizAppID`
    `static java.lang.String` | `ENTITY_ORG`
    `static java.lang.String` | `ENTITY_ORG_STRUCTURE`
    `static java.lang.String` | `ENTITY_PERM_DIRECTOR`
    `static java.lang.String` | `superuser_entityID`
    `static java.lang.String` | `TREETYPE_MAINDATACTRL`
    `static java.lang.String` | `userapp_entityID`

  - ### 构造器概要

    构造器
    构造器和说明
    `PermissionServiceHelper()`

  - ### 方法概要

    所有方法 静态方法 具体方法 已过时的方法
    限定符和类型 | 方法和说明
    --- | ---
    `static int` | `checkFunctionPermission(long userId, long orgId, java.lang.String entityNum, java.lang.String permItemId)` 已过时。
    `static int` | `checkFunctionPermission(long userId, long dimObjId, java.lang.String entityNum, java.lang.String permItemId, java.lang.String dimType)` 已过时。
    `static int` | `checkFunctionPermission(java.lang.String appId, long userId, long orgId, java.lang.String entityNum, java.lang.String permItemId)` 已过时。
    `static int` | `checkPermission(long userId, java.lang.String dimType, long dimObjId, java.lang.String appId, java.lang.String entityNum, java.lang.String permItemId)` 功能权限检查(按权限隔离维度)
    `static java.lang.Boolean` | `checkUserBizApp(java.lang.Long userID, java.lang.String bizAppID)` 检查用户是否有权使用应用
    `static boolean` | `clearAllCache()` 清理所有权限相关缓存
    `static boolean` | `clearAllUserAppCache()` 清理所有用户应用权限缓存
    `static kd.bos.orm.query.QFilter` | `convertRule(MainEntityType entityType, java.lang.String ruleJson, java.util.Map<java.lang.String,kd.bos.orm.query.QFilter> convertRuleMap, java.util.Map<java.lang.String,kd.bos.orm.query.QFilter> convertRuleRowMap)` 过滤条件字符串转化 把类似creator.name = "张三" 这样的条件要转化为 creator.id = "123" 以解决跨库OR，或者跨对象OR的问题。
    `static void` | `copyUserPermission(long sourceUserId, java.util.List<java.lang.Long> targetUserIds, boolean copyUserPerm, boolean copyRole, boolean copyDisFunPerm)` 复制权限： 复制给多个目标用户
    `static void` | `copyUserPermission(long sourceUserId, java.util.List<java.lang.Long> targetUserIds, boolean copyUserPerm, boolean copyRole, boolean copyDisFunPerm, java.lang.StringBuilder licAssignMsg)` 复制权限： 复制给多个目标用户
    `static void` | `copyUserPermission(long sourceUserId, long targetUserId, boolean copyUserPerm, boolean copyRole, boolean copyDisFunPerm)` 复制权限： 复制给单个目标用户
    `static void` | `copyUserPermission(long sourceUserId, long targetUserId, boolean copyUserPerm, boolean copyRole, boolean copyDisFunPerm, java.lang.StringBuilder licAssignMsg)` 复制权限： 复制给单个目标用户，并把同步分配许可结果作为参数返回
    `static boolean` | `createBizpartner(kd.bos.permission.model.Bizpartner bizpartner, java.lang.StringBuilder errorInfo)` 创建商务伙伴 必须拥有的属性有name以及usertype
    `static boolean` | `createBizpartnerUser(kd.bos.permission.model.BizpartnerUser bizpartner_user, java.lang.StringBuilder errorInfo)` 创建商务伙伴用户 必须拥有的属性有bizpartner、user、usertype以及bizpartnertype
    `static boolean` | `createUser(kd.bos.permission.model.User user, java.lang.StringBuilder errorInfo)` 创建用户 必须拥有属性有 phone、name以及usertype
    `static boolean` | `deleteBizpartner(java.util.List<java.lang.Long> ids, java.lang.StringBuilder errorInfo)` 删除商务伙伴
    `static boolean` | `deleteBizpartnerUser(java.util.List<java.lang.Long> ids, java.lang.StringBuilder errorInfo)` 删除商务伙伴用户
    `static boolean` | `deleteUser(java.util.List<java.lang.Long> ids, java.lang.StringBuilder errorInfo)` 删除用户
    `static java.util.List<java.lang.Long>` | `getAdminChargeOrgs(java.lang.Long adminId)` 获取管理员的组织授权范围
    `static java.util.List<java.lang.Long>` | `getAdminChargeUsers(java.lang.Long adminId)` 获取管理员可以授权的用户范围
    `static kd.bos.permission.model.AdminType` | `getAdminType(long userId)` 获取当前用户的管理员类型
    `static java.util.Map<java.lang.Long,kd.bos.permission.api.FieldControlRule>` | `getAllFieldControlRule(long userId, java.lang.String entityNum)` 已过时。
    `static java.util.Map<java.lang.Long,kd.bos.permission.api.FieldControlRule>` | `getAllFieldControlRule(long userId, java.lang.String appId, java.lang.String entityNum)` 获取指定用户、实体，全部组织的字段权限规则
    `static java.util.List<java.lang.String>` | `getAllNoPermMenuIdsByAppId(java.lang.Long userId, java.lang.String appId)` 用户进入某个应用时，需将无权的菜单隐藏掉 根据用户ID和应用ID获取接口返回无权的菜单ID 用户有权的菜单是已授权业务对象及没有配置权限项的业务对象的并集
    `static java.util.List<java.lang.Long>` | `getAllPermissionOrgs(java.lang.Long userId, java.lang.String entityNum, java.lang.String permItemId)` 已过时。
    `static java.util.List<java.lang.Long>` | `getAllPermissionOrgs(java.lang.Long userId, java.lang.String appId, java.lang.String entityNum, java.lang.String permItemId)` 已过时。
    `static kd.bos.permission.api.HasPermOrgResult` | `getAllPermOrgs(java.lang.Long userId, java.lang.String appId, java.lang.String entityNum, java.lang.String permItemId)` 获取有权限的组织
    `static java.util.Map<java.lang.String,java.util.List<java.lang.String>>` | `getAppEntityByRoleSet(java.util.Set<java.lang.String> roleIdSet)` 根据角色集获取角色包含的应用-实体权限
    `static java.util.Set<java.lang.Long>` | `getAppUser(java.lang.String appId)` 根据应用ID，获取拥有该应用权限的用户列表
    `static java.lang.String` | `getBizCloudId(java.lang.String bizappId)`
    `static java.lang.String` | `getBizcloudNameById(java.lang.String bizappId)`
    `static kd.bos.orm.query.QFilter` | `getDataPermission(long userId, java.lang.String entityNum)` 已过时。
    `static kd.bos.orm.query.QFilter` | `getDataPermission(long userId, java.lang.String appId, java.lang.String entityNum)` 与组织无关，获取指定用户指定表单下有权使用的数据权限
    `static kd.bos.orm.query.QFilter` | `getDataPermWithOrg(long userId, java.lang.String appId, java.lang.String entityNum)` 获取指定用户、指定实体的数据权限规则（多个组织下的同一个实体的数据规则用or拼接取并集） 条件中需要包含组织的条件。
    `static java.lang.String` | `getDEntityidByEntityid(java.lang.String entityTypeId)`
    `static java.util.List<java.lang.Long>` | `getDirectorChargeOrgs(java.lang.String appId, java.lang.String entityNum, java.lang.String operateType, java.lang.Long userID)` 获取操作的特殊数据权限的负责部门ID列表 获取指定人员的负责部门
    `static kd.bos.permission.api.FieldControlRule` | `getFieldControlRule(long userId, long orgId, java.lang.String appId, java.lang.String entityNum)` 获取字段权限
    `static kd.bos.permission.api.FieldControlRule` | `getFieldRulesSum(java.lang.Long userId, java.lang.String entityNum)` 已过时。
    `static kd.bos.permission.api.FieldControlRule` | `getFieldRulesSum(java.lang.Long userId, java.lang.String appId, java.lang.String entityNum)` 不区分组织，获取指定用户、指定实体的字段权限规则（单个字段的权限范围将会是多个组织下的最大权限）
    `static kd.bos.permission.api.DataRule` | `getOperationRule(java.lang.String entityNum, java.lang.String operationType)` 已过时。
    `static kd.bos.permission.api.DataRule` | `getOperationRule(java.lang.String appId, java.lang.String entityNum, java.lang.String operationType)` 获取特殊数据权限
    `static java.util.List<java.util.Map<java.lang.String,java.lang.String>>` | `getPermObjectsByNumber(java.lang.String entityTypeId)`
    `static kd.bos.dataentity.entity.DynamicObject[]` | `getRightPermDataByRoleId(java.lang.String roleId)`
    `static kd.bos.permission.api.RoleInfo` | `getRoleInfos(java.lang.String roleId)` 返回关于角色的信息
    `static java.util.Set<java.lang.String>` | `getRolesByUser(java.lang.Long userId)` 获取当前用户拥有的角色（不考虑组织，最终结果合并所有组织下的角色）
    `static java.lang.String` | `getUsableEntitiesInfo(java.lang.Long userId)` 与组织无关，获取用户有权使用的实体信息 返回内容如下： [{ //云 "id":"cloudid", "name":"cloudName", "children":[ { //应用 "id":"appId", "name":"appName" "children":[ { //表单 "id":"formId1", "name":"formName1" }, { "id":"formId2", "name":"formName2" }, { "id":"formId3", "name":"formName3" }] }, { "id":"appId2", "name":"appName2" "children":[ { "id":"formId4", "name":"formName4" }, { "id":"formId5", "name":"formName5" }, { "id":"formId6", "name":"formName6" }] }] }]
    `static java.util.List<java.lang.String>` | `getUserBizApps(java.lang.Long userID)` 获取用户有权使用的应用ID列表
    `static java.util.List<java.lang.Long>` | `getUserOrgs(long userId)` 已过时。
    `static boolean` | `hasBindingFunctionPerm(java.lang.String entityNum)`
    `static boolean` | `hasNewPermission(long userID, java.lang.String entityNum)` 已过时。
    `static boolean` | `hasNewPermission(long userId, java.lang.String appId, java.lang.String entityNum)` 判断用户是否拥有指定实体的新增权
    `static boolean` | `hasPermission(java.lang.Long userId, java.lang.String entityNum, java.lang.String permItemId)` 已过时。
    `static boolean` | `hasSpecificPerm(long userID, java.lang.String entityNum, java.lang.String permItemId)` 已过时。
    `static boolean` | `hasSpecificPerm(long userId, java.lang.String appId, java.lang.String entityNum, java.lang.String permItemId)` 判断用户是否拥有指定实体指定权限项
    `static boolean` | `hasViewPermission(long userId, java.lang.String entityNum)` 已过时。
    `static boolean` | `hasViewPermission(long userId, java.lang.String appId, java.lang.String entityNum)` 判断用户是否有指定实体的查看权
    `static boolean` | `isAdminUser(long userId)` 描述：检查用户是不是管理员。
    `static boolean` | `isAdminUser(long userId, kd.bos.permission.model.AdminType adminType)` 检查当前用户是否指定管理员类型的管理员。
    `static boolean` | `isAdminUser(long userId, java.lang.String type)` 描述：检查用户是不是管理员。
    `static boolean` | `isBindingAddNewPermission(java.lang.String entityNum)`
    `static boolean` | `isBindingViewPermission(java.lang.String entityNum)`
    `static java.lang.Boolean` | `isDirector(java.lang.String appId, java.lang.String entityType, java.lang.String operateType, java.lang.Long userID, java.lang.Long orgID)` 描述：判断指定用户在指定的单据是不是指定组织的主管
    `static boolean` | `isSuperUser(long userId)` 描述：检查用户是不是超级用户（全功能用户）。
    `static boolean` | `modifyBizpartner(kd.bos.permission.model.Bizpartner bizpartner, java.lang.StringBuilder errorInfo)` 修改商务伙伴信息
    `static boolean` | `modifyBizpartnerUser(kd.bos.permission.model.BizpartnerUser bizpartner_user, java.lang.StringBuilder errorInfo)` 修改商务伙伴用户信息
    `static boolean` | `modifyUser(kd.bos.permission.model.User user, java.lang.StringBuilder errorInfo)` 修改用户信息
    `static void` | `modifyUserAsOrgAdmin(java.util.List<kd.bos.permission.model.AdminParam> paramList)`
    `static kd.bos.permission.model.Bizpartner` | `queryBizpartner(java.lang.Long id, java.lang.StringBuilder errorInfo)` 查出商务伙伴信息
    `static kd.bos.permission.model.BizpartnerUser` | `queryBizpartnerUser(java.lang.Long id, java.lang.StringBuilder errorInfo)` 查出商务伙伴用户信息
    `static kd.bos.permission.model.User` | `queryUser(java.lang.Long id, java.lang.StringBuilder errorInfo)` 查出用户信息
    `static boolean` | `roleAssignOrgUser(java.lang.String roleId, java.util.Map<java.lang.Long,java.util.List<java.lang.Long>> assignInfo, java.util.Map<java.lang.Long,java.lang.Boolean> orgInfo, boolean ifAdd)` 已过时。
    `static boolean` | `roleAssignOrgUser(java.lang.String roleId, java.util.Map<java.lang.Long,java.util.List<java.lang.Long>> assignInfo, java.util.Map<java.lang.Long,java.lang.Boolean> orgInfo, boolean ifAdd, java.lang.String source, java.lang.Long bizRoleId)` 已过时。
    `static boolean` | `roleAssignOrgUser(java.lang.String roleId, java.lang.String dimType, java.util.Map<java.lang.Long,java.util.List<java.lang.Long>> assignInfo, java.util.Map<java.lang.Long,java.lang.Boolean> dimObjInfo, boolean ifAdd, java.lang.String source, java.lang.Long bizRoleId)` 角色管理-分配组织用户
    `static boolean` | `roleAssignUserOrg(java.lang.String roleId, java.util.Map<java.lang.Long,java.util.List<java.lang.Long>> assignInfo, java.util.Map<java.lang.Long,java.lang.Boolean> orgInfo, boolean ifAdd)` 已过时。
    `static boolean` | `roleAssignUserOrg(java.lang.String roleId, java.lang.String dimType, java.util.Map<java.lang.Long,java.util.List<java.lang.Long>> assignInfo, java.util.Map<java.lang.Long,java.lang.Boolean> dimObjInfo, boolean ifAdd, java.lang.String source, java.lang.Long bizRoleId)` 角色分配用户组织
    `static boolean` | `saveEntityAppRelation(java.util.Map<java.lang.String,java.util.List<java.lang.String>> entityAppMap, java.lang.StringBuilder errorInfo)` 保存 业务对象和应用的关系 当entityAppMap某个key包含的list为null或者size=0时，删除该entity的所有应用关系
    `static boolean` | `userAssignRole(java.lang.Long userId, java.util.Map<java.lang.Long,java.util.List<java.lang.String>> assignInfo, java.util.Map<java.lang.Long,java.lang.Boolean> orgInfo, boolean ifAdd)` 已过时。
    `static boolean` | `userAssignRole(java.lang.Long userId, java.lang.String dimType, java.util.Map<java.lang.Long,java.util.List<java.lang.String>> assignInfo, java.util.Map<java.lang.Long,java.lang.Boolean> orgInfo, boolean ifAdd)` 用户管理-分配角色
    `static boolean` | `userDirectAssignPerm(java.lang.Long userId, java.lang.String dimType, java.lang.Long dimObjId, java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.util.List<java.lang.String>>> appEntityPermItemMap, boolean addOrRemove)` 用户直接授权（包括取消授权）
    `static boolean` | `userDirectAssignPerm(java.lang.Long userId, java.lang.String dimType, java.lang.Long dimObjId, java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.util.List<java.lang.String>>> appEntityPermItemMap, boolean addOrRemove, java.lang.String source, java.lang.Long bizRoleId)` 用户直接授权（包括取消授权）
    `static boolean` | `userDisFuncPerm(java.lang.Long userId, java.lang.String dimType, java.util.List<java.lang.Long> orgIds, java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.util.List<java.lang.String>>> appEntityPermItemMap, boolean addOrRemove, java.lang.String source, java.lang.Long bizRoleId)` 用户禁用权限

    - ### 从类继承的方法 java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### 字段详细资料

    - #### userapp_entityID

          public static final java.lang.String userapp_entityID

      另请参阅:
        常量字段值

    - #### admin_entityID

          public static final java.lang.String admin_entityID

      另请参阅:
        常量字段值

    - #### superuser_entityID

          public static final java.lang.String superuser_entityID

      另请参阅:
        常量字段值

    - #### baseService_bizAppID

          public static final java.lang.String baseService_bizAppID

      另请参阅:
        常量字段值

    - #### ENTITY_ORG

          public static final java.lang.String ENTITY_ORG

      另请参阅:
        常量字段值

    - #### ENTITY_ORG_STRUCTURE

          public static final java.lang.String ENTITY_ORG_STRUCTURE

      另请参阅:
        常量字段值

    - #### ENTITY_PERM_DIRECTOR

          public static final java.lang.String ENTITY_PERM_DIRECTOR

      另请参阅:
        常量字段值

    - #### TREETYPE_MAINDATACTRL

          public static final java.lang.String TREETYPE_MAINDATACTRL

      另请参阅:
        常量字段值

    - #### ADMINTYPE_SUPERADMIN

          public static final java.lang.String ADMINTYPE_SUPERADMIN

      另请参阅:
        常量字段值

    - #### ADMINTYPE_ORGADMIN

          public static final java.lang.String ADMINTYPE_ORGADMIN

      另请参阅:
        常量字段值

  - ### 构造器详细资料

    - #### PermissionServiceHelper

          public PermissionServiceHelper()

  - ### 方法详细资料

    - #### getUserOrgs

          @Deprecated
          public static java.util.List<java.lang.Long> getUserOrgs(long userId)

      已过时。
      获得用户所有有授权的组织
      参数:
        `userId` - 用户内码
      返回:
        返回组织列表

    - #### hasPermission

          @Deprecated
          public static boolean hasPermission(java.lang.Long userId,
                                                           java.lang.String entityNum,
                                                           java.lang.String permItemId)

      已过时。

    - #### checkFunctionPermission

          @Deprecated
          public static int checkFunctionPermission(long userId,
                                                                 long orgId,
                                                                 java.lang.String entityNum,
                                                                 java.lang.String permItemId)

      已过时。

    - #### checkFunctionPermission

          @Deprecated
          public static int checkFunctionPermission(java.lang.String appId,
                                                                 long userId,
                                                                 long orgId,
                                                                 java.lang.String entityNum,
                                                                 java.lang.String permItemId)

      已过时。

    - #### checkFunctionPermission

          @Deprecated
          public static int checkFunctionPermission(long userId,
                                                                 long dimObjId,
                                                                 java.lang.String entityNum,
                                                                 java.lang.String permItemId,
                                                                 java.lang.String dimType)

      已过时。

    - #### hasNewPermission

          @Deprecated
          public static boolean hasNewPermission(long userID,
                                                              java.lang.String entityNum)

      已过时。

    - #### hasSpecificPerm

          @Deprecated
          public static boolean hasSpecificPerm(long userID,
                                                             java.lang.String entityNum,
                                                             java.lang.String permItemId)

      已过时。

    - #### hasViewPermission

          @Deprecated
          public static boolean hasViewPermission(long userId,
                                                               java.lang.String entityNum)

      已过时。

    - #### isBindingAddNewPermission

          public static boolean isBindingAddNewPermission(java.lang.String entityNum)

    - #### isBindingViewPermission

          public static boolean isBindingViewPermission(java.lang.String entityNum)

    - #### hasBindingFunctionPerm

          public static boolean hasBindingFunctionPerm(java.lang.String entityNum)

    - #### copyUserPermission

          public static void copyUserPermission(long sourceUserId,
                                                long targetUserId,
                                                boolean copyUserPerm,
                                                boolean copyRole,
                                                boolean copyDisFunPerm)

      复制权限： 复制给单个目标用户
      参数:
        `sourceUserId` -
        `targetUserId` -
        `copyUserPerm` -
        `copyRole` -
        `copyDisFunPerm` -

    - #### copyUserPermission

          public static void copyUserPermission(long sourceUserId,
                                                java.util.List<java.lang.Long> targetUserIds,
                                                boolean copyUserPerm,
                                                boolean copyRole,
                                                boolean copyDisFunPerm)

      复制权限： 复制给多个目标用户
      参数:
        `sourceUserId` -
        `targetUserIds` -
        `copyUserPerm` -
        `copyRole` -
        `copyDisFunPerm` -

    - #### copyUserPermission

          public static void copyUserPermission(long sourceUserId,
                                                long targetUserId,
                                                boolean copyUserPerm,
                                                boolean copyRole,
                                                boolean copyDisFunPerm,
                                                java.lang.StringBuilder licAssignMsg)

      复制权限： 复制给单个目标用户，并把同步分配许可结果作为参数返回
      参数:
        `sourceUserId` -
        `targetUserId` -
        `copyUserPerm` -
        `copyRole` -
        `copyDisFunPerm` -
        `licAssignMsg` -

    - #### copyUserPermission

          public static void copyUserPermission(long sourceUserId,
                                                java.util.List<java.lang.Long> targetUserIds,
                                                boolean copyUserPerm,
                                                boolean copyRole,
                                                boolean copyDisFunPerm,
                                                java.lang.StringBuilder licAssignMsg)

      复制权限： 复制给多个目标用户
      参数:
        `sourceUserId` -
        `targetUserIds` -
        `copyUserPerm` -
        `copyRole` -
        `copyDisFunPerm` -

    - #### getUserBizApps

          public static java.util.List<java.lang.String> getUserBizApps(java.lang.Long userID)

      获取用户有权使用的应用ID列表
      参数:
        `userId` - 人员ID
      返回:
        List 用户有权使用的应用ID列表

    - #### checkUserBizApp

          public static java.lang.Boolean checkUserBizApp(java.lang.Long userID,
                                                          java.lang.String bizAppID)

      检查用户是否有权使用应用
      参数:
        `userId` - 人员ID
        `bizAppID` - 应用ID
      返回:
        Boolean true: 有权；false: 无权。

    - #### isSuperUser

          public static boolean isSuperUser(long userId)

      描述：检查用户是不是超级用户（全功能用户）。
      参数:
        `userId` - 用户ID
      返回:
        boolean true:是超级用户；false：不是超级用户。

    - #### isAdminUser

          public static boolean isAdminUser(long userId)

      描述：检查用户是不是管理员。
      参数:
        `userId` - 用户ID
      返回:
        boolean true:是管理员；false：不是管理员。

    - #### isAdminUser

          public static boolean isAdminUser(long userId,
                                            java.lang.String type)

      描述：检查用户是不是管理员。
      参数:
        `userId` - 用户ID
        `type` - 管理员类型
      返回:
        boolean true:是管理员；false：不是管理员。

    - #### isAdminUser

          public static boolean isAdminUser(long userId,
                                            kd.bos.permission.model.AdminType adminType)

      检查当前用户是否指定管理员类型的管理员。
      参数:
        `userId` -
        `adminType` -
      返回:

    - #### getAdminType

          public static kd.bos.permission.model.AdminType getAdminType(long userId)

      获取当前用户的管理员类型
      参数:
        `userId` -
      返回:

    - #### getAdminChargeOrgs

          public static java.util.List<java.lang.Long> getAdminChargeOrgs(java.lang.Long adminId)

      获取管理员的组织授权范围
      参数:
        `bdProp` - 属性字段
        `adminId` - 管理员的用户ID
      返回:
        组织ID的集合

    - #### getAdminChargeUsers

          public static java.util.List<java.lang.Long> getAdminChargeUsers(java.lang.Long adminId)

      获取管理员可以授权的用户范围
      参数:
        `bdProp` -
        `adminId` - 管理员
      返回:
        用户ID的集合

    - #### getAllFieldControlRule

          @Deprecated
          public static java.util.Map<java.lang.Long,kd.bos.permission.api.FieldControlRule> getAllFieldControlRule(long userId,
                                                                                                                                 java.lang.String entityNum)

      已过时。

    - #### getAllNoPermMenuIdsByAppId

          public static java.util.List<java.lang.String> getAllNoPermMenuIdsByAppId(java.lang.Long userId,
                                                                                    java.lang.String appId)

      用户进入某个应用时，需将无权的菜单隐藏掉 根据用户ID和应用ID获取接口返回无权的菜单ID 用户有权的菜单是已授权业务对象及没有配置权限项的业务对象的并集
      参数:
        `userId` - 用户ID
        `appId` - 应用ID
      返回:
        无权业务对象的ID集合

    - #### roleAssignOrgUser

          @Deprecated
          public static boolean roleAssignOrgUser(java.lang.String roleId,
                                                               java.util.Map<java.lang.Long,java.util.List<java.lang.Long>> assignInfo,
                                                               java.util.Map<java.lang.Long,java.lang.Boolean> orgInfo,
                                                               boolean ifAdd)

      已过时。

    - #### roleAssignOrgUser

          @Deprecated
          public static boolean roleAssignOrgUser(java.lang.String roleId,
                                                               java.util.Map<java.lang.Long,java.util.List<java.lang.Long>> assignInfo,
                                                               java.util.Map<java.lang.Long,java.lang.Boolean> orgInfo,
                                                               boolean ifAdd,
                                                               java.lang.String source,
                                                               java.lang.Long bizRoleId)

      已过时。
      请替换为 roleAssignOrgUser(String roleId, String dimType, Map> assignInfo, Map dimObjInfo, boolean ifAdd, String source, Long bizRoleId)

    - #### roleAssignOrgUser

          public static boolean roleAssignOrgUser(java.lang.String roleId,
                                                  java.lang.String dimType,
                                                  java.util.Map<java.lang.Long,java.util.List<java.lang.Long>> assignInfo,
                                                  java.util.Map<java.lang.Long,java.lang.Boolean> dimObjInfo,
                                                  boolean ifAdd,
                                                  java.lang.String source,
                                                  java.lang.Long bizRoleId)

      角色管理-分配组织用户
      参数:
        `roleId` - 角色ID
        `dimType` - 隔离维度类型（如bos_org， bcm_model等任意基础资料类型）
        `assignInfo` - 键是用户ID，值是组织ID的集合
        `dimObjInfo` - 键是组织ID，值是“是否包含下级”；可以传null，传null意味着默认所有组织都“不包含下级”。
        `ifAdd` - 是否添加，如果是true，则为添加，false为删除；为false时，参数“orgInfo”传null即可。
        `source` - 记录权限来源：1为直接分配、2为角色分配、3为业务角色（若值为空，默认为2）
        `bizRoleId` - 记录来源的业务角色，可为空
      返回:
        分配成功则返回true，反之为false。

    - #### roleAssignUserOrg

          @Deprecated
          public static boolean roleAssignUserOrg(java.lang.String roleId,
                                                               java.util.Map<java.lang.Long,java.util.List<java.lang.Long>> assignInfo,
                                                               java.util.Map<java.lang.Long,java.lang.Boolean> orgInfo,
                                                               boolean ifAdd)

      已过时。

    - #### roleAssignUserOrg

          public static boolean roleAssignUserOrg(java.lang.String roleId,
                                                  java.lang.String dimType,
                                                  java.util.Map<java.lang.Long,java.util.List<java.lang.Long>> assignInfo,
                                                  java.util.Map<java.lang.Long,java.lang.Boolean> dimObjInfo,
                                                  boolean ifAdd,
                                                  java.lang.String source,
                                                  java.lang.Long bizRoleId)

      角色分配用户组织
      参数:
        `roleId` - 角色ID
        `dimType` - 隔离维度类型（如bos_org， bcm_model等任意基础资料类型）
        `assignInfo` - 键是用户ID，值是组织ID的集合
        `dimObjInfo` - 键是组织ID，值是“是否包含下级”；可以传null，传null意味着默认所有组织都“不包含下级”。
        `ifAdd` - 是否添加，如果是true，则为添加，false为删除；为false时，参数“orgInfo”传null即可。
        `source` - 记录权限来源：1为直接分配、2为角色分配、3为业务角色（若值为空，默认为2）
        `bizRoleId` - 记录来源的业务角色，可为空
      返回:
        分配成功则返回true，反之为false。

    - #### userAssignRole

          @Deprecated
          public static boolean userAssignRole(java.lang.Long userId,
                                                            java.util.Map<java.lang.Long,java.util.List<java.lang.String>> assignInfo,
                                                            java.util.Map<java.lang.Long,java.lang.Boolean> orgInfo,
                                                            boolean ifAdd)

      已过时。

    - #### userAssignRole

          public static boolean userAssignRole(java.lang.Long userId,
                                               java.lang.String dimType,
                                               java.util.Map<java.lang.Long,java.util.List<java.lang.String>> assignInfo,
                                               java.util.Map<java.lang.Long,java.lang.Boolean> orgInfo,
                                               boolean ifAdd)

      用户管理-分配角色
      参数:
        `userId` - 用户ID
        `assignInfo` - 键是组织ID，值是角色ID的集合
        `orgInfo` - 键是组织ID，值是“是否包含下级”；可以传null，传null意味着默认所有组织都“不包含下级”。
        `ifAdd` - 是否添加，如果是true，则为添加，false为删除；为false时，参数“orgInfo”传null即可。
      返回:
        分配成功则返回true，反之为false。

    - #### getOperationRule

          @Deprecated
          public static kd.bos.permission.api.DataRule getOperationRule(java.lang.String entityNum,
                                                                                     java.lang.String operationType)

      已过时。

    - #### getOperationRule

          public static kd.bos.permission.api.DataRule getOperationRule(java.lang.String appId,
                                                                        java.lang.String entityNum,
                                                                        java.lang.String operationType)

      获取特殊数据权限
      参数:
        `appId` - 应用ID
        `entityNum` - 表单类型
        `operationType` - 操作类型
      返回:
        数据规则

    - #### modifyUserAsOrgAdmin

          public static void modifyUserAsOrgAdmin(java.util.List<kd.bos.permission.model.AdminParam> paramList)

      参数:
        `paramList` -

    - #### isDirector

          public static java.lang.Boolean isDirector(java.lang.String appId,
                                                     java.lang.String entityType,
                                                     java.lang.String operateType,
                                                     java.lang.Long userID,
                                                     java.lang.Long orgID)

      描述：判断指定用户在指定的单据是不是指定组织的主管
      参数:
        `entityType` - 实体类型
        `userID` - 用户ID
        `orgID` - 组织ID
      返回:
        Boolean true: 是主管；false: 不是主管

    - #### getDirectorChargeOrgs

          public static java.util.List<java.lang.Long> getDirectorChargeOrgs(java.lang.String appId,
                                                                             java.lang.String entityNum,
                                                                             java.lang.String operateType,
                                                                             java.lang.Long userID)

      获取操作的特殊数据权限的负责部门ID列表 获取指定人员的负责部门
      参数:
        `appId` - 应用ID
        `entityNum` - 实体编码
        `operateType` - 操作类型
        `userId` - 人员ID
      返回:
        List 管理的组织ID列表

    - #### getUsableEntitiesInfo

          public static java.lang.String getUsableEntitiesInfo(java.lang.Long userId)

      与组织无关，获取用户有权使用的实体信息 返回内容如下： [{ //云 "id":"cloudid", "name":"cloudName", "children":[ { //应用 "id":"appId", "name":"appName" "children":[ { //表单 "id":"formId1", "name":"formName1" }, { "id":"formId2", "name":"formName2" }, { "id":"formId3", "name":"formName3" }] }, { "id":"appId2", "name":"appName2" "children":[ { "id":"formId4", "name":"formName4" }, { "id":"formId5", "name":"formName5" }, { "id":"formId6", "name":"formName6" }] }] }]

    - #### getFieldRulesSum

          @Deprecated
          public static kd.bos.permission.api.FieldControlRule getFieldRulesSum(java.lang.Long userId,
                                                                                             java.lang.String entityNum)

      已过时。
      换为getFieldRulesSum(Long userId, String appId, String entityNum)

    - #### getDataPermission

          @Deprecated
          public static kd.bos.orm.query.QFilter getDataPermission(long userId,
                                                                                java.lang.String entityNum)

      已过时。
      换为getDataPermission(long userId, String appId, String entityNum)

    - #### getAppUser

          public static java.util.Set<java.lang.Long> getAppUser(java.lang.String appId)

      根据应用ID，获取拥有该应用权限的用户列表
      参数:
        `appId` -
      返回:

    - #### getAppEntityByRoleSet

          public static java.util.Map<java.lang.String,java.util.List<java.lang.String>> getAppEntityByRoleSet(java.util.Set<java.lang.String> roleIdSet)

      根据角色集获取角色包含的应用-实体权限
      参数:
        `roleIdSet` - 角色ID set
      返回:
        返回值的Key是应用ID，Value是实体编码List

    - #### getRolesByUser

          public static java.util.Set<java.lang.String> getRolesByUser(java.lang.Long userId)

      获取当前用户拥有的角色（不考虑组织，最终结果合并所有组织下的角色）
      参数:
        `userId` -
      返回:

    - #### clearAllCache

          public static boolean clearAllCache()

      清理所有权限相关缓存
      返回:
        返回是否清理成功

    - #### getRoleInfos

          public static kd.bos.permission.api.RoleInfo getRoleInfos(java.lang.String roleId)

      返回关于角色的信息
      参数:
        `roleId` -
      返回:

    - #### convertRule

          public static kd.bos.orm.query.QFilter convertRule(MainEntityType entityType,
                                                             java.lang.String ruleJson,
                                                             java.util.Map<java.lang.String,kd.bos.orm.query.QFilter> convertRuleMap,
                                                             java.util.Map<java.lang.String,kd.bos.orm.query.QFilter> convertRuleRowMap)

      过滤条件字符串转化 把类似creator.name = "张三" 这样的条件要转化为 creator.id = "123" 以解决跨库OR，或者跨对象OR的问题。
      参数:
        `entityType` - 要转换规则的实体类型
        `convertRuleMap` - 记录在FilterGrid的规则条件
        `convertRuleMap` - 记录曾经转换过的规则，以便加速转化（FilterGrid记录的规则，转换为QFilter），需要外面事先初始化好
        `convertRuleRowMap` - 记录曾经转换过FilterGrid具体一行的规则，以便加速转化，需要外面事先初始化好

    - #### saveEntityAppRelation

          public static boolean saveEntityAppRelation(java.util.Map<java.lang.String,java.util.List<java.lang.String>> entityAppMap,
                                                      java.lang.StringBuilder errorInfo)

      保存 业务对象和应用的关系 当entityAppMap某个key包含的list为null或者size=0时，删除该entity的所有应用关系

    - #### clearAllUserAppCache

          public static boolean clearAllUserAppCache()

      清理所有用户应用权限缓存
      返回:
        返回是否清理成功

    - #### createUser

          public static boolean createUser(kd.bos.permission.model.User user,
                                           java.lang.StringBuilder errorInfo)

      创建用户 必须拥有属性有 phone、name以及usertype
      返回:
        返回是否创建成功

    - #### createBizpartner

          public static boolean createBizpartner(kd.bos.permission.model.Bizpartner bizpartner,
                                                 java.lang.StringBuilder errorInfo)

      创建商务伙伴 必须拥有的属性有name以及usertype
      返回:
        返回是否创建成功

    - #### createBizpartnerUser

          public static boolean createBizpartnerUser(kd.bos.permission.model.BizpartnerUser bizpartner_user,
                                                     java.lang.StringBuilder errorInfo)

      创建商务伙伴用户 必须拥有的属性有bizpartner、user、usertype以及bizpartnertype
      返回:
        返回是否创建成功

    - #### modifyUser

          public static boolean modifyUser(kd.bos.permission.model.User user,
                                           java.lang.StringBuilder errorInfo)

      修改用户信息
      返回:
        返回是否修改成功

    - #### modifyBizpartner

          public static boolean modifyBizpartner(kd.bos.permission.model.Bizpartner bizpartner,
                                                 java.lang.StringBuilder errorInfo)

      修改商务伙伴信息
      返回:
        返回是否修改成功

    - #### modifyBizpartnerUser

          public static boolean modifyBizpartnerUser(kd.bos.permission.model.BizpartnerUser bizpartner_user,
                                                     java.lang.StringBuilder errorInfo)

      修改商务伙伴用户信息
      返回:
        返回是否修改成功

    - #### deleteBizpartner

          public static boolean deleteBizpartner(java.util.List<java.lang.Long> ids,
                                                 java.lang.StringBuilder errorInfo)

      删除商务伙伴
      参数:
        `ids` -
        `errorInfo` -
      返回:

    - #### deleteBizpartnerUser

          public static boolean deleteBizpartnerUser(java.util.List<java.lang.Long> ids,
                                                     java.lang.StringBuilder errorInfo)

      删除商务伙伴用户
      参数:
        `ids` -
        `errorInfo` -
      返回:

    - #### deleteUser

          public static boolean deleteUser(java.util.List<java.lang.Long> ids,
                                           java.lang.StringBuilder errorInfo)

      删除用户
      参数:
        `ids` -
        `errorInfo` -
      返回:

    - #### queryUser

          public static kd.bos.permission.model.User queryUser(java.lang.Long id,
                                                               java.lang.StringBuilder errorInfo)

      查出用户信息
      参数:
        `id` -
        `errorInfo` - 出错信息
      返回:

    - #### queryBizpartner

          public static kd.bos.permission.model.Bizpartner queryBizpartner(java.lang.Long id,
                                                                           java.lang.StringBuilder errorInfo)

      查出商务伙伴信息
      参数:
        `id` -
        `errorInfo` - 出错信息
      返回:

    - #### queryBizpartnerUser

          public static kd.bos.permission.model.BizpartnerUser queryBizpartnerUser(java.lang.Long id,
                                                                                   java.lang.StringBuilder errorInfo)

      查出商务伙伴用户信息
      参数:
        `id` -
        `errorInfo` - 出错信息
      返回:

    - #### checkPermission

          public static int checkPermission(long userId,
                                            java.lang.String dimType,
                                            long dimObjId,
                                            java.lang.String appId,
                                            java.lang.String entityNum,
                                            java.lang.String permItemId)

      功能权限检查(按权限隔离维度)
      参数:
        `userId` - 用户id
        `dimType` - 维度类型
        `dimObjId` - 维度对象的id
        `appId` - 应用ID
        `entityNum` - 业务对象编码
        `permItemId` - 权限项id
      返回:
        0 无权 1 有权

    - #### getAllPermissionOrgs

          @Deprecated
          public static java.util.List<java.lang.Long> getAllPermissionOrgs(java.lang.Long userId,
                                                                                         java.lang.String entityNum,
                                                                                         java.lang.String permItemId)

      已过时。
      请换为getAllPermOrgs(Long userId, String appId, String entityNum, String permItemId)

    - #### getAllPermissionOrgs

          @Deprecated
          public static java.util.List<java.lang.Long> getAllPermissionOrgs(java.lang.Long userId,
                                                                                         java.lang.String appId,
                                                                                         java.lang.String entityNum,
                                                                                         java.lang.String permItemId)

      已过时。
      获取有权限的组织 请换为getAllPermOrgs(Long userId, String appId, String entityNum, String permItemId) ，有利性能
      参数:
        `userId` - 用户ID
        `appId` - 应用ID
        `entityNum` - 业务对象ID
        `permItemId` - 权限项ID
      返回:
        有权限的组织

    - #### getAllPermOrgs

          public static kd.bos.permission.api.HasPermOrgResult getAllPermOrgs(java.lang.Long userId,
                                                                              java.lang.String appId,
                                                                              java.lang.String entityNum,
                                                                              java.lang.String permItemId)

      获取有权限的组织
      参数:
        `userId` - 用户ID
        `appId` - 应用ID
        `entityNum` - 业务对象ID
        `permItemId` - 权限项ID
      返回:
        当HasPermOrgResult的hasAllOrgPerm（）为true时，HasPermOrgResult的getHasPermOrgs()返回值的内容为空，表示有权范围为所有组织。

    - #### hasNewPermission

          public static boolean hasNewPermission(long userId,
                                                 java.lang.String appId,
                                                 java.lang.String entityNum)

      判断用户是否拥有指定实体的新增权
      参数:
        `userId` -
        `appId` -
        `entityNum` -
      返回:

    - #### hasSpecificPerm

          public static boolean hasSpecificPerm(long userId,
                                                java.lang.String appId,
                                                java.lang.String entityNum,
                                                java.lang.String permItemId)

      判断用户是否拥有指定实体指定权限项
      参数:
        `userId` -
        `appId` -
        `entityNum` -
        `permItemId` -
      返回:

    - #### hasViewPermission

          public static boolean hasViewPermission(long userId,
                                                  java.lang.String appId,
                                                  java.lang.String entityNum)

      判断用户是否有指定实体的查看权
      参数:
        `userId` - 用户id
        `entityNum` - 表单编码
      返回:

    - #### getFieldControlRule

          public static kd.bos.permission.api.FieldControlRule getFieldControlRule(long userId,
                                                                                   long orgId,
                                                                                   java.lang.String appId,
                                                                                   java.lang.String entityNum)

      获取字段权限
      参数:
        `userId` -
        `orgId` -
        `entityNum` -
      返回:

    - #### getAllFieldControlRule

          public static java.util.Map<java.lang.Long,kd.bos.permission.api.FieldControlRule> getAllFieldControlRule(long userId,
                                                                                                                    java.lang.String appId,
                                                                                                                    java.lang.String entityNum)

      获取指定用户、实体，全部组织的字段权限规则
      参数:
        `userId` -
        `entityNum` -
      返回:

    - #### userDirectAssignPerm

          public static boolean userDirectAssignPerm(java.lang.Long userId,
                                                     java.lang.String dimType,
                                                     java.lang.Long dimObjId,
                                                     java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.util.List<java.lang.String>>> appEntityPermItemMap,
                                                     boolean addOrRemove)

      用户直接授权（包括取消授权）
      参数:
        `userId` - 用户ID
        `dimObjId` - 权限隔离维度对象ID（可能是业务单元ID，合并报表的体系ID，或者其他ID）
        `dimType` - 权限隔离维度类型
        `appEntityPermItemMap` - 应用，实体和权限项的映射
        `addOrRemove` - true 为授权 , false为取消授权
      返回:
        如果有异常等导致没有把数据保存到数据库，则返回false，否则为true。

    - #### userDirectAssignPerm

          public static boolean userDirectAssignPerm(java.lang.Long userId,
                                                     java.lang.String dimType,
                                                     java.lang.Long dimObjId,
                                                     java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.util.List<java.lang.String>>> appEntityPermItemMap,
                                                     boolean addOrRemove,
                                                     java.lang.String source,
                                                     java.lang.Long bizRoleId)

      用户直接授权（包括取消授权）
      参数:
        `userId` - 用户ID
        `dimObjId` - 权限隔离维度对象ID（可能是业务单元ID，合并报表的体系ID，或者其他ID）
        `dimType` - 权限隔离维度类型
        `appEntityPermItemMap` - 应用，实体和权限项的映射
        `addOrRemove` - true 为授权 , false为取消授权
        `source` - 记录权限来源：1为直接分配、2为角色分配、3为业务角色（若值为空，默认为1）
      返回:
        如果有异常等导致没有把数据保存到数据库，则返回false，否则为true。

    - #### userDisFuncPerm

          public static boolean userDisFuncPerm(java.lang.Long userId,
                                                java.lang.String dimType,
                                                java.util.List<java.lang.Long> orgIds,
                                                java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.util.List<java.lang.String>>> appEntityPermItemMap,
                                                boolean addOrRemove,
                                                java.lang.String source,
                                                java.lang.Long bizRoleId)

      用户禁用权限
      参数:
        `userId` - 用户ID
        `orgId` - 组织ID
        `appEntityPermItemMap` - 应用，实体和权限项的映射
        `addOrRemove` - true 为禁用 , false为取消禁用
        `source` - 记录权限来源：1为直接分配、2为角色分配、3为业务角色（若值为空，默认为1）
      返回:

    - #### getFieldRulesSum

          public static kd.bos.permission.api.FieldControlRule getFieldRulesSum(java.lang.Long userId,
                                                                                java.lang.String appId,
                                                                                java.lang.String entityNum)

      不区分组织，获取指定用户、指定实体的字段权限规则（单个字段的权限范围将会是多个组织下的最大权限）
      参数:
        `pUserId` - 用户ID
        `pAppId` - 应用id
        `pEntityNum` - 实体编码
      返回:

    - #### getDataPermission

          public static kd.bos.orm.query.QFilter getDataPermission(long userId,
                                                                   java.lang.String appId,
                                                                   java.lang.String entityNum)

      与组织无关，获取指定用户指定表单下有权使用的数据权限

    - #### getDataPermWithOrg

          public static kd.bos.orm.query.QFilter getDataPermWithOrg(long userId,
                                                                    java.lang.String appId,
                                                                    java.lang.String entityNum)

      获取指定用户、指定实体的数据权限规则（多个组织下的同一个实体的数据规则用or拼接取并集） 条件中需要包含组织的条件。例如 (orgid=1L and 规则1) or (orgid=2L and 规则2) or (orgid=3L and 规则3) ....
      参数:
        `pUserId` -
        `appId` -
        `entityNum` -
      返回:

    - #### getPermObjectsByNumber

          public static java.util.List<java.util.Map<java.lang.String,java.lang.String>> getPermObjectsByNumber(java.lang.String entityTypeId)

    - #### getDEntityidByEntityid

          public static java.lang.String getDEntityidByEntityid(java.lang.String entityTypeId)

    - #### getRightPermDataByRoleId

          public static kd.bos.dataentity.entity.DynamicObject[] getRightPermDataByRoleId(java.lang.String roleId)

    - #### getBizcloudNameById

          public static java.lang.String getBizcloudNameById(java.lang.String bizappId)

    - #### getBizCloudId

          public static java.lang.String getBizCloudId(java.lang.String bizappId)