doum
2026-06-18 93de43267e1663031fe5dc2f5ae40d128a182a76
server/system_service/src/main/java/com/doumee/config/jwt/JwtTokenUtil.java
@@ -132,21 +132,29 @@
        try {
            //登出海康系统数据
            LoginUserInfo loginUserInfo = this.getUserInfoByToken(token);
            if (loginUserInfo != null && StringUtils.isNotBlank(loginUserInfo.getHkMenuToken())) {
            String url = systemDictDataBiz.queryByCode(Constants.HK_PARAM,Constants.HK_HTTPS).getCode() +
                    systemDictDataBiz.queryByCode(Constants.HK_PARAM,Constants.HK_HOST).getCode() +
                    systemDictDataBiz.queryByCode(Constants.HK_PARAM,Constants.LOGIN_OUT_URL).getCode();
            if(StringUtils.isNotBlank(loginUserInfo.getHkMenuToken())){
                log.info("调起海康退出登录=======================>"+url+"?token="+loginUserInfo.getHkMenuToken());
//                this.hkLoginOut(url+"?token="+loginUserInfo.getHkMenuToken());
                HttpsUtil.get(url+"?token="+loginUserInfo.getHkMenuToken(),true);
            }
            redisTemplate.delete(Constants.REDIS_TOKEN_KEY+token);//删除老的token
            invalidateToken(token);
            if (loginUserInfo != null && !Constants.equalsInteger(loginUserInfo.getH5UserType(), LoginUserInfo.H5_USER_CUSTOMER)) {
            systemLoginService.cleanOpenid(loginUserInfo.getId());
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    /** 仅失效 token,不清理 openid(商户 H5 退出由业务层单独解绑 member) */
    public void invalidateToken(String token) {
        if (StringUtils.isNotBlank(token)) {
            redisTemplate.delete(Constants.REDIS_TOKEN_KEY + token);
        }
    }
    public void hkLoginOut(String url){
        try {