add
This commit is contained in:
@ -168,7 +168,7 @@ public class SysLoginServiceImpl implements SysLoginService {
|
||||
String os = userAgent.getOs().getName();
|
||||
|
||||
if (!authConfigApiService.checkAllowBothOnline()) {
|
||||
redisService.set(SecurityConstant.LOGGED_USER_REDIS_KEY + username, deviceSn, TokenUtil.expireTime * 3600);
|
||||
redisService.set(SecurityConstant.LOGGED_USER_REDIS_KEY + username, deviceSn, TokenUtil.TOKEN_EXPIRE_HOUR_TIME * 3600);
|
||||
}
|
||||
OnlineUser onlineUser = new OnlineUser(deviceSn, username, nickname, ip, address, browser, os, new Date());
|
||||
onlineUserService.insert(onlineUser);
|
||||
|
@ -43,23 +43,24 @@ public class SysUserDetailsServiceImpl implements UserDetailsService, SysUserDet
|
||||
@Override
|
||||
public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
|
||||
SecurityUser user = redisService.getObject(SecurityConstant.USER_DETAILS_REDIS_KEY + username, SecurityUser.class);
|
||||
return Objects.isNull(user) ? null : new LoginUser(user.getDeviceSn(), user.getUserId(), user.getDeptId(), user.getUsername(), user.getNickname(), user.getRoles(), user.getRoleKeys(), user.getPermissions());
|
||||
return Objects.isNull(user) ? null : new LoginUser(user.getUserId(), user.getDeptId(), user.getUsername(), user.getNickname(), user.getRoles(), user.getRoleKeys(), user.getPermissions());
|
||||
}
|
||||
|
||||
|
||||
private UserDetails createUserDetails(SysUser user, String deviceSn) {
|
||||
private UserDetails createUserDetails(SysUser user) {
|
||||
Set<String> perms = sysMenuService.selectPermsByUserId(user.getUserId());
|
||||
List<RoleDto> roles = sysUserRoleService.selectRoleDtoByUserId(user.getUserId(), BaseEnum.NORMAL.getCode());
|
||||
List<String> roleKeys = roles.stream().map(RoleDto::getRoleKey).collect(Collectors.toList());
|
||||
return new LoginUser(deviceSn, user.getUserId(), user.getDeptId(), user.getUsername(), user.getNickname(), roles, roleKeys, perms);
|
||||
return new LoginUser(user.getUserId(), user.getDeptId(), user.getUsername(), user.getNickname(), roles, roleKeys, perms);
|
||||
}
|
||||
|
||||
@Override
|
||||
public UserDetails toCache(String username, String deviceSn) {
|
||||
SysUser user = sysUserService.selectByUsername(username);
|
||||
UserDetails details = createUserDetails(user, deviceSn);
|
||||
UserDetails details = createUserDetails(user);
|
||||
SecurityUser securityUser = BeanUtil.copyProperties(details, SecurityUser.class);
|
||||
redisService.set(SecurityConstant.USER_DETAILS_REDIS_KEY + username, securityUser, TokenUtil.expireTime * 3600);
|
||||
securityUser.setDeviceSn(deviceSn);
|
||||
redisService.set(SecurityConstant.USER_DETAILS_REDIS_KEY + username, securityUser, TokenUtil.TOKEN_EXPIRE_HOUR_TIME * 3600);
|
||||
return details;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user