🎨 #2660 【开放平台】补全获取授权帐号详情接口部分缺失参数
This commit is contained in:
@@ -43,6 +43,27 @@ public class WxOpenAuthorizerInfo implements Serializable {
|
|||||||
*/
|
*/
|
||||||
private MiniProgramInfo miniProgramInfo;
|
private MiniProgramInfo miniProgramInfo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 小程序注册方式
|
||||||
|
* 类型 说明
|
||||||
|
* 0 普通方式注册
|
||||||
|
* 2 通过复用公众号创建小程序 api 注册
|
||||||
|
* 6 通过法人扫脸创建企业小程序 api 注册
|
||||||
|
* 13 通过创建试用小程序 api 注册
|
||||||
|
* 15 通过联盟控制台注册
|
||||||
|
* 16 通过创建个人小程序 api 注册
|
||||||
|
* 17 通过创建个人交易小程序 api 注册
|
||||||
|
* 19 通过试用小程序转正 api 注册
|
||||||
|
* 22 通过复用商户号创建企业小程序 api 注册
|
||||||
|
* 23 通过复用商户号转正 api 注册
|
||||||
|
*/
|
||||||
|
private Integer registerType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 小程序基础配置信息
|
||||||
|
*/
|
||||||
|
private BasicConfig basicConfig;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
public static class MiniProgramInfo implements Serializable {
|
public static class MiniProgramInfo implements Serializable {
|
||||||
private static final long serialVersionUID = 8857028017332191988L;
|
private static final long serialVersionUID = 8857028017332191988L;
|
||||||
@@ -76,4 +97,13 @@ public class WxOpenAuthorizerInfo implements Serializable {
|
|||||||
private List<String> bizDomain;
|
private List<String> bizDomain;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public static class BasicConfig implements Serializable {
|
||||||
|
private static final long serialVersionUID = -8857028017332191989L;
|
||||||
|
@SerializedName("is_phone_configured")
|
||||||
|
private Boolean isPhoneConfigured;
|
||||||
|
@SerializedName("is_email_configured")
|
||||||
|
private Boolean isEmailConfigured;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -16,6 +16,7 @@ public class WxOpenAuthorizerInfoGsonAdapter implements JsonDeserializer<WxOpenA
|
|||||||
private static final String VERIFY_TYPE_INFO = "verify_type_info";
|
private static final String VERIFY_TYPE_INFO = "verify_type_info";
|
||||||
private static final String SERVICE_TYPE_INFO = "service_type_info";
|
private static final String SERVICE_TYPE_INFO = "service_type_info";
|
||||||
private static final String MINI_PROGRAM_INFO = "MiniProgramInfo";
|
private static final String MINI_PROGRAM_INFO = "MiniProgramInfo";
|
||||||
|
private static final String BASIC_CONFIG = "basic_config";
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public WxOpenAuthorizerInfo deserialize(JsonElement jsonElement, Type type, JsonDeserializationContext jsonDeserializationContext) throws JsonParseException {
|
public WxOpenAuthorizerInfo deserialize(JsonElement jsonElement, Type type, JsonDeserializationContext jsonDeserializationContext) throws JsonParseException {
|
||||||
@@ -30,7 +31,7 @@ public class WxOpenAuthorizerInfoGsonAdapter implements JsonDeserializer<WxOpenA
|
|||||||
authorizationInfo.setQrcodeUrl(GsonHelper.getString(jsonObject, "qrcode_url"));
|
authorizationInfo.setQrcodeUrl(GsonHelper.getString(jsonObject, "qrcode_url"));
|
||||||
authorizationInfo.setAccountStatus(GsonHelper.getInteger(jsonObject, "account_status"));
|
authorizationInfo.setAccountStatus(GsonHelper.getInteger(jsonObject, "account_status"));
|
||||||
authorizationInfo.setSignature(GsonHelper.getString(jsonObject, "signature"));
|
authorizationInfo.setSignature(GsonHelper.getString(jsonObject, "signature"));
|
||||||
authorizationInfo.setAccountStatus(GsonHelper.getInteger(jsonObject, "account_status"));
|
authorizationInfo.setRegisterType(GsonHelper.getInteger(jsonObject, "register_type"));
|
||||||
|
|
||||||
if (jsonObject.has(SERVICE_TYPE_INFO)) {
|
if (jsonObject.has(SERVICE_TYPE_INFO)) {
|
||||||
authorizationInfo.setServiceTypeInfo(GsonHelper.getInteger(jsonObject.getAsJsonObject(SERVICE_TYPE_INFO), "id"));
|
authorizationInfo.setServiceTypeInfo(GsonHelper.getInteger(jsonObject.getAsJsonObject(SERVICE_TYPE_INFO), "id"));
|
||||||
@@ -38,6 +39,11 @@ public class WxOpenAuthorizerInfoGsonAdapter implements JsonDeserializer<WxOpenA
|
|||||||
if (jsonObject.has(VERIFY_TYPE_INFO)) {
|
if (jsonObject.has(VERIFY_TYPE_INFO)) {
|
||||||
authorizationInfo.setVerifyTypeInfo(GsonHelper.getInteger(jsonObject.getAsJsonObject(VERIFY_TYPE_INFO), "id"));
|
authorizationInfo.setVerifyTypeInfo(GsonHelper.getInteger(jsonObject.getAsJsonObject(VERIFY_TYPE_INFO), "id"));
|
||||||
}
|
}
|
||||||
|
if(jsonObject.has(BASIC_CONFIG)){
|
||||||
|
authorizationInfo.setBasicConfig(WxOpenGsonBuilder.create().fromJson(jsonObject.get(BASIC_CONFIG),
|
||||||
|
new TypeToken<WxOpenAuthorizerInfo.BasicConfig>(){
|
||||||
|
}.getType()));
|
||||||
|
}
|
||||||
Map<String, Integer> businessInfo = WxOpenGsonBuilder.create().fromJson(jsonObject.get("business_info"),
|
Map<String, Integer> businessInfo = WxOpenGsonBuilder.create().fromJson(jsonObject.get("business_info"),
|
||||||
new TypeToken<Map<String, Integer>>() {
|
new TypeToken<Map<String, Integer>>() {
|
||||||
}.getType());
|
}.getType());
|
||||||
|
|||||||
@@ -0,0 +1,131 @@
|
|||||||
|
package me.chanjar.weixin.open.bean.result;
|
||||||
|
|
||||||
|
import me.chanjar.weixin.open.util.json.WxOpenGsonBuilder;
|
||||||
|
import org.testng.annotations.Test;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @title: 获取授权帐号详情 信息反序列化测试
|
||||||
|
* @author: trifolium
|
||||||
|
* @date: 2022/6/7
|
||||||
|
* @modified :
|
||||||
|
*/
|
||||||
|
public class WxOpenAuthorizerInfoResultTest {
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testDeserialization() {
|
||||||
|
|
||||||
|
String json = "{\n" +
|
||||||
|
" \"authorizer_info\": {\n" +
|
||||||
|
" \"nick_name\": \"美妆饰品\",\n" +
|
||||||
|
" \"head_img\": \"http:\\/\\/wx.qlogo.cn\\/mmopen\\/jJSbu4Te5iuiaM0dFnKVUEE83n2yH5cQStb\\/0\",\n" +
|
||||||
|
" \"service_type_info\": {\n" +
|
||||||
|
" \"id\": 0\n" +
|
||||||
|
" },\n" +
|
||||||
|
" \"verify_type_info\": {\n" +
|
||||||
|
" \"id\": -1\n" +
|
||||||
|
" },\n" +
|
||||||
|
" \"user_name\": \"gh_c43395cb652e\",\n" +
|
||||||
|
" \"alias\": \"\",\n" +
|
||||||
|
" \"qrcode_url\": \"http:\\/\\/mmbiz.qpic.cn\\/mmbiz_jpg\\/kPmmhe6g\\/0\",\n" +
|
||||||
|
" \"business_info\": {\n" +
|
||||||
|
" \"open_pay\": 0,\n" +
|
||||||
|
" \"open_shake\": 0,\n" +
|
||||||
|
" \"open_scan\": 0,\n" +
|
||||||
|
" \"open_card\": 0,\n" +
|
||||||
|
" \"open_store\": 0\n" +
|
||||||
|
" },\n" +
|
||||||
|
" \"idc\": 1,\n" +
|
||||||
|
" \"principal_name\": \"个人\",\n" +
|
||||||
|
" \"signature\": \"做美装,精美饰品等搭配教学\",\n" +
|
||||||
|
" \"MiniProgramInfo\": {\n" +
|
||||||
|
" \"network\": {\n" +
|
||||||
|
" \"RequestDomain\": [\"https:\\/\\/weixin.qq.com\"],\n" +
|
||||||
|
" \"WsRequestDomain\": [\"wss:\\/\\/weixin.qq.com\"],\n" +
|
||||||
|
" \"UploadDomain\": [\"https:\\/\\/weixin.qq.com\"],\n" +
|
||||||
|
" \"DownloadDomain\": [\"https:\\/\\/weixin.qq.com\"],\n" +
|
||||||
|
" \"BizDomain\": [],\n" +
|
||||||
|
" \"UDPDomain\": [],\n" +
|
||||||
|
" \"TCPDomain\": [],\n" +
|
||||||
|
" \"PrefetchDNSDomain\": [],\n" +
|
||||||
|
" \"NewRequestDomain\": [],\n" +
|
||||||
|
" \"NewWsRequestDomain\": [],\n" +
|
||||||
|
" \"NewUploadDomain\": [],\n" +
|
||||||
|
" \"NewDownloadDomain\": [],\n" +
|
||||||
|
" \"NewBizDomain\": [],\n" +
|
||||||
|
" \"NewUDPDomain\": [],\n" +
|
||||||
|
" \"NewTCPDomain\": [],\n" +
|
||||||
|
" \"NewPrefetchDNSDomain\": []\n" +
|
||||||
|
" },\n" +
|
||||||
|
" \"categories\": [{\n" +
|
||||||
|
" \"first\": \"生活服务\",\n" +
|
||||||
|
" \"second\": \"丽人服务\"\n" +
|
||||||
|
" }, {\n" +
|
||||||
|
" \"first\": \"旅游服务\",\n" +
|
||||||
|
" \"second\": \"旅游资讯\"\n" +
|
||||||
|
" }, {\n" +
|
||||||
|
" \"first\": \"物流服务\",\n" +
|
||||||
|
" \"second\": \"查件\"\n" +
|
||||||
|
" }],\n" +
|
||||||
|
" \"visit_status\": 0\n" +
|
||||||
|
" },\n" +
|
||||||
|
" \"register_type\": 0,\n" +
|
||||||
|
" \"account_status\": 1,\n" +
|
||||||
|
" \"basic_config\": {\n" +
|
||||||
|
" \"is_phone_configured\": true,\n" +
|
||||||
|
" \"is_email_configured\": true\n" +
|
||||||
|
" }\n" +
|
||||||
|
" },\n" +
|
||||||
|
" \"authorization_info\": {\n" +
|
||||||
|
" \"authorizer_appid\": \"wx326eecacf7370d4e\",\n" +
|
||||||
|
" \"authorizer_refresh_token\": \"refreshtoken@@@RU0Sgi7bD6apS7frS9gj8Sbws7OoDejK9Z-cm0EnCzg\",\n" +
|
||||||
|
" \"func_info\": [{\n" +
|
||||||
|
" \"funcscope_category\": {\n" +
|
||||||
|
" \"id\": 3\n" +
|
||||||
|
" },\n" +
|
||||||
|
" \"confirm_info\": {\n" +
|
||||||
|
" \"need_confirm\": 0,\n" +
|
||||||
|
" \"already_confirm\": 0,\n" +
|
||||||
|
" \"can_confirm\": 0\n" +
|
||||||
|
" }\n" +
|
||||||
|
" }, {\n" +
|
||||||
|
" \"funcscope_category\": {\n" +
|
||||||
|
" \"id\": 7\n" +
|
||||||
|
" }\n" +
|
||||||
|
" }, {\n" +
|
||||||
|
" \"funcscope_category\": {\n" +
|
||||||
|
" \"id\": 17\n" +
|
||||||
|
" }\n" +
|
||||||
|
" }, {\n" +
|
||||||
|
" \"funcscope_category\": {\n" +
|
||||||
|
" \"id\": 18\n" +
|
||||||
|
" },\n" +
|
||||||
|
" \"confirm_info\": {\n" +
|
||||||
|
" \"need_confirm\": 0,\n" +
|
||||||
|
" \"already_confirm\": 0,\n" +
|
||||||
|
" \"can_confirm\": 0\n" +
|
||||||
|
" }\n" +
|
||||||
|
" }, {\n" +
|
||||||
|
" \"funcscope_category\": {\n" +
|
||||||
|
" \"id\": 19\n" +
|
||||||
|
" }\n" +
|
||||||
|
" }, {\n" +
|
||||||
|
" \"funcscope_category\": {\n" +
|
||||||
|
" \"id\": 30\n" +
|
||||||
|
" },\n" +
|
||||||
|
" \"confirm_info\": {\n" +
|
||||||
|
" \"need_confirm\": 0,\n" +
|
||||||
|
" \"already_confirm\": 0,\n" +
|
||||||
|
" \"can_confirm\": 0\n" +
|
||||||
|
" }\n" +
|
||||||
|
" }, {\n" +
|
||||||
|
" \"funcscope_category\": {\n" +
|
||||||
|
" \"id\": 115\n" +
|
||||||
|
" }\n" +
|
||||||
|
" }]\n" +
|
||||||
|
" }\n" +
|
||||||
|
"}\n";
|
||||||
|
|
||||||
|
System.out.println(WxOpenGsonBuilder.create().fromJson(json, WxOpenAuthorizerInfoResult.class));
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user