|
@@ -21,13 +21,11 @@ import com.zanxiang.sdk.service.UserTokenService;
|
|
|
import com.zanxiang.sdk.util.RedisUtil;
|
|
|
import com.zanxiang.sdk.util.SignUtil;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
-import org.apache.commons.collections4.CollectionUtils;
|
|
|
import org.apache.logging.log4j.util.Strings;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
import java.time.LocalDateTime;
|
|
|
-import java.util.List;
|
|
|
import java.util.Objects;
|
|
|
|
|
|
/**
|
|
@@ -182,24 +180,25 @@ public class UserTokenServiceImpl extends ServiceImpl<UserTokenMapper, UserToken
|
|
|
/**
|
|
|
* 删除用户token
|
|
|
*
|
|
|
- * @param userId : 用户id
|
|
|
+ * @param userId : 用户id
|
|
|
+ * @param deviceType : 设备类型
|
|
|
*/
|
|
|
@Override
|
|
|
- public void deleteUserToken(Long userId) {
|
|
|
- List<UserToken> userTokenList = super.list(new LambdaQueryWrapper<UserToken>()
|
|
|
- .eq(UserToken::getUserId, userId));
|
|
|
- if (CollectionUtils.isEmpty(userTokenList)) {
|
|
|
+ public void deleteUserToken(Long userId, Integer deviceType) {
|
|
|
+ UserToken userToken = super.getOne(new LambdaQueryWrapper<UserToken>()
|
|
|
+ .eq(UserToken::getUserId, userId)
|
|
|
+ .eq(UserToken::getDeviceType, deviceType)
|
|
|
+ );
|
|
|
+ if (userToken == null) {
|
|
|
return;
|
|
|
}
|
|
|
- userTokenList.forEach(userToken -> {
|
|
|
- //根据主键删除数据库
|
|
|
- super.removeById(userToken.getId());
|
|
|
- //删除缓存
|
|
|
- String userTokenKey = this.getUserTokenKey(userId, userToken.getDeviceType());
|
|
|
- redisUtil.deleteCache(userTokenKey);
|
|
|
- String tokenInfoKey = this.getTokenInfoKey(userToken.getToken(), userToken.getDeviceType());
|
|
|
- redisUtil.deleteCache(tokenInfoKey);
|
|
|
- });
|
|
|
+ //根据主键删除数据库
|
|
|
+ super.removeById(userToken.getId());
|
|
|
+ //删除缓存
|
|
|
+ String userTokenKey = this.getUserTokenKey(userId, userToken.getDeviceType());
|
|
|
+ redisUtil.deleteCache(userTokenKey);
|
|
|
+ String tokenInfoKey = this.getTokenInfoKey(userToken.getToken(), userToken.getDeviceType());
|
|
|
+ redisUtil.deleteCache(tokenInfoKey);
|
|
|
}
|
|
|
|
|
|
/**
|