|
@@ -5,7 +5,9 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
|
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
|
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.zanxiang.game.module.base.pojo.enums.BanStatusEnum;
|
|
import com.zanxiang.game.module.base.pojo.enums.BanStatusEnum;
|
|
|
|
+import com.zanxiang.game.module.base.pojo.enums.GameCategoryEnum;
|
|
import com.zanxiang.game.module.base.util.DateUtils;
|
|
import com.zanxiang.game.module.base.util.DateUtils;
|
|
|
|
+import com.zanxiang.game.module.mybatis.entity.Game;
|
|
import com.zanxiang.game.module.mybatis.entity.GameExt;
|
|
import com.zanxiang.game.module.mybatis.entity.GameExt;
|
|
import com.zanxiang.game.module.mybatis.entity.User;
|
|
import com.zanxiang.game.module.mybatis.entity.User;
|
|
import com.zanxiang.game.module.mybatis.entity.UserToken;
|
|
import com.zanxiang.game.module.mybatis.entity.UserToken;
|
|
@@ -18,6 +20,7 @@ import com.zanxiang.game.module.sdk.pojo.dto.UserTokenDTO;
|
|
import com.zanxiang.game.module.sdk.pojo.param.UserData;
|
|
import com.zanxiang.game.module.sdk.pojo.param.UserData;
|
|
import com.zanxiang.game.module.sdk.pojo.vo.CpTokenCheckVO;
|
|
import com.zanxiang.game.module.sdk.pojo.vo.CpTokenCheckVO;
|
|
import com.zanxiang.game.module.sdk.service.*;
|
|
import com.zanxiang.game.module.sdk.service.*;
|
|
|
|
+import com.zanxiang.game.module.sdk.service.api.WxApiService;
|
|
import com.zanxiang.game.module.sdk.util.RedisUtil;
|
|
import com.zanxiang.game.module.sdk.util.RedisUtil;
|
|
import com.zanxiang.game.module.sdk.util.SignUtil;
|
|
import com.zanxiang.game.module.sdk.util.SignUtil;
|
|
import com.zanxiang.module.redis.service.IDistributedLockComponent;
|
|
import com.zanxiang.module.redis.service.IDistributedLockComponent;
|
|
@@ -54,6 +57,15 @@ public class UserTokenServiceImpl extends ServiceImpl<UserTokenMapper, UserToken
|
|
@Autowired
|
|
@Autowired
|
|
private RedisUtil<UserToken> redisUtil;
|
|
private RedisUtil<UserToken> redisUtil;
|
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
+ private WxApiService wxApiService;
|
|
|
|
+
|
|
|
|
+ @Autowired
|
|
|
|
+ private IGameAppletService gameAppletService;
|
|
|
|
+
|
|
|
|
+ @Autowired
|
|
|
|
+ private IGameService gameService;
|
|
|
|
+
|
|
@Autowired
|
|
@Autowired
|
|
private IGameExtService gameExtService;
|
|
private IGameExtService gameExtService;
|
|
|
|
|
|
@@ -212,6 +224,14 @@ public class UserTokenServiceImpl extends ServiceImpl<UserTokenMapper, UserToken
|
|
if (user == null || Objects.equals(BanStatusEnum.BAN_STATUS.getStatus(), user.getStatus())) {
|
|
if (user == null || Objects.equals(BanStatusEnum.BAN_STATUS.getStatus(), user.getStatus())) {
|
|
return Boolean.FALSE;
|
|
return Boolean.FALSE;
|
|
}
|
|
}
|
|
|
|
+ //小程序监测sessionKey
|
|
|
|
+ if (Strings.isNotBlank(user.getSessionKey())) {
|
|
|
|
+ Game game = gameService.getById(userData.getGameId());
|
|
|
|
+ if (Objects.equals(game.getCategory(), GameCategoryEnum.CATEGORY_WX_APPLET.getId())
|
|
|
|
+ && wxApiService.checkSessionKey(userData.getGameId(), user.getOpenId(), user.getSessionKey())) {
|
|
|
|
+ return Boolean.FALSE;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
//token检测
|
|
//token检测
|
|
Long expireTime = userData.getExpireTime();
|
|
Long expireTime = userData.getExpireTime();
|
|
if (expireTime == null) {
|
|
if (expireTime == null) {
|