单点登陆
parent
86f663e55f
commit
8926ac4236
|
@ -72,6 +72,9 @@ public class Constants {
|
||||||
//专项数量前缀
|
//专项数量前缀
|
||||||
public static String SPECIAL_NUM_PREFIX= "SpecialNum_";
|
public static String SPECIAL_NUM_PREFIX= "SpecialNum_";
|
||||||
|
|
||||||
|
//token手机号前缀
|
||||||
|
public static String PHONE_PREFIX= "loginPhone_";
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -98,6 +98,13 @@ public class TdSysUserServiceImpl extends ServiceImpl<TdSysUserMapper, TdSysUser
|
||||||
throw new BusinessException("用户注册异常");
|
throw new BusinessException("用户注册异常");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
//清除上一个人登陆的token信息
|
||||||
|
String oldToken = redisCache.getCacheObject(Constants.PHONE_PREFIX + tdSysUser.getPhone());
|
||||||
|
if (StrUtil.isNotBlank(oldToken)){
|
||||||
|
redisCache.deleteObject(Constants.PHONE_PREFIX + tdSysUser.getPhone());
|
||||||
|
redisCache.deleteObject(oldToken);
|
||||||
|
}
|
||||||
|
|
||||||
String token = UUID.randomUUID().toString();
|
String token = UUID.randomUUID().toString();
|
||||||
LoginUserVo loginUserVo = new LoginUserVo();
|
LoginUserVo loginUserVo = new LoginUserVo();
|
||||||
BeanUtils.copyProperties(tdSysUser, loginUserVo);
|
BeanUtils.copyProperties(tdSysUser, loginUserVo);
|
||||||
|
@ -105,6 +112,7 @@ public class TdSysUserServiceImpl extends ServiceImpl<TdSysUserMapper, TdSysUser
|
||||||
loginUserVo.setDays(DateTimeUtil.getIntervalDays(loginUserVo.getCreateTime(),LocalDateTime.now()) + 1);
|
loginUserVo.setDays(DateTimeUtil.getIntervalDays(loginUserVo.getCreateTime(),LocalDateTime.now()) + 1);
|
||||||
// 存入redis
|
// 存入redis
|
||||||
redisCache.setCacheObject(token, tdSysUser, tokenExpireTime, TimeUnit.DAYS);
|
redisCache.setCacheObject(token, tdSysUser, tokenExpireTime, TimeUnit.DAYS);
|
||||||
|
redisCache.setCacheObject(Constants.PHONE_PREFIX + tdSysUser.getPhone(), token, tokenExpireTime, TimeUnit.DAYS);
|
||||||
return loginUserVo;
|
return loginUserVo;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -112,6 +120,11 @@ public class TdSysUserServiceImpl extends ServiceImpl<TdSysUserMapper, TdSysUser
|
||||||
public Boolean loginOut() {
|
public Boolean loginOut() {
|
||||||
String token = TokenThreadUtil.getToken();
|
String token = TokenThreadUtil.getToken();
|
||||||
if (StrUtil.isNotBlank(token)) {
|
if (StrUtil.isNotBlank(token)) {
|
||||||
|
TdSysUser tdSysUser = redisCache.getCacheObject(token);
|
||||||
|
if (Objects.nonNull(tdSysUser) && Objects.nonNull(tdSysUser.getPhone())){
|
||||||
|
redisCache.deleteObject(Constants.PHONE_PREFIX + tdSysUser.getPhone());
|
||||||
|
}
|
||||||
|
|
||||||
redisCache.deleteObject(token);
|
redisCache.deleteObject(token);
|
||||||
}
|
}
|
||||||
return Boolean.TRUE;
|
return Boolean.TRUE;
|
||||||
|
|
Loading…
Reference in New Issue