|
|
|
@@ -1,5 +1,8 @@ |
|
|
|
package com.iformall.controller; |
|
|
|
|
|
|
|
import com.alibaba.fastjson.JSON; |
|
|
|
import com.alibaba.fastjson.JSONArray; |
|
|
|
import com.alibaba.fastjson.JSONObject; |
|
|
|
import com.google.gson.Gson; |
|
|
|
import com.google.gson.GsonBuilder; |
|
|
|
import com.iformall.common.Result; |
|
|
|
@@ -364,4 +367,40 @@ public class WechatCalllbackController extends BaseController { |
|
|
|
return new ResultData(Result.ERROR, e.getMessage()); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
@GetMapping(value = "/getAuthorizerList") |
|
|
|
@ApiOperation("拉取当前所有已授权的帐号基本信息") |
|
|
|
public ResultData getAuthorizerList() { |
|
|
|
try { |
|
|
|
String accessToken = openService.getWxOpenComponentService().getComponentAccessToken(true); |
|
|
|
String ret = openService.getWxOpenComponentService().getApiGetAuthorizerList(accessToken, 0, 100); |
|
|
|
logger.info("getAuthorizerList: " + ret); |
|
|
|
JSONObject retObj = JSON.parseObject(ret); |
|
|
|
if(retObj.getInteger("total_count") > 0) { |
|
|
|
JSONArray dataList = retObj.getJSONArray("list"); |
|
|
|
for(int i= 0;i<dataList.size();i++) { |
|
|
|
JSONObject obj = dataList.getJSONObject(i); |
|
|
|
String appId = obj.getString("authorizer_appid"); |
|
|
|
String refreshToken = obj.getString("refresh_token"); |
|
|
|
Date authDate = new Date(obj.getLong("auth_time")*1000); |
|
|
|
|
|
|
|
if(StringUtils.isBlank(refreshToken)) { |
|
|
|
continue; |
|
|
|
} |
|
|
|
|
|
|
|
WxAuthorizerInfo authorizerInfo = new WxAuthorizerInfo(); |
|
|
|
authorizerInfo.setAuthorizerAppid(appId); |
|
|
|
authorizerInfo.setRefreshToken(refreshToken); |
|
|
|
authorizerInfo.setAuthTime(authDate); |
|
|
|
authorizerInfoService.updateAuthAppidInfo(authorizerInfo); |
|
|
|
|
|
|
|
openService.getWxOpenComponentService().getWxOpenConfigStorage().setAuthorizerRefreshToken(appId, refreshToken); |
|
|
|
} |
|
|
|
} |
|
|
|
return new ResultData(ret); |
|
|
|
} catch (WxErrorException e) { |
|
|
|
logger.error(e.getMessage()); |
|
|
|
return new ResultData(Result.ERROR, e.getMessage()); |
|
|
|
} |
|
|
|
} |
|
|
|
} |