/**
* 获取用户信息和角色列表
*
* @param userId
* */
@GetMapping(value = {"/","/{userId}"})
public RestResult getInfo(@PathVariable(value = "userId",required = false) Long userId){
RestResult ajax = RestResult.success();
ajax.put("roles",sysRoleService.selectRoleAll());
if(StringUtils.isNotNull(userId)){
ajax.put(RestResult.DATA_TAG,sysUserService.selectUserById(userId));
ajax.put("roleIds",sysRoleService.selectRoleListByUserId(userId));
}
return ajax;
}
/**
* 通过用户ID查找用户
* @param userId 用户ID
* return 用户对象信息
*
* */
@Override
public SysUser selectUserById(Long userId) {
SysUser sysUser = new SysUser();
sysUser.setUserId(userId);
sysUser.setDelFlag("0");
return sysUserRepository.findOne(Example.of(sysUser)).get();
}
@Override
public List<Long> selectRoleListByUserId(Long userId) {
return sysRoleRepository.selectRoleIdsByUserId(userId);
}
public interface SysRoleRepository extends JpaRepository<SysRole,Long> {
final String JOIN_USER_ROLE = " left join sys_user_role ur on ur.role_id = r.role_id ";
final String JOIN_USER = " left join sys_user u on u.user_id = ur.user_id ";
@Query(value = " select r.role_id from sys_role r "+JOIN_USER_ROLE+JOIN_USER
+ " where r.del_flag = '0' and u.user_id = :userId ", nativeQuery = true)
List<Long> selectRoleIdsByUserId(@Param("userId") Long userId);
}
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号