mirror of https://gitee.com/xiaonuobase/snowy
查询某个用户的所有令牌应该过滤掉过期的令牌
parent
543373d58a
commit
9d90ba4467
|
@ -107,10 +107,10 @@ public class AuthSessionServiceImpl implements AuthSessionService {
|
||||||
Page<AuthSessionPageResult> defaultPage = CommonPageRequest.defaultPage();
|
Page<AuthSessionPageResult> defaultPage = CommonPageRequest.defaultPage();
|
||||||
long current = defaultPage.getCurrent();
|
long current = defaultPage.getCurrent();
|
||||||
int total = StpUtil.searchSessionId("", -1, Convert.toInt(defaultPage.getSize()), true).size();
|
int total = StpUtil.searchSessionId("", -1, Convert.toInt(defaultPage.getSize()), true).size();
|
||||||
if(ObjectUtil.isNotEmpty(total)) {
|
if (ObjectUtil.isNotEmpty(total)) {
|
||||||
defaultPage = new Page<>(current, defaultPage.getSize(), total);
|
defaultPage = new Page<>(current, defaultPage.getSize(), total);
|
||||||
String keyword = "";
|
String keyword = "";
|
||||||
if(ObjectUtil.isNotEmpty(authSessionPageParam.getUserId())) {
|
if (ObjectUtil.isNotEmpty(authSessionPageParam.getUserId())) {
|
||||||
keyword = authSessionPageParam.getUserId();
|
keyword = authSessionPageParam.getUserId();
|
||||||
}
|
}
|
||||||
List<String> userIdList = StpUtil.searchSessionId(keyword,
|
List<String> userIdList = StpUtil.searchSessionId(keyword,
|
||||||
|
@ -124,31 +124,37 @@ public class AuthSessionServiceImpl implements AuthSessionService {
|
||||||
authSessionPageResult.setSessionId(saSession.getId());
|
authSessionPageResult.setSessionId(saSession.getId());
|
||||||
authSessionPageResult.setSessionCreateTime(DateTime.of(saSession.getCreateTime()));
|
authSessionPageResult.setSessionCreateTime(DateTime.of(saSession.getCreateTime()));
|
||||||
long sessionTimeOut = saSession.getTimeout();
|
long sessionTimeOut = saSession.getTimeout();
|
||||||
if(sessionTimeOut == -1) {
|
if (sessionTimeOut == -1) {
|
||||||
authSessionPageResult.setSessionTimeout("永久");
|
authSessionPageResult.setSessionTimeout("永久");
|
||||||
} else {
|
} else {
|
||||||
authSessionPageResult.setSessionTimeout(CommonTimeFormatUtil.formatSeconds(saSession.getTimeout()));
|
authSessionPageResult.setSessionTimeout(CommonTimeFormatUtil.formatSeconds(saSession.getTimeout()));
|
||||||
}
|
}
|
||||||
List<AuthSessionPageResult.TokenSignInfo> tokenInfoList = saSession.getTokenSignList().stream().map(tokenSign -> {
|
List<AuthSessionPageResult.TokenSignInfo> tokenInfoList = saSession.getTokenSignList().stream()
|
||||||
AuthSessionPageResult.TokenSignInfo tokenSignInfo = new AuthSessionPageResult.TokenSignInfo();
|
.filter(tokenSign -> {
|
||||||
tokenSignInfo.setTokenValue(tokenSign.getValue());
|
long tokenTimeout = SaManager.getSaTokenDao().getTimeout(StpUtil.stpLogic.splicingKeyTokenValue(tokenSign.getValue()));
|
||||||
tokenSignInfo.setTokenDevice(tokenSign.getDevice());
|
return tokenTimeout != -2; // 过滤掉tokenTimeout为-2的元素
|
||||||
long tokenTimeout = SaManager.getSaTokenDao().getTimeout(StpUtil.stpLogic.splicingKeyTokenValue(tokenSign.getValue()));
|
})
|
||||||
long tokenTimeoutConfig = StpUtil.stpLogic.getConfig().getTimeout();
|
.map(tokenSign -> {
|
||||||
if(tokenTimeout == -1) {
|
AuthSessionPageResult.TokenSignInfo tokenSignInfo = new AuthSessionPageResult.TokenSignInfo();
|
||||||
tokenSignInfo.setTokenTimeout("永久");
|
tokenSignInfo.setTokenValue(tokenSign.getValue());
|
||||||
tokenSignInfo.setTokenTimeoutPercent(100d);
|
tokenSignInfo.setTokenDevice(tokenSign.getDevice());
|
||||||
} else {
|
long tokenTimeout = SaManager.getSaTokenDao().getTimeout(StpUtil.stpLogic.splicingKeyTokenValue(tokenSign.getValue()));
|
||||||
tokenSignInfo.setTokenTimeout(CommonTimeFormatUtil.formatSeconds(SaManager.getSaTokenDao()
|
long tokenTimeoutConfig = StpUtil.stpLogic.getConfig().getTimeout();
|
||||||
.getTimeout(StpUtil.stpLogic.splicingKeyTokenValue(tokenSign.getValue()))));
|
if (tokenTimeout == -1) {
|
||||||
if(tokenTimeoutConfig == -1) {
|
tokenSignInfo.setTokenTimeout("永久");
|
||||||
tokenSignInfo.setTokenTimeoutPercent(0d);
|
tokenSignInfo.setTokenTimeoutPercent(100d);
|
||||||
} else {
|
} else {
|
||||||
tokenSignInfo.setTokenTimeoutPercent(NumberUtil.div(tokenTimeout, tokenTimeoutConfig));
|
tokenSignInfo.setTokenTimeout(CommonTimeFormatUtil.formatSeconds(SaManager.getSaTokenDao()
|
||||||
}
|
.getTimeout(StpUtil.stpLogic.splicingKeyTokenValue(tokenSign.getValue()))));
|
||||||
}
|
if (tokenTimeoutConfig == -1) {
|
||||||
return tokenSignInfo;
|
tokenSignInfo.setTokenTimeoutPercent(0d);
|
||||||
}).collect(Collectors.toList());
|
} else {
|
||||||
|
tokenSignInfo.setTokenTimeoutPercent(NumberUtil.div(tokenTimeout, tokenTimeoutConfig));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return tokenSignInfo;
|
||||||
|
})
|
||||||
|
.collect(Collectors.toList());
|
||||||
authSessionPageResult.setTokenCount(tokenInfoList.size());
|
authSessionPageResult.setTokenCount(tokenInfoList.size());
|
||||||
authSessionPageResult.setTokenSignList(tokenInfoList);
|
authSessionPageResult.setTokenSignList(tokenInfoList);
|
||||||
return authSessionPageResult;
|
return authSessionPageResult;
|
||||||
|
@ -164,10 +170,10 @@ public class AuthSessionServiceImpl implements AuthSessionService {
|
||||||
Page<AuthSessionPageResult> defaultPage = CommonPageRequest.defaultPage();
|
Page<AuthSessionPageResult> defaultPage = CommonPageRequest.defaultPage();
|
||||||
long current = defaultPage.getCurrent();
|
long current = defaultPage.getCurrent();
|
||||||
int total = StpClientUtil.searchSessionId("", -1, Convert.toInt(defaultPage.getSize()), true).size();
|
int total = StpClientUtil.searchSessionId("", -1, Convert.toInt(defaultPage.getSize()), true).size();
|
||||||
if(ObjectUtil.isNotEmpty(total)) {
|
if (ObjectUtil.isNotEmpty(total)) {
|
||||||
defaultPage = new Page<>(current, defaultPage.getSize(), total);
|
defaultPage = new Page<>(current, defaultPage.getSize(), total);
|
||||||
String keyword = "";
|
String keyword = "";
|
||||||
if(ObjectUtil.isNotEmpty(authSessionPageParam.getUserId())) {
|
if (ObjectUtil.isNotEmpty(authSessionPageParam.getUserId())) {
|
||||||
keyword = authSessionPageParam.getUserId();
|
keyword = authSessionPageParam.getUserId();
|
||||||
}
|
}
|
||||||
List<String> userIdList = StpClientUtil.searchSessionId(keyword,
|
List<String> userIdList = StpClientUtil.searchSessionId(keyword,
|
||||||
|
@ -181,24 +187,27 @@ public class AuthSessionServiceImpl implements AuthSessionService {
|
||||||
authSessionPageResult.setSessionId(saSession.getId());
|
authSessionPageResult.setSessionId(saSession.getId());
|
||||||
authSessionPageResult.setSessionCreateTime(DateTime.of(saSession.getCreateTime()));
|
authSessionPageResult.setSessionCreateTime(DateTime.of(saSession.getCreateTime()));
|
||||||
long sessionTimeOut = saSession.getTimeout();
|
long sessionTimeOut = saSession.getTimeout();
|
||||||
if(sessionTimeOut == -1) {
|
if (sessionTimeOut == -1) {
|
||||||
authSessionPageResult.setSessionTimeout("永久");
|
authSessionPageResult.setSessionTimeout("永久");
|
||||||
} else {
|
} else {
|
||||||
authSessionPageResult.setSessionTimeout(CommonTimeFormatUtil.formatSeconds(saSession.getTimeout()));
|
authSessionPageResult.setSessionTimeout(CommonTimeFormatUtil.formatSeconds(saSession.getTimeout()));
|
||||||
}
|
}
|
||||||
List<AuthSessionPageResult.TokenSignInfo> tokenInfoList = saSession.getTokenSignList().stream().map(tokenSign -> {
|
List<AuthSessionPageResult.TokenSignInfo> tokenInfoList = saSession.getTokenSignList().stream().filter(tokenSign -> {
|
||||||
|
long tokenTimeout = SaManager.getSaTokenDao().getTimeout(StpUtil.stpLogic.splicingKeyTokenValue(tokenSign.getValue()));
|
||||||
|
return tokenTimeout != -2; // 过滤掉tokenTimeout为-2的元素
|
||||||
|
}).map(tokenSign -> {
|
||||||
AuthSessionPageResult.TokenSignInfo tokenSignInfo = new AuthSessionPageResult.TokenSignInfo();
|
AuthSessionPageResult.TokenSignInfo tokenSignInfo = new AuthSessionPageResult.TokenSignInfo();
|
||||||
tokenSignInfo.setTokenValue(tokenSign.getValue());
|
tokenSignInfo.setTokenValue(tokenSign.getValue());
|
||||||
tokenSignInfo.setTokenDevice(tokenSign.getDevice());
|
tokenSignInfo.setTokenDevice(tokenSign.getDevice());
|
||||||
long tokenTimeout = SaManager.getSaTokenDao().getTimeout(StpClientUtil.stpLogic.splicingKeyTokenValue(tokenSign.getValue()));
|
long tokenTimeout = SaManager.getSaTokenDao().getTimeout(StpClientUtil.stpLogic.splicingKeyTokenValue(tokenSign.getValue()));
|
||||||
long tokenTimeoutConfig = StpClientUtil.stpLogic.getConfig().getTimeout();
|
long tokenTimeoutConfig = StpClientUtil.stpLogic.getConfig().getTimeout();
|
||||||
if(tokenTimeout == -1) {
|
if (tokenTimeout == -1) {
|
||||||
tokenSignInfo.setTokenTimeout("永久");
|
tokenSignInfo.setTokenTimeout("永久");
|
||||||
tokenSignInfo.setTokenTimeoutPercent(100d);
|
tokenSignInfo.setTokenTimeoutPercent(100d);
|
||||||
} else {
|
} else {
|
||||||
tokenSignInfo.setTokenTimeout(CommonTimeFormatUtil.formatSeconds(SaManager.getSaTokenDao()
|
tokenSignInfo.setTokenTimeout(CommonTimeFormatUtil.formatSeconds(SaManager.getSaTokenDao()
|
||||||
.getTimeout(StpClientUtil.stpLogic.splicingKeyTokenValue(tokenSign.getValue()))));
|
.getTimeout(StpClientUtil.stpLogic.splicingKeyTokenValue(tokenSign.getValue()))));
|
||||||
if(tokenTimeoutConfig == -1) {
|
if (tokenTimeoutConfig == -1) {
|
||||||
tokenSignInfo.setTokenTimeoutPercent(0d);
|
tokenSignInfo.setTokenTimeoutPercent(0d);
|
||||||
} else {
|
} else {
|
||||||
tokenSignInfo.setTokenTimeoutPercent(NumberUtil.div(tokenTimeout, tokenTimeoutConfig));
|
tokenSignInfo.setTokenTimeoutPercent(NumberUtil.div(tokenTimeout, tokenTimeoutConfig));
|
||||||
|
|
Loading…
Reference in New Issue