diff --git a/epmet-auth/src/main/java/com/epmet/service/impl/ThirdLoginServiceImpl.java b/epmet-auth/src/main/java/com/epmet/service/impl/ThirdLoginServiceImpl.java index 58c60d8b95..49dc626942 100644 --- a/epmet-auth/src/main/java/com/epmet/service/impl/ThirdLoginServiceImpl.java +++ b/epmet-auth/src/main/java/com/epmet/service/impl/ThirdLoginServiceImpl.java @@ -1178,6 +1178,10 @@ public class ThirdLoginServiceImpl implements ThirdLoginService, ResultDataResol SdtStaffInfoResult staffInfo = getResultDataOrThrowsException(thirdOpenFeignClient.getUserInfoByAuthCode(authCode, customerId), ServiceConstant.EPMET_THIRD_SERVER, EpmetErrorCode.SERVER_ERROR.getCode(), "获取山东通用户基础信息失败", null); + if (staffInfo == null) { + throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(), "获取山东通用户基础信息返回null,流程终止"); + } + // 2.获取用户详细信息 SdtStaffDetailResult staffDetail = getResultDataOrThrowsException(thirdOpenFeignClient.getUserDetailByUserId(staffInfo.getUserId(), customerId), ServiceConstant.EPMET_THIRD_SERVER, EpmetErrorCode.SERVER_ERROR.getCode(), "获取山东通用户详细信息失败", null); diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/SdtServiceImpl.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/SdtServiceImpl.java index 5b463f352f..b5dca9bc0d 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/SdtServiceImpl.java +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/SdtServiceImpl.java @@ -135,7 +135,7 @@ public class SdtServiceImpl implements SdtService { String key = RedisKeys.getSdtAccessToken(customerId); String accessToken = redisUtils.getString(key); if (StringUtils.isNotBlank(accessToken)) { - return accessToken; + return accessToken.replaceAll("\"", ""); } // db中查询 @@ -148,7 +148,10 @@ public class SdtServiceImpl implements SdtService { accessToken = sdtAppInfoEntity.getAccessToken(); Date expiresAt = sdtAppInfoEntity.getExpiresAt(); - Long expireIn = getExpireIn(expiresAt); + Long expireIn = -1l; + if (expiresAt != null) { + expireIn = getExpireIn(expiresAt); + } if (StringUtils.isNotBlank(accessToken) && expireIn > 0) { // 没过期,可以用 @@ -185,6 +188,9 @@ public class SdtServiceImpl implements SdtService { HashMap params = new HashMap<>(); params.put("access_token", getCachedAccessToken(customerId)); params.put("code", authCode); + + log.info("【山东通】获取用户信息,code:{}, access_token:{}", authCode, getCachedAccessToken(customerId)); + Result sdtResult = HttpClientManager.getInstance().sendGet(sdtAppInfoEntity.getApiAddress() + API_GET_USER_INFO_URL, params); if (!sdtResult.success()) { // http状态判断