类 SecurityContextService
java.lang.Object
com.elitesland.ystdms.sys.security.SecurityContextService
扩展的 Security 上下文服务
提供用户相关的扩展信息(员工、公司、组织等)的查询能力
这些信息通过 Query Service 接口获取,支持本地实现和Feign远程调用两种模式
-
构造器概要
构造器构造器说明SecurityContextService(SysEmployeeQueryService employeeQueryService, SysOrgQueryService orgQueryService, SysEmployeeOrgQueryService employeeOrgQueryService, SysOuFeignClient ouFeignClient, SysUserQueryService sysUserQueryService, AbacSecurityProperties abacSecurityProperties) -
方法概要
修饰符和类型方法说明void清除缓存voidclearUserCache(String username) 清除指定用户的缓存getAllOu()获取所有公司信息获取当前登录用户的员工信息获取当前用户所属的组织信息获取当前用户所属的公司信息getEmployee(String username) 获取指定用户的员工信息getEmployeeByMobile(String mobile) 根据手机号获取员工信息getEmployeeByUserId(UUID userId) 根据用户ID获取员工信息(支持本地和Feign查询复用)getEmployeeOrgs(UUID employeeId) 获取员工的所有部门信息(通过 sys_employee_org 关联表查询)getNewUserIdByUsername(String username) 已过时。获取指定ID的组织信息getOrgByCode(String code) 根据组织编码查询组织信息getSysUserByUsername(String username) 根据用户名查询SysUser记录(从本系统sys_user表) 用于JWT解析后获取本地用户信息,确保用户信息以本系统为准
-
构造器详细资料
-
SecurityContextService
public SecurityContextService(@Nullable SysEmployeeQueryService employeeQueryService, @Nullable SysOrgQueryService orgQueryService, @Nullable SysEmployeeOrgQueryService employeeOrgQueryService, @Nullable SysOuFeignClient ouFeignClient, @Nullable SysUserQueryService sysUserQueryService, AbacSecurityProperties abacSecurityProperties)
-
-
方法详细资料
-
getCurrentEmployee
获取当前登录用户的员工信息- 返回:
- 员工信息,如果未登录或查询失败则返回 null
-
getEmployee
获取指定用户的员工信息- 参数:
username- 用户名- 返回:
- 员工信息,如果查询失败则返回 null
-
getEmployeeByUserId
根据用户ID获取员工信息(支持本地和Feign查询复用) -
getEmployeeByMobile
根据手机号获取员工信息 -
getNewUserIdByUsername
已过时。使用getSysUserByUsername(String)替代,直接获取完整的SysUser记录根据用户名获取SysUser的UUID类型的ID(NewUserId) 用于外部系统JWT解析后获取本地用户ID- 参数:
username- 用户名- 返回:
- SysUser的UUID类型的ID,如果查询失败则返回 null
-
getSysUserByUsername
根据用户名查询SysUser记录(从本系统sys_user表) 用于JWT解析后获取本地用户信息,确保用户信息以本系统为准- 参数:
username- 用户名- 返回:
- SysUserBasicDTO,如果查询失败则返回 null
-
getCurrentOrg
获取当前用户所属的组织信息- 返回:
- 组织信息,如果未登录或查询失败则返回 null
-
getOrg
获取指定ID的组织信息- 参数:
orgId- 组织ID- 返回:
- 组织信息,如果查询失败则返回 null
-
getOrgByCode
根据组织编码查询组织信息- 参数:
code- 组织编码- 返回:
- 组织信息,如果查询失败则返回 null
-
getEmployeeOrgs
获取员工的所有部门信息(通过 sys_employee_org 关联表查询)- 参数:
employeeId- 员工ID- 返回:
- 部门信息列表,如果查询失败则返回 null
-
getCurrentOu
获取当前用户所属的公司信息- 返回:
- 公司信息列表,如果未登录或查询失败则返回 null
-
getAllOu
获取所有公司信息- 返回:
- 公司信息列表,如果查询失败则返回 null
-
clearCache
public void clearCache()清除缓存 -
clearUserCache
清除指定用户的缓存- 参数:
username- 用户名
-
getSysUserByUsername(String)替代,直接获取完整的SysUser记录