月球大数据地理空间分析展示平台-【后端】-月球后台服务
13693261870
2023-10-08 5d2d88a8ed4987f178f38f2162b9d25ed23c8cb7
src/main/java/com/moon/server/service/sys/TokenService.java
@@ -9,9 +9,9 @@
import com.moon.server.helper.WebHelper;
import com.moon.server.mapper.sys.TokenMapper;
import com.moon.server.service.all.RedisService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.Date;
@@ -25,16 +25,16 @@
 */
@Service
public class TokenService implements TokenMapper {
    @Autowired
    @Resource
    TokenMapper tokenMapper;
    @Autowired
    @Resource
    UserService usersService;
    @Autowired
    @Resource
    LoginService loginService;
    @Autowired
    @Resource
    RedisService redisService;
    @Override
@@ -156,20 +156,9 @@
            return false;
        }
        // redis
        String tokenKey = RedisCacheKey.signTokenKey(token);
        if (redisService.hasKey(tokenKey)) {
            return true;
        }
        TokenEntity te = getEntityByToken(token);
        // db
        TokenEntity te = selectOneByToken(token);
        if (null != te) {
            redisService.put(tokenKey, te, te.getDuration(), TimeUnit.MINUTES);
            return true;
        }
        return false;
        return null != te;
    }
    /**
@@ -177,7 +166,7 @@
     */
    public Boolean logout(String token, HttpServletRequest req, HttpServletResponse res) {
        TokenEntity te = getEntityByToken(token);
        if (te == null) {
        if (null == te) {
            return false;
        }
@@ -218,10 +207,6 @@
     * 根据令牌获取实体
     */
    public TokenEntity getEntityByToken(String token) {
        if (StringHelper.isNull(token)) {
            return null;
        }
        String tokenKey = RedisCacheKey.signTokenKey(token);
        // redis
@@ -233,7 +218,10 @@
        // db
        TokenEntity te = selectOneByToken(token);
        if (null != te) {
            redisService.put(tokenKey, te, te.getDuration(), TimeUnit.MINUTES);
            long min = StringHelper.getMinuteDifference(te.getExpire());
            if (min > 0) {
                redisService.put(tokenKey, te, min, TimeUnit.MINUTES);
            }
        }
        return te;
@@ -281,9 +269,9 @@
        // db
        UserEntity ue = usersService.selectByToken(token);
//        if (null != ue) {
//            getEntityByToken(token);
//        }
        if (null != ue) {
            getEntityByToken(token);
        }
        return ue;
    }