增加会员卡管理服务的更新会员信息接口的实现 (#283)

* 修复UserInfo反序列化的bug,补充其单元测试

* 增加`更新会员信息`接口的实现

* 增加会员卡相关接口的测试类  包含下述方法: 1. 会员卡激活接口 2. 会员信息获取接口 3. 更新会员信息接口
This commit is contained in:
mgcnrx11
2017-07-15 18:53:23 +08:00
committed by Binary Wang
parent 22287a482d
commit 9368177d00
12 changed files with 574 additions and 4 deletions

View File

@@ -6,6 +6,7 @@ import me.chanjar.weixin.mp.bean.*;
import me.chanjar.weixin.mp.bean.datacube.WxDataCubeUserCumulate;
import me.chanjar.weixin.mp.bean.datacube.WxDataCubeUserSummary;
import me.chanjar.weixin.mp.bean.kefu.WxMpKefuMessage;
import me.chanjar.weixin.mp.bean.membercard.WxMpMemberCardUpdateResult;
import me.chanjar.weixin.mp.bean.membercard.WxMpMemberCardUserInfoResult;
import me.chanjar.weixin.mp.bean.material.*;
import me.chanjar.weixin.mp.bean.result.*;
@@ -51,6 +52,7 @@ public class WxMpGsonBuilder {
INSTANCE.registerTypeAdapter(WxMpTemplateIndustry.class, new WxMpIndustryGsonAdapter());
INSTANCE.registerTypeAdapter(WxMpUserBlacklistGetResult.class, new WxUserBlacklistGetResultGsonAdapter());
INSTANCE.registerTypeAdapter(WxMpMemberCardUserInfoResult.class, new WxMpMemberCardUserInfoResultGsonAdapter());
INSTANCE.registerTypeAdapter(WxMpMemberCardUpdateResult.class, new WxMpMemberCardUpdateResultGsonAdapter());
}
public static Gson create() {

View File

@@ -0,0 +1,37 @@
package me.chanjar.weixin.mp.util.json;
import com.google.gson.JsonDeserializationContext;
import com.google.gson.JsonDeserializer;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.google.gson.JsonParseException;
import me.chanjar.weixin.common.util.json.GsonHelper;
import me.chanjar.weixin.mp.bean.membercard.WxMpMemberCardUpdateResult;
import java.lang.reflect.Type;
/**
* Json to WxMpMemberCardUpdateResult 的转换适配器
*
* @author YuJian
* @version 2017/7/15
*/
public class WxMpMemberCardUpdateResultGsonAdapter implements JsonDeserializer<WxMpMemberCardUpdateResult> {
@Override
public WxMpMemberCardUpdateResult deserialize(JsonElement jsonElement, Type type, JsonDeserializationContext
jsonDeserializationContext) throws JsonParseException {
WxMpMemberCardUpdateResult result = new WxMpMemberCardUpdateResult();
JsonObject jsonObject = jsonElement.getAsJsonObject();
result.setOpenId(GsonHelper.getString(jsonObject, "openid"));
result.setErrorCode(GsonHelper.getString(jsonObject, "errcode"));
result.setErrorMsg(GsonHelper.getString(jsonObject, "errmsg"));
result.setResultBalance(GsonHelper.getInteger(jsonObject, "result_balance"));
result.setResultBonus(GsonHelper.getInteger(jsonObject, "result_bonus"));
return result;
}
}

View File

@@ -9,9 +9,9 @@ import me.chanjar.weixin.mp.bean.membercard.WxMpMemberCardUserInfoResult;
import java.lang.reflect.Type;
/**
* Created by YuJian on 2017/7/11.
* Json to WxMpMemberCardUserInfoResult 的转换适配器
*
* @author YuJian
* @author YuJian(mgcnrx11@gmail.com)
* @version 2017/7/11
*/
public class WxMpMemberCardUserInfoResultGsonAdapter implements JsonDeserializer<WxMpMemberCardUserInfoResult> {
@@ -57,8 +57,7 @@ public class WxMpMemberCardUserInfoResultGsonAdapter implements JsonDeserializer
JsonArray valueListArray = customField.getAsJsonArray("value_list");
String[] valueList = new String[valueListArray.size()];
for (int j = 0; j < valueListArray.size(); j++) {
JsonObject valueListObj = valueListArray.getAsJsonObject();
valueList[i] = valueListObj.getAsString();
valueList[j] = valueListArray.get(j).getAsString();
}
customNameValues.setValueList(valueList);
customFieldListValues[i] = customNameValues;