|
|
@@ -89,7 +89,7 @@ public class LifeUserService extends ServiceImpl<LifeUserGatewayMapper, LifeUser
|
|
|
// userVo.setToken(JWTUtils1.createToken(tokenMap));
|
|
|
String token = getToken(phoneNum, userVo.getUserName(), tokenMap);
|
|
|
userVo.setToken(token);
|
|
|
- baseRedisService.setString("user_" + phoneNum, token);
|
|
|
+ addLifeUserSessionToken(phoneNum, token);
|
|
|
// 二手平台登录log,同一个macip登录多账号记录
|
|
|
addLifeUserLogInfo(user2, macIp);
|
|
|
|
|
|
@@ -107,7 +107,7 @@ public class LifeUserService extends ServiceImpl<LifeUserGatewayMapper, LifeUser
|
|
|
tokenMap.put("userType", "user");
|
|
|
String token = getToken(phoneNum, user.getUserName(), tokenMap);
|
|
|
userVo.setToken(token);
|
|
|
- baseRedisService.setString("user_" + phoneNum, token);
|
|
|
+ addLifeUserSessionToken(phoneNum, token);
|
|
|
// 二手平台登录log,同一个macip登录多账号记录
|
|
|
addLifeUserLogInfo(user, macIp);
|
|
|
|
|
|
@@ -141,6 +141,20 @@ public class LifeUserService extends ServiceImpl<LifeUserGatewayMapper, LifeUser
|
|
|
return token;
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * C 端多设备:token 放入 Redis Set;将旧版单 key 迁入 Set 后删除,避免旧 token 长期有效。
|
|
|
+ */
|
|
|
+ private void addLifeUserSessionToken(String phone, String token) {
|
|
|
+ String legacyKey = "user_" + phone;
|
|
|
+ String sessionSetKey = "user_sessions:" + phone;
|
|
|
+ String oldSingle = baseRedisService.getString(legacyKey);
|
|
|
+ if (oldSingle != null && !oldSingle.isEmpty()) {
|
|
|
+ baseRedisService.setSetList(sessionSetKey, oldSingle);
|
|
|
+ }
|
|
|
+ baseRedisService.delete(legacyKey);
|
|
|
+ baseRedisService.setSetList(sessionSetKey, token);
|
|
|
+ }
|
|
|
+
|
|
|
public LifeUser getUserByPhone(String phoneNum) {
|
|
|
LambdaQueryWrapper<LifeUser> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
lambdaQueryWrapper.eq(LifeUser::getUserPhone, phoneNum);
|