smartbi.sdk.service.user
类 UserManagerService

java.lang.Object
  继承者 smartbi.sdk.service.user.UserManagerService

public class UserManagerService
extends java.lang.Object

此类为用户管理模块的服务接口,提供对用户进行管理时需要的方法,包括新建、修改、删除用户,新建、修改、删除组,新建、修改、删除角色, 给用户设置所属组、给角色添加用户等。


构造方法摘要
UserManagerService(ClientConnector conn)
          创建连接
 
方法摘要
 boolean addGroupAttribute(java.lang.String groupId, java.lang.String key, java.lang.String value, java.lang.String longValue)
          添加组扩展属性。
 boolean addUserAttribute(java.lang.String userId, java.lang.String key, java.lang.String value, java.lang.String longValue)
          添加扩展属性。
 boolean assignDepartmentsToRole(java.lang.String roleId, java.util.List<java.lang.String> groupIdList)
          给角色分配组
 boolean assignDepartmentsToUser(java.lang.String userId, java.util.List<java.lang.String> groupId)
          修改用户的所属组
 boolean assignRolesToDepartment(java.lang.String groupId, java.util.List<IRoleForGroup> groupToRoleList)
          把角色分配给组
 boolean assignRolesToUser(java.lang.String userId, java.util.List<java.lang.String> roleIdList)
          给用户分配角色
 boolean assignRolesToUserInner(java.lang.String userId, java.util.List<java.lang.String> roleIdList, boolean updateRoleCache)
          给用户分配角色
 boolean assignUsersToGroup(java.lang.String groupId, java.util.List<java.lang.String> userIdList)
          修改组所拥有的用户
 boolean assignUsersToRole(java.lang.String roleId, java.util.List<java.lang.String> userIdList)
          给角色分配用户
 void changePassword(java.lang.String oldPassword, java.lang.String newPassword)
          修改当前用户的密码
 java.lang.String createDepartment(java.lang.String parentGroupId, java.lang.String groupName, java.lang.String groupAlias, java.lang.String desc, java.lang.String departmentCode)
          创建组
 boolean createFunction(java.lang.String funcId, java.lang.String parentFuncId, java.lang.String funcName, java.lang.String funcAlias, java.lang.String funcDesc)
          创建操作权限
 java.lang.String createRole(java.lang.String roleName, java.lang.String roleAlias, java.lang.String desc, java.lang.String groupId)
          创建角色
 java.lang.String createUser(java.lang.String parentGroupId, java.lang.String userName, java.lang.String userAlias, java.lang.String desc, java.lang.String password, boolean isEnabled)
          创建用户
 java.lang.String createUser(java.lang.String parentGroupId, java.lang.String userName, java.lang.String userAlias, java.lang.String desc, java.lang.String password, boolean isEnabled, boolean forceChangePassword)
          创建用户
 void createUserById(java.lang.String parentGroupId, java.lang.String userId, java.lang.String userName, java.lang.String userAlias, java.lang.String desc, java.lang.String password, boolean isEnabled)
          指定ID创建用户
 void createUserById(java.lang.String parentGroupId, java.lang.String userId, java.lang.String userName, java.lang.String userAlias, java.lang.String desc, java.lang.String password, boolean isEnabled, boolean forceChangePassword)
          指定ID创建用户
 boolean deleteDepartment(java.lang.String groupId)
          删除组
 boolean deleteFunction(java.lang.String funcId)
          删除操作权限
 boolean deleteRole(java.lang.String roleId)
          删除角色
 boolean deleteUser(java.lang.String userId)
          删除用户
 java.util.List<? extends IDepartment> getAllDepartments()
          获取系统中的组列表,尽量使用此方法
 java.util.List<? extends IDepartment> getAllDepartmentsOfUser(java.lang.String userId)
          获取用户的所属组,此处所取结果包含根组
 java.util.List<? extends IFunction> getAllFunctions()
          获取所有操作权限列表
 java.util.List<? extends IFunction> getAllFunctionsOfCurrentUser()
          获取当前用户所拥有的操作权限
 java.util.List<? extends IExtensionAttribute> getAllGroupAttributes(java.lang.String groupId)
          获取某组所有的属性值。
 java.util.List<? extends IRole> getAllRoles()
          获取系统中的角色列表
 java.util.List<? extends IRole> getAllRolesOfUser(java.lang.String userId)
          获取该用户所有的角色,包括直接分配的和继承的角色
 java.util.List<? extends IRolesOfGroup> getAllRolesOfUserForClient(java.lang.String userId)
          获取该用户所拥有的角色,包括直接分配的和继承的,提供给前台用
 java.util.List<? extends IExtensionAttribute> getAllUserAttributes(java.lang.String userId)
          获取某用户所有的属性值。
 java.util.List<? extends IUser> getAllUsers()
          获取系统中的用户列表
 java.util.HashSet<? extends IUser> getAllUsersOfRole(java.lang.String roleId)
          获取角色所有用户(包括拥有该角色的用户组下的用户)
 java.util.List<? extends IRoleForGroup> getAssignedRolesOfDepartment(java.lang.String groupId)
          获取组的分配角色
 java.util.List<? extends IRole> getAssignedRolesOfUser(java.lang.String userId)
          获取直接分配给用户的角色
 IUser getCurrentUser()
          获取当前登录用户信息
 IDepartment getDefaultDepartment(java.lang.String userId)
          获用户的默认组
 IDepartment getDefaultDepartment(java.lang.String userId, java.lang.String hierId)
          已过时。 
 IDepartment getDepartmentByCode(java.lang.String code)
          通过组编号获取组对象
 IDepartment getDepartmentById(java.lang.String id)
          通过ID获取组对象
 IDepartment getDepartmentByName(java.lang.String name)
          通过组名称获取组对象
 java.util.List<? extends IDepartment> getDepartmentsOfCurrentUser()
          获取当前用户所拥有的组
 java.util.List<? extends IDepartment> getDepartmentsOfUser(java.lang.String userId)
          获取用户的所属组,此处所取结果不包含根组
 IFunction getFunctionById(java.lang.String funcId)
          通过操作权限ID获取操作权限对象
 java.util.List<? extends IFunction> getFunctionsByRoleId(java.lang.String roleId)
          获取角色的操作权限
 java.util.List<? extends IFunction> getFunctionsOfRole(java.lang.String roleId)
          获取角色所拥有的操作权限
 IExtensionAttribute getGroupAttribute(java.lang.String groupId, java.lang.String key)
          获取某组指定的属性值
 java.util.List<? extends IRole> getInheritedRolesOfDepartment(java.lang.String groupId)
          获取组的继承角色
 java.util.List<? extends IRole> getInheritedRolesOfUser(java.lang.String userId)
          所属组(可以是多个组)以及其继承的组的角色集合
 JSONObject getLicenseInfo()
          获取License中的关键信息
 java.util.List<java.lang.String> getLicenses()
          获取系统中所有License模块名称列表
 IDepartment getParentDepartment(java.lang.String groupId)
          获取父组
 IFunction getParentFunction(java.lang.String funcId)
          获取指定操作权限的父权限
 java.lang.String getPassword(java.lang.String userName)
          获取用户密码
 IRole getRoleById(java.lang.String id)
          通过ID获取角色
 IRole getRoleByName(java.lang.String name)
          通过角色名称获取角色对象
 IRole getRoleByName2(java.lang.String name)
          通过角色名称获取角色对象
 java.util.List<? extends IDepartment> getRootDepartments()
          获取根组
 java.util.List<? extends IFunction> getRootFunctions()
          获取所有的根操作权限
 java.util.List<? extends IFunction> getRootFunctionsOfCurrentUser()
          获取当前登陆用户权限范围内的根操作权限
 java.util.List<? extends IDepartment> getRootGrantableDepartmentsOfCurrentUser()
          获取当前用户权限范围内的顶层组
 java.util.List<? extends IDepartment> getSubDepartments(java.lang.String groupId)
          获取子组
 java.util.List<? extends IFunction> getSubFunctions(java.lang.String funcId)
          获取子操作权限
 java.util.List getSubGroupsAndUsers(java.lang.String groupId)
          获取用户组下的子组和用户
 java.util.List<? extends IRole> getUnionRolesOfDepartment(java.lang.String groupId)
          获取该组所有相关的角色,包括直接分配的角色、继承的角色、当前登录用户可进行分配的角色
 java.util.List<? extends IRole> getUnionRolesOfUser(java.lang.String userId)
          获取该用户所有相关的角色,包括直接分配的角色、继承的角色、当前登录用户权限范围内的角色
 IExtensionAttribute getUserAttribute(java.lang.String userId, java.lang.String key)
          获取指定的属性值
 java.util.List<? extends IUser> getUserByAttribute(java.lang.String key, java.lang.String value)
          根据用户扩展属性获取用户信息
 IUser getUserById(java.lang.String id)
          通过用户ID获取用户信息
 IUser getUserByName(java.lang.String name)
          通过用户名称获取用户信息
 java.util.List<? extends IUser> getUsersOfDepartment(java.lang.String groupId)
          获取组的用户
 java.util.List<? extends IUser> getUsersOfRole(java.lang.String roleId)
          获取角色所有用户
 boolean hasLicense(java.lang.String name)
          判断当前系统是否存在指定的License模块
 boolean isAdmin(java.lang.String userId)
          用户是否是管理员
 boolean isBuiltIn(java.lang.String id)
          是否是内置用户、角色、组:包括 AMDIN, USER; ADMINS,GROUPADMINS; DEPARTMENT
 boolean isCurrentUserAdmin()
          当前登陆用户是否是管理员
 boolean isCurUserFuncTypeAccessible(java.lang.String funcId)
          判断操作权限是否是当前用户权限范围内的操作权限
 boolean isGroupAdmin(java.lang.String userId)
          用户是否是组管理员
 boolean isLogged()
          系统是否登录
 boolean login(java.lang.String user, java.lang.String password)
          登录默认应用系统
 boolean loginFor(java.lang.String user, java.lang.String pasword, java.lang.String systemId)
          登录到指定应用系统
 boolean logout()
          退出登录
 boolean moveDepartment(java.lang.String groupId, java.lang.String toGroupId)
          移动组,即修改此组的父亲组
 boolean removeGroupAttribute(java.lang.String groupId, java.lang.String key)
          删除组扩展属性。
 boolean removeUserAttribute(java.lang.String userId, java.lang.String key)
          删除扩展属性。
 java.util.List<? extends IUser> searchUsers(java.lang.String name, int fromIndex, int toIndex)
          模糊查询名称、别名与关键字name匹配的用户
 boolean setDefaultDepartments(java.lang.String userId, java.util.List<java.lang.String> defaultDepartments)
          设定用户的默认组。
 boolean setFunctionsOfRole(java.lang.String roleId, java.util.List<java.lang.String> functionList)
          给角色分配操作权限
 boolean updateDepartment(java.lang.String groupId, java.lang.String groupAlias, java.lang.String desc, java.lang.String departmentCode)
          修改组
 boolean updateFunction(java.lang.String funcId, java.lang.String funcAlias, java.lang.String funcDesc)
          修改操作权限
 boolean updateGroupAttribute(java.lang.String groupId, java.lang.String key, java.lang.String value, java.lang.String longValue)
          更新组扩展属性。
 boolean updateRole(java.lang.String roleId, java.lang.String roleAlias, java.lang.String desc)
          修改角色
 boolean updateUser(java.lang.String userId, java.lang.String alias, java.lang.String desc, java.lang.String password, boolean isEnabled)
          修改用户。
 boolean updateUser(java.lang.String userId, java.lang.String alias, java.lang.String desc, java.lang.String password, boolean isEnabled, boolean forceChangePassword)
          修改用户。
 boolean updateUserAttribute(java.lang.String userId, java.lang.String key, java.lang.String value, java.lang.String longValue)
          更新扩展属性。
 boolean updateUserByEncryptedPassword(java.lang.String userId, java.lang.String alias, java.lang.String desc, java.lang.String password, boolean isEnabled)
          修改用户信息设置加密后的密码
 boolean updateUserByEncryptedPassword(java.lang.String userId, java.lang.String alias, java.lang.String desc, java.lang.String password, boolean isEnabled, boolean forceChangePassword)
          修改用户信息设置加密后的密码
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

构造方法详细信息

UserManagerService

public UserManagerService(ClientConnector conn)
创建连接

参数:
conn - 应用连接器
方法详细信息

login

public boolean login(java.lang.String user,
                     java.lang.String password)
登录默认应用系统

参数:
user - 用户名
password - 密码
返回:
true 登录成功, false 登录失败

loginFor

public boolean loginFor(java.lang.String user,
                        java.lang.String pasword,
                        java.lang.String systemId)
登录到指定应用系统

参数:
user - 用户名
pasword - 密码
systemId - 应用系统ID
返回:
true 登录成功, false 登录失败

logout

public boolean logout()
退出登录


isLogged

public boolean isLogged()
系统是否登录

返回:
true 已登录, 否则false

getCurrentUser

public IUser getCurrentUser()
获取当前登录用户信息

返回:
当前用户信息对象

getAllFunctionsOfCurrentUser

public java.util.List<? extends IFunction> getAllFunctionsOfCurrentUser()
获取当前用户所拥有的操作权限

返回:
IFunction类型的操作权限列表

isCurUserFuncTypeAccessible

public boolean isCurUserFuncTypeAccessible(java.lang.String funcId)
判断操作权限是否是当前用户权限范围内的操作权限

参数:
name - 操作权限的ID
返回:
是返回true,否则false

changePassword

public void changePassword(java.lang.String oldPassword,
                           java.lang.String newPassword)
修改当前用户的密码

参数:
oldPassword - 旧密码
newPassword - 新密码

createUser

public java.lang.String createUser(java.lang.String parentGroupId,
                                   java.lang.String userName,
                                   java.lang.String userAlias,
                                   java.lang.String desc,
                                   java.lang.String password,
                                   boolean isEnabled)
创建用户

参数:
parentGroupId - 所属用户组的ID
userName - 用户名称
userAlias - 别名
desc - 描述
password - 密码
isEnabled - 用户现在是否可用
返回:
创建后用户的ID
抛出:
用户名称为空
用户名称有重名
所属用户组不存在

createUser

public java.lang.String createUser(java.lang.String parentGroupId,
                                   java.lang.String userName,
                                   java.lang.String userAlias,
                                   java.lang.String desc,
                                   java.lang.String password,
                                   boolean isEnabled,
                                   boolean forceChangePassword)
创建用户

参数:
parentGroupId - 所属用户组的ID
userName - 用户名称
userAlias - 别名
desc - 描述
password - 密码
isEnabled - 用户现在是否可用
forceChangePassword - 是否强制修改密码
返回:
创建后用户的ID
抛出:
用户名称为空
用户名称有重名
所属用户组不存在

createUserById

public void createUserById(java.lang.String parentGroupId,
                           java.lang.String userId,
                           java.lang.String userName,
                           java.lang.String userAlias,
                           java.lang.String desc,
                           java.lang.String password,
                           boolean isEnabled)
指定ID创建用户

参数:
parentGroupId - 组ID
userId - 用户ID
userName - 用户名
userAlias - 用户别名
desc - 描述
password - 密码
isEnabled - 用户现在是否可用

createUserById

public void createUserById(java.lang.String parentGroupId,
                           java.lang.String userId,
                           java.lang.String userName,
                           java.lang.String userAlias,
                           java.lang.String desc,
                           java.lang.String password,
                           boolean isEnabled,
                           boolean forceChangePassword)
指定ID创建用户

参数:
parentGroupId - 组ID
userId - 用户ID
userName - 用户名
userAlias - 用户别名
desc - 描述
password - 密码
isEnabled - 用户现在是否可用
forceChangePassword - 是否强制修改密码

updateUser

public boolean updateUser(java.lang.String userId,
                          java.lang.String alias,
                          java.lang.String desc,
                          java.lang.String password,
                          boolean isEnabled)
修改用户。设置alias, desc, password, isEnabled一或多个字段为null对应不修改别名、描述、密码、用户是否可用

参数:
userId - 用户ID
alias - 别名
desc - 描述
password - 密码
isEnabled - 用户是否可用
返回:
如果修改成功返回true,否则false

updateUser

public boolean updateUser(java.lang.String userId,
                          java.lang.String alias,
                          java.lang.String desc,
                          java.lang.String password,
                          boolean isEnabled,
                          boolean forceChangePassword)
修改用户。设置alias, desc, password, isEnabled一或多个字段为null对应不修改别名、描述、密码、用户是否可用

参数:
userId - 用户ID
alias - 别名
desc - 描述
password - 密码
isEnabled - 用户是否可用
forceChangePassword - 是否强制修改密码
返回:
如果修改成功返回true,否则false

updateUserByEncryptedPassword

public boolean updateUserByEncryptedPassword(java.lang.String userId,
                                             java.lang.String alias,
                                             java.lang.String desc,
                                             java.lang.String password,
                                             boolean isEnabled)
修改用户信息设置加密后的密码

参数:
userId - 用户ID
alias - 别名
desc - 描述
password - 加密后的密码
isEnabled - 用户是否可用
返回:
如果修改成功返回true,否则false

updateUserByEncryptedPassword

public boolean updateUserByEncryptedPassword(java.lang.String userId,
                                             java.lang.String alias,
                                             java.lang.String desc,
                                             java.lang.String password,
                                             boolean isEnabled,
                                             boolean forceChangePassword)
修改用户信息设置加密后的密码

参数:
userId - 用户ID
alias - 别名
desc - 描述
password - 加密后的密码
isEnabled - 用户是否可用
forceChangePassword - 是否强制修改密码
返回:
如果修改成功返回true,否则false

deleteUser

public boolean deleteUser(java.lang.String userId)
删除用户

参数:
userId - 用户ID
返回:
成功删除返回true,否则false
抛出:
userId为空
删除的是当前登陆用户
此用户不存在 - ;删除的是内置用户

getUserById

public IUser getUserById(java.lang.String id)
通过用户ID获取用户信息

参数:
id - 用户ID
返回:
用户信息对象

getUserByName

public IUser getUserByName(java.lang.String name)
通过用户名称获取用户信息

参数:
name - 用户名称
返回:
用户信息对象

searchUsers

public java.util.List<? extends IUser> searchUsers(java.lang.String name,
                                                   int fromIndex,
                                                   int toIndex)
模糊查询名称、别名与关键字name匹配的用户

参数:
name - 用户名称
fromIndex - 起始条数
toIndex - 结束条数
返回:
用户信息列表

getPassword

public java.lang.String getPassword(java.lang.String userName)
获取用户密码

参数:
userName - 用户名称
返回:
知识库表t_user中存储的密码

getUserByAttribute

public java.util.List<? extends IUser> getUserByAttribute(java.lang.String key,
                                                          java.lang.String value)
根据用户扩展属性获取用户信息

参数:
key - 用户扩展属性名称
value - 用户扩展属性值
返回:
用户信息

createDepartment

public java.lang.String createDepartment(java.lang.String parentGroupId,
                                         java.lang.String groupName,
                                         java.lang.String groupAlias,
                                         java.lang.String desc,
                                         java.lang.String departmentCode)
创建组

参数:
parentGroupId - 父组ID
groupName - 组名
groupAlias - 别名
desc - 描述
departmentCode - 组编号
返回:
创建组成功后,返回组ID
抛出:
不是根组且父组不存在

updateDepartment

public boolean updateDepartment(java.lang.String groupId,
                                java.lang.String groupAlias,
                                java.lang.String desc,
                                java.lang.String departmentCode)
修改组

参数:
groupId - 组ID
groupAlias - 别名
desc - 描述
departmentCode - 组编号
返回:
修改成功返回true,否则false

deleteDepartment

public boolean deleteDepartment(java.lang.String groupId)
删除组

参数:
groupId - 组ID
返回:
删除成功返回true,否则false
抛出:
groupId为空
此组不存在
删除的是内置组
删除的组非空

getRootDepartments

public java.util.List<? extends IDepartment> getRootDepartments()
获取根组

返回:
根组列表

getDepartmentById

public IDepartment getDepartmentById(java.lang.String id)
通过ID获取组对象

参数:
id - 组ID
返回:
组信息对象

getDepartmentByName

public IDepartment getDepartmentByName(java.lang.String name)
通过组名称获取组对象

参数:
name - 组名称
返回:
组信息对象

getDepartmentByCode

public IDepartment getDepartmentByCode(java.lang.String code)
通过组编号获取组对象

参数:
code - 组编号
返回:
组信息对象

moveDepartment

public boolean moveDepartment(java.lang.String groupId,
                              java.lang.String toGroupId)
移动组,即修改此组的父亲组

参数:
groupId - 需要移动的组ID
toGroupId - 新的父组ID
返回:
true 成功,false 失败
抛出:
要移动的组不存在
新的父组不存在
不能把父组移至其子组内

createRole

public java.lang.String createRole(java.lang.String roleName,
                                   java.lang.String roleAlias,
                                   java.lang.String desc,
                                   java.lang.String groupId)
创建角色

参数:
roleName - 角色名称
roleAlias - 别名
desc - 描述
groupId - 组ID
返回:
创建成功后角色ID
抛出:
角色名称为空
角色名称重名

updateRole

public boolean updateRole(java.lang.String roleId,
                          java.lang.String roleAlias,
                          java.lang.String desc)
修改角色

参数:
roleId - 角色ID
roleAlias - 别名
desc - 描述
返回:
修改成功返回true,否则false

deleteRole

public boolean deleteRole(java.lang.String roleId)
删除角色

参数:
roleId - 角色ID
返回:
删除成功返回true,否则false
抛出:
所删角色ID为空
所删角色不存在
所删角色是内置角色

getRoleById

public IRole getRoleById(java.lang.String id)
通过ID获取角色

参数:
id - 角色ID
返回:
角色对象

getRoleByName

public IRole getRoleByName(java.lang.String name)
通过角色名称获取角色对象

参数:
name - 角色名称
返回:
角色对象

getRoleByName2

public IRole getRoleByName2(java.lang.String name)
通过角色名称获取角色对象

参数:
name - 角色名称
返回:
角色对象

getFunctionById

public IFunction getFunctionById(java.lang.String funcId)
通过操作权限ID获取操作权限对象

参数:
funcId - 操作权限ID
返回:
操作权限对象

createFunction

public boolean createFunction(java.lang.String funcId,
                              java.lang.String parentFuncId,
                              java.lang.String funcName,
                              java.lang.String funcAlias,
                              java.lang.String funcDesc)
创建操作权限

参数:
funcId - 操作权限ID
parentFuncId - 父ID
funcName - 名称
funcAlias - 别名
funcDesc - 描述
返回:
创建成功返回true,否则false
抛出:
当前登陆用户不是管理员

updateFunction

public boolean updateFunction(java.lang.String funcId,
                              java.lang.String funcAlias,
                              java.lang.String funcDesc)
修改操作权限

参数:
funcId - 操作权限ID
funcAlias - 别名
funcDesc - 描述
返回:
true:修改成功,否则false

deleteFunction

public boolean deleteFunction(java.lang.String funcId)
删除操作权限

参数:
funcId - 操作权限ID
返回:
删除成功返回true,否则false
抛出:
当前登陆用户不是管理员

getRootFunctions

public java.util.List<? extends IFunction> getRootFunctions()
获取所有的根操作权限

返回:
操作权限列表

getRootFunctionsOfCurrentUser

public java.util.List<? extends IFunction> getRootFunctionsOfCurrentUser()
获取当前登陆用户权限范围内的根操作权限

返回:
操作权限列表

getParentFunction

public IFunction getParentFunction(java.lang.String funcId)
获取指定操作权限的父权限

参数:
funcId - 指定操作权限ID
返回:
指定操作权限的父权限

getSubFunctions

public java.util.List<? extends IFunction> getSubFunctions(java.lang.String funcId)
获取子操作权限

参数:
funcId - 父操作权限
返回:
操作权限列表

getAllFunctions

public java.util.List<? extends IFunction> getAllFunctions()
获取所有操作权限列表

返回:
权限列表

getFunctionsOfRole

public java.util.List<? extends IFunction> getFunctionsOfRole(java.lang.String roleId)
获取角色所拥有的操作权限

参数:
roleId - 角色ID
返回:
操作权限列表

getUsersOfDepartment

public java.util.List<? extends IUser> getUsersOfDepartment(java.lang.String groupId)
获取组的用户

参数:
groupId - 组ID
返回:
组信息对象列表

getDepartmentsOfCurrentUser

public java.util.List<? extends IDepartment> getDepartmentsOfCurrentUser()
获取当前用户所拥有的组

返回:
组信息对象列表

getDepartmentsOfUser

public java.util.List<? extends IDepartment> getDepartmentsOfUser(java.lang.String userId)
获取用户的所属组,此处所取结果不包含根组

参数:
userId - 用户ID
返回:
组信息对象列表

getAllDepartmentsOfUser

public java.util.List<? extends IDepartment> getAllDepartmentsOfUser(java.lang.String userId)
获取用户的所属组,此处所取结果包含根组

参数:
userId - 用户ID
返回:
组信息对象列表

assignDepartmentsToUser

public boolean assignDepartmentsToUser(java.lang.String userId,
                                       java.util.List<java.lang.String> groupId)
修改用户的所属组

参数:
userId - 用户ID
groupId - 用户组ID
返回:
修改成功返回true,否则false
抛出:
修改内置用户的所属组
修改自身的所属组

setDefaultDepartments

public boolean setDefaultDepartments(java.lang.String userId,
                                     java.util.List<java.lang.String> defaultDepartments)
设定用户的默认组。约束:一个用户在一套组织结构下只能有一个默认组,要成功设置默认组,用户的所有组信息列表中需要包含传参defaultDepartments中的组ID。

参数:
userId - 用户ID
defaultDepartments - 默认组ID列表
返回:
true(不作为设置成功的标识)

getDefaultDepartment

@Deprecated
public IDepartment getDefaultDepartment(java.lang.String userId,
                                                   java.lang.String hierId)
已过时。 

获取指定"组织结构"下的默认组,默认系统的hierId为DEPARTMENT

参数:
userId - 用户ID
hierId - 组织结构ID
返回:
默认组对象

getDefaultDepartment

public IDepartment getDefaultDepartment(java.lang.String userId)
获用户的默认组

参数:
userId - 用户ID
返回:
默认组对象

getRootGrantableDepartmentsOfCurrentUser

public java.util.List<? extends IDepartment> getRootGrantableDepartmentsOfCurrentUser()
获取当前用户权限范围内的顶层组

返回:
组列表

getAllRolesOfUserForClient

public java.util.List<? extends IRolesOfGroup> getAllRolesOfUserForClient(java.lang.String userId)
获取该用户所拥有的角色,包括直接分配的和继承的,提供给前台用

参数:
userId - 用户ID
返回:
角色和所属的组封装在RolesOfGroup中返回

assignUsersToGroup

public boolean assignUsersToGroup(java.lang.String groupId,
                                  java.util.List<java.lang.String> userIdList)
修改组所拥有的用户

参数:
groupId - 组ID
userIdList - 用户列表
返回:
true操作成功否则失败

getUnionRolesOfUser

public java.util.List<? extends IRole> getUnionRolesOfUser(java.lang.String userId)
获取该用户所有相关的角色,包括直接分配的角色、继承的角色、当前登录用户权限范围内的角色

参数:
userId - 用户ID
返回:
角色信息对象列表

getInheritedRolesOfUser

public java.util.List<? extends IRole> getInheritedRolesOfUser(java.lang.String userId)
所属组(可以是多个组)以及其继承的组的角色集合

参数:
userId - 用户ID
返回:
角色信息对象列表

getAllRolesOfUser

public java.util.List<? extends IRole> getAllRolesOfUser(java.lang.String userId)
获取该用户所有的角色,包括直接分配的和继承的角色

参数:
userId - 用户ID
返回:
角色信息对象列表

getAssignedRolesOfUser

public java.util.List<? extends IRole> getAssignedRolesOfUser(java.lang.String userId)
获取直接分配给用户的角色

参数:
userId - 用户ID
返回:
角色信息对象列表

assignRolesToUser

public boolean assignRolesToUser(java.lang.String userId,
                                 java.util.List<java.lang.String> roleIdList)
给用户分配角色

参数:
userId - 用户ID
roleIdList - 角色ID列表
返回:
成功返回true,否则false
抛出:
所操作用户为内置用户

assignRolesToUserInner

public boolean assignRolesToUserInner(java.lang.String userId,
                                      java.util.List<java.lang.String> roleIdList,
                                      boolean updateRoleCache)
给用户分配角色

参数:
userId - 用户ID
roleIdList - 角色ID列表
updateRoleCache - 是否更新角色的缓存
返回:
成功返回true,否则false
抛出:
所操作用户为内置用户

assignUsersToRole

public boolean assignUsersToRole(java.lang.String roleId,
                                 java.util.List<java.lang.String> userIdList)
给角色分配用户

参数:
roleId - 角色ID
userIdList - 用户ID列表
返回:
成功返回true,否则false
抛出:
所添加用户为内置用户

getUsersOfRole

public java.util.List<? extends IUser> getUsersOfRole(java.lang.String roleId)
获取角色所有用户

参数:
roleId - 角色ID
返回:
用户对象列表

getAllUsersOfRole

public java.util.HashSet<? extends IUser> getAllUsersOfRole(java.lang.String roleId)
获取角色所有用户(包括拥有该角色的用户组下的用户)

参数:
roleId - 角色ID
返回:
用户对象列表

getSubDepartments

public java.util.List<? extends IDepartment> getSubDepartments(java.lang.String groupId)
获取子组

参数:
groupId - 父组ID
返回:
组信息列表

getParentDepartment

public IDepartment getParentDepartment(java.lang.String groupId)
获取父组

参数:
groupId - 组ID
返回:
组信息

assignRolesToDepartment

public boolean assignRolesToDepartment(java.lang.String groupId,
                                       java.util.List<IRoleForGroup> groupToRoleList)
把角色分配给组

参数:
groupId - 组ID
groupToRoleList - RolesOfGroup的对象列表
返回:
成功返回true,否则false
抛出:
组不存在

assignDepartmentsToRole

public boolean assignDepartmentsToRole(java.lang.String roleId,
                                       java.util.List<java.lang.String> groupIdList)
给角色分配组

参数:
roleId -
groupIdList -
返回:
成功返回true,否则false

getAssignedRolesOfDepartment

public java.util.List<? extends IRoleForGroup> getAssignedRolesOfDepartment(java.lang.String groupId)
获取组的分配角色

参数:
groupId - 用户组ID
返回:
RoleForGroup对象列表

getInheritedRolesOfDepartment

public java.util.List<? extends IRole> getInheritedRolesOfDepartment(java.lang.String groupId)
获取组的继承角色

参数:
groupId - 用户组ID
返回:
角色对象列表

getUnionRolesOfDepartment

public java.util.List<? extends IRole> getUnionRolesOfDepartment(java.lang.String groupId)
获取该组所有相关的角色,包括直接分配的角色、继承的角色、当前登录用户可进行分配的角色

参数:
groupId - 组ID
返回:
角色列表

getFunctionsByRoleId

public java.util.List<? extends IFunction> getFunctionsByRoleId(java.lang.String roleId)
获取角色的操作权限

参数:
roleId - 角色ID
返回:
操作权限信息列表

setFunctionsOfRole

public boolean setFunctionsOfRole(java.lang.String roleId,
                                  java.util.List<java.lang.String> functionList)
给角色分配操作权限

参数:
roleId - 角色ID
functionList - 操作权限ID列表
返回:
成功返回true,否则false
抛出:
角色不存在
操作权限不存在

addUserAttribute

public boolean addUserAttribute(java.lang.String userId,
                                java.lang.String key,
                                java.lang.String value,
                                java.lang.String longValue)
添加扩展属性。约束:短属性值长度小于256

参数:
userId - 用户ID
key - 属性名
value - 短属性值
longValue - 长属性值
返回:
成功返回true,失败返回false

removeUserAttribute

public boolean removeUserAttribute(java.lang.String userId,
                                   java.lang.String key)
删除扩展属性。

参数:
userId - 用户ID
key - 属性名
返回:
成功返回true,失败返回false

updateUserAttribute

public boolean updateUserAttribute(java.lang.String userId,
                                   java.lang.String key,
                                   java.lang.String value,
                                   java.lang.String longValue)
更新扩展属性。

参数:
userId - 用户ID
key - 属性名
value - 短属性值
longValue - 长属性值
返回:
成功返回true,失败返回false

getAllUserAttributes

public java.util.List<? extends IExtensionAttribute> getAllUserAttributes(java.lang.String userId)
获取某用户所有的属性值。

参数:
userId - 用户ID
返回:
属性值列表

getUserAttribute

public IExtensionAttribute getUserAttribute(java.lang.String userId,
                                            java.lang.String key)
获取指定的属性值

参数:
userId - 用户ID
key - 属性名
返回:
属性值对象

addGroupAttribute

public boolean addGroupAttribute(java.lang.String groupId,
                                 java.lang.String key,
                                 java.lang.String value,
                                 java.lang.String longValue)
添加组扩展属性。约束:短属性值长度小于256

参数:
userId - 组ID
key - 属性名
value - 短属性值
longValue - 长属性值
返回:
成功返回true,失败返回false

removeGroupAttribute

public boolean removeGroupAttribute(java.lang.String groupId,
                                    java.lang.String key)
删除组扩展属性。

参数:
userId - 用户ID
key - 属性名
返回:
成功返回true,失败返回false

updateGroupAttribute

public boolean updateGroupAttribute(java.lang.String groupId,
                                    java.lang.String key,
                                    java.lang.String value,
                                    java.lang.String longValue)
更新组扩展属性。

参数:
userId - 用户ID
key - 属性名
value - 短属性值
longValue - 长属性值
返回:
成功返回true,失败返回false

getAllGroupAttributes

public java.util.List<? extends IExtensionAttribute> getAllGroupAttributes(java.lang.String groupId)
获取某组所有的属性值。

参数:
userId - 用户ID
返回:
属性值列表

getGroupAttribute

public IExtensionAttribute getGroupAttribute(java.lang.String groupId,
                                             java.lang.String key)
获取某组指定的属性值

参数:
userId - 用户ID
key - 属性名
返回:
属性值对象

isBuiltIn

public boolean isBuiltIn(java.lang.String id)
是否是内置用户、角色、组:包括 AMDIN, USER; ADMINS,GROUPADMINS; DEPARTMENT

参数:
id - 可以是用户组ID,用户ID,组ID,角色ID
返回:
是内置对象返回true,否则false

isAdmin

public boolean isAdmin(java.lang.String userId)
用户是否是管理员

参数:
userId - 用户组ID
返回:
是管理员返回true,否则false

isGroupAdmin

public boolean isGroupAdmin(java.lang.String userId)
用户是否是组管理员

参数:
userId - 用户组ID
返回:
是组管理员返回true,否则false

isCurrentUserAdmin

public boolean isCurrentUserAdmin()
当前登陆用户是否是管理员

返回:
是组管理员返回true,否则false

getSubGroupsAndUsers

public java.util.List getSubGroupsAndUsers(java.lang.String groupId)
获取用户组下的子组和用户

参数:
groupId - 用户组ID
返回:
group和user的列表

getAllDepartments

public java.util.List<? extends IDepartment> getAllDepartments()
获取系统中的组列表,尽量使用此方法

返回:
组列表

getAllRoles

public java.util.List<? extends IRole> getAllRoles()
获取系统中的角色列表

返回:

getAllUsers

public java.util.List<? extends IUser> getAllUsers()
获取系统中的用户列表

返回:

getLicenses

public java.util.List<java.lang.String> getLicenses()
获取系统中所有License模块名称列表

返回:

hasLicense

public boolean hasLicense(java.lang.String name)
判断当前系统是否存在指定的License模块

参数:
name - License模块名称
返回:
存在指定的License模块时返回true,否则返回false。

getLicenseInfo

public JSONObject getLicenseInfo()
获取License中的关键信息

返回:
License中的关键信息,如:{"hasLicense":true,"sessionCount":1000000,"reportCount":-1,"mobile":1000000 ,"authorizedUsers":1000000,"expiration":"2014-12-31","licensee":"Smartbi","type": "evaluation"}