提供获取LoginUser基于loginId和deviceType方法
This commit is contained in:
parent
5e51077347
commit
f4cd1787d7
@ -1,11 +1,13 @@
|
||||
package org.dromara.common.satoken.utils;
|
||||
|
||||
import cn.dev33.satoken.session.SaSession;
|
||||
import cn.dev33.satoken.stp.SaLoginModel;
|
||||
import cn.dev33.satoken.stp.StpUtil;
|
||||
import cn.dev33.satoken.stp.parameter.SaLoginParameter;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.convert.Convert;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import lombok.AccessLevel;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.dromara.common.core.constant.SystemConstants;
|
||||
@ -84,6 +86,27 @@ public class LoginHelper {
|
||||
return (T) session.get(LOGIN_USER_KEY);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取LoginUser基于loginId和deviceType
|
||||
*/
|
||||
public static <T extends LoginUser> T getLoginUserByLoginIdAndDeviceType(Object loginId,String deviceType) {
|
||||
String value = StpUtil.getTokenValueByLoginId(loginId,deviceType);
|
||||
if (StrUtil.isBlank(value)){
|
||||
return null;
|
||||
}
|
||||
SaSession session = StpUtil.getTokenSessionByToken(value);
|
||||
if (ObjectUtil.isNull(session)) {
|
||||
return null;
|
||||
}
|
||||
return (T) session.get(LOGIN_USER_KEY);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取LoginUser基于loginId
|
||||
*/
|
||||
public static <T extends LoginUser> T getLoginUserByLoginId(Object loginId) {
|
||||
return getLoginUserByLoginIdAndDeviceType(loginId, null);
|
||||
}
|
||||
/**
|
||||
* 获取用户id
|
||||
*/
|
||||
|
Loading…
x
Reference in New Issue
Block a user