Przeglądaj źródła

[已授权信息获取][新增]:已授权信息获取,并写入数据库及redis

release
Stormeye Wu 7 lat temu
rodzic
commit
563f75ce0c
3 zmienionych plików z 37 dodań i 1 usunięć
  1. +2
    -0
      mallinkService/src/main/java/com/iformall/service/WxAuthorizerInfoService.java
  2. +13
    -1
      mallinkService/src/main/java/com/iformall/service/impl/WxAuthorizerInfoServiceImpl.java
  3. +22
    -0
      mlWechatOpen/src/main/java/com/iformall/controller/WechatCalllbackController.java

+ 2
- 0
mallinkService/src/main/java/com/iformall/service/WxAuthorizerInfoService.java Wyświetl plik

@@ -78,4 +78,6 @@ public interface WxAuthorizerInfoService {

void updateOpenAppid(WxAuthorizerInfo record);

void updateAuthAppidInfo(WxAuthorizerInfo record);

}

+ 13
- 1
mallinkService/src/main/java/com/iformall/service/impl/WxAuthorizerInfoServiceImpl.java Wyświetl plik

@@ -185,7 +185,19 @@ public class WxAuthorizerInfoServiceImpl implements WxAuthorizerInfoService {
info.setBindOpenTime(curDate);
authorizerInfoMapper.updateByPrimaryKeySelective(record);
}

@Override
public void updateAuthAppidInfo(WxAuthorizerInfo record) {
WxAuthorizerInfo authorizerInfo = authorizerInfoMapper.findByAppid(record.getAuthorizerAppid());
if(authorizerInfo != null) {
record.setId(authorizerInfo.getId());
authorizerInfoMapper.updateByPrimaryKeySelective(record);
} else {
/// TODO
}


}


+ 22
- 0
mlWechatOpen/src/main/java/com/iformall/controller/WechatCalllbackController.java Wyświetl plik

@@ -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;
@@ -371,6 +374,25 @@ public class WechatCalllbackController extends BaseController {
try {
String accessToken = openService.getWxOpenComponentService().getComponentAccessToken(true);
String ret = openService.getWxOpenComponentService().getApiGetAuthorizerList(accessToken, 0, 100);
JSONObject retObj = JSON.parseObject(ret);
if(retObj.getInteger("code") == 200) {
JSONObject dataObj = retObj.getJSONObject("data");
JSONArray dataList = dataObj.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);

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());


Ładowanie…
Anuluj
Zapisz