rk
16 小时以前 33caf2bb79bb3c561916c91ae386ec772411e2e8
server/services/src/main/java/com/doumee/config/jwt/JwtTokenUtil.java
@@ -27,9 +27,16 @@
    public static final String HEADER_KEY = "token";
    public static final String SHOP_HEADER_KEY = "shopToken";
    public static final String MEMBER_ID = "MEMBER_ID";
    public static final String MEMBER_INFO = "MEMBER_INFO";
    public static final String SHOP_ID = "SHOP_ID";
    public static final String DRIVER_ID = "DRIVER_ID";
    @Resource
    private RedisTemplate<String,Object> redisTemplate;
@@ -78,12 +85,29 @@
    public static String generateTokenForRedis(Integer userId, Integer userType, String userInfo, RedisTemplate<String,Object> redisTemplate) {
        // 删除该用户之前登录的token
        String userTokenMappingKey = Constants.REDIS_TOKEN_KEY + "user_" + userType + "_" + userId;
        String oldToken = (String) redisTemplate.opsForValue().get(userTokenMappingKey);
        if (StringUtils.isNotBlank(oldToken)) {
            redisTemplate.delete(Constants.REDIS_TOKEN_KEY + oldToken);
        }
        // 生成新token
        String tokenKey = userType +""+ UUID.randomUUID() + "_" + userId;
        redisTemplate.opsForValue().set(Constants.REDIS_TOKEN_KEY + tokenKey, userInfo, redisExpire, TimeUnit.DAYS);
        // 记录用户与token的映射关系
        redisTemplate.opsForValue().set(userTokenMappingKey, tokenKey, redisExpire, TimeUnit.DAYS);
        return tokenKey;
    }
    public static String generateShopTokenForRedis(Integer userId, String userInfo, RedisTemplate<String,Object> redisTemplate) {
        // 删除该用户之前登录的token
        String userTokenMappingKey = Constants.REDIS_TOKEN_KEY + "user_" + Constants.TWO + "_" + userId;
        String oldToken = (String) redisTemplate.opsForValue().get(userTokenMappingKey);
        if (StringUtils.isNotBlank(oldToken)) {
            redisTemplate.delete(Constants.REDIS_TOKEN_KEY + oldToken);
        }
        // 生成新token
        String tokenKey = Constants.TWO +""+ UUID.randomUUID() + "_" + userId;
        redisTemplate.opsForValue().set(Constants.REDIS_TOKEN_KEY + tokenKey, userInfo, redisExpire, TimeUnit.DAYS);
        // 记录用户与token的映射关系
        redisTemplate.opsForValue().set(userTokenMappingKey, tokenKey, redisExpire, TimeUnit.DAYS);
@@ -116,7 +140,7 @@
     * @param token 原令牌
     * @return 新令牌
     */
    public void logoutForH5(String token) {
    public void logout(String token) {
        try {
            //删除老的token
            redisTemplate.delete(Constants.REDIS_TOKEN_KEY+token);