管道基础大数据平台系统开发-【后端】-Server
1
13693261870
2022-10-25 4ddfd502023662f6d25c4be416d88751e206d91a
src/main/java/com/lf/server/service/sys/TokenService.java
@@ -8,6 +8,7 @@
import com.lf.server.helper.StringHelper;
import com.lf.server.helper.WebHelper;
import com.lf.server.mapper.sys.TokenMapper;
import com.lf.server.service.all.PermsService;
import com.lf.server.service.all.RedisService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -27,9 +28,6 @@
@Service
public class TokenService implements TokenMapper {
    @Autowired
    public RedisService redisService;
    @Autowired
    TokenMapper tokenMapper;
    @Autowired
@@ -37,6 +35,12 @@
    @Autowired
    LoginService loginService;
    @Autowired
    public RedisService redisService;
    @Autowired
    public  PermsService permsService;
    @Override
    public Integer selectCount(String name, Integer type) {
@@ -145,6 +149,12 @@
        // 清除Cookie
        WebHelper.deleteCookies(req, res);
        // 获取当前用户
        UserEntity ue = getCurrentUser(req);
        if (ue == null) {
            return false;
        }
        // 清除缓存
        String tokenKey = RedisCacheKey.signTokenKey(token);
        if (redisService.hasKey(tokenKey)) {
@@ -153,12 +163,6 @@
        String userKey = RedisCacheKey.signUserKey(te.getToken());
        if (redisService.hasKey(userKey)) {
            redisService.delete(userKey);
        }
        // 获取当前用户
        UserEntity ue = getCurrentUser(req);
        if (ue == null) {
            return false;
        }
        // db,设置令牌过期
@@ -187,7 +191,7 @@
        // redis
        Object obj = redisService.get(tokenKey);
        if (obj != null && obj instanceof TokenEntity) {
        if (obj instanceof TokenEntity) {
            return (TokenEntity) obj;
        }
@@ -229,7 +233,7 @@
        // redis
        Object obj = redisService.get(userKey);
        if (obj != null && obj instanceof UserEntity) {
        if (obj instanceof UserEntity) {
            return (UserEntity) obj;
        }
@@ -254,6 +258,18 @@
        int count = objCount == null ? 1 : (int) objCount + 1;
        redisService.put(key, count, SettingData.PWD_ERR_TIME, TimeUnit.MINUTES);
        // 记录日志
        HttpServletRequest req = WebHelper.getRequest();
        LoginEntity le = loginService.getNewLogin(ue.getId(), 1, 1, 0, req);
        le.setDescr("密码不正确");
        loginService.insertLogin(le);
        if (count >= SettingData.PWD_ERR_COUNT) {
            String token = WebHelper.getToken(req);
            HttpServletResponse res = WebHelper.getResponse();
            logout(token, req, res);
        }
    }
    /**