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