Browse Source

结算中心模块-日常获取accessToken方法优化

ZhangWenQiang 5 years ago
parent
commit
4946c5c41d

+ 25 - 3
happy-boot-module-settlement/src/main/java/org/jeecg/common/utils/OauthTokenUtils.java

@@ -147,14 +147,15 @@ public class OauthTokenUtils {
                 accessToken = hlgClientToken.getAccessToken();
                 //验证accessToken
                 boolean result = tokenIsvalid(accessToken);
+                //刷新accessToken
                 if (!result) {
                     JSONObject jsonObject = getAccessToken();
-                    accessToken = parseToken(jsonObject);
+                    accessToken = parseTokenAndUpdate(jsonObject, hlgClientToken);
                 }
             } else {
                 //获取accessToken
                 JSONObject jsonObject = getAccessToken();
-                accessToken = parseToken(jsonObject);
+                accessToken = parseTokenAndSave(jsonObject);
             }
         } catch (Exception e) {
             e.printStackTrace();
@@ -168,7 +169,7 @@ public class OauthTokenUtils {
      * @param jsonObject
      * @return
      */
-    public static String parseToken(JSONObject jsonObject) {
+    public static String parseTokenAndSave(JSONObject jsonObject) {
         String accessToken = "";
         if (jsonObject != null) {
             if (jsonObject.getBoolean("success")) {
@@ -185,4 +186,25 @@ public class OauthTokenUtils {
         return accessToken;
     }
 
+    /**
+     * 解析token
+     *
+     * @param jsonObject
+     * @return
+     */
+    public static String parseTokenAndUpdate(JSONObject jsonObject, HlgClientToken hlgClientToken) {
+        String accessToken = "";
+        if (jsonObject != null) {
+            if (jsonObject.getBoolean("success")) {
+                JSONObject jsonObject1 = jsonObject.getJSONObject("result");
+                log.info("accessToken=============,{}", jsonObject1.getString("accessToken"));
+                accessToken = jsonObject1.getString("accessToken");
+                //更新accessToken表信息
+                hlgClientToken.setAccessToken(accessToken);
+                hlgClientToken.setExpiresIn(jsonObject1.getInteger("expiresIn"));
+                hlgClientTokenService.updateById(hlgClientToken);
+            }
+        }
+        return accessToken;
+    }
 }