From 0ff63ba3cbcea79f2fe524140f03486699f49782 Mon Sep 17 00:00:00 2001 From: Binary Wang Date: Mon, 10 Apr 2017 11:14:20 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E7=94=A8=E6=88=B7=E6=A0=87?= =?UTF-8?q?=E7=AD=BEid=E7=B1=BB=E5=9E=8B=E4=B8=8D=E4=B8=80=E8=87=B4?= =?UTF-8?q?=E7=9A=84=E9=97=AE=E9=A2=98=20#175?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../weixin/common/util/json/GsonHelper.java | 18 ++++++++++++++++-- .../weixin/mp/bean/result/WxMpUser.java | 6 +++--- .../mp/util/json/WxMpUserGsonAdapter.java | 2 +- 3 files changed, 20 insertions(+), 6 deletions(-) diff --git a/weixin-java-common/src/main/java/me/chanjar/weixin/common/util/json/GsonHelper.java b/weixin-java-common/src/main/java/me/chanjar/weixin/common/util/json/GsonHelper.java index ec30c6b0..6166da9e 100644 --- a/weixin-java-common/src/main/java/me/chanjar/weixin/common/util/json/GsonHelper.java +++ b/weixin-java-common/src/main/java/me/chanjar/weixin/common/util/json/GsonHelper.java @@ -9,13 +9,13 @@ package me.chanjar.weixin.common.util.json; -import java.util.List; - import com.google.common.collect.Lists; import com.google.gson.JsonArray; import com.google.gson.JsonElement; import com.google.gson.JsonObject; +import java.util.List; + public class GsonHelper { @@ -130,6 +130,20 @@ public class GsonHelper { return result.toArray(new Integer[0]); } + public static Long[] getLongArray(JsonObject o, String string) { + JsonArray jsonArray = getAsJsonArray(o.getAsJsonArray(string)); + if (jsonArray == null) { + return null; + } + + List result = Lists.newArrayList(); + for (int i = 0; i < jsonArray.size(); i++) { + result.add(jsonArray.get(i).getAsLong()); + } + + return result.toArray(new Long[0]); + } + public static JsonArray getAsJsonArray(JsonElement element) { return element == null ? null : element.getAsJsonArray(); } diff --git a/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/result/WxMpUser.java b/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/result/WxMpUser.java index 8d7090fd..7131de5c 100644 --- a/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/result/WxMpUser.java +++ b/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/result/WxMpUser.java @@ -32,7 +32,7 @@ public class WxMpUser implements Serializable { private Integer sexId; private String remark; private Integer groupId; - private Integer[] tagIds; + private Long[] tagIds; public Boolean getSubscribe() { return this.subscribe; @@ -150,11 +150,11 @@ public class WxMpUser implements Serializable { this.groupId = groupId; } - public Integer[] getTagIds() { + public Long[] getTagIds() { return this.tagIds; } - public void setTagIds(Integer[] tagIds) { + public void setTagIds(Long[] tagIds) { this.tagIds = tagIds; } diff --git a/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/util/json/WxMpUserGsonAdapter.java b/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/util/json/WxMpUserGsonAdapter.java index f351a79d..e47d405f 100644 --- a/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/util/json/WxMpUserGsonAdapter.java +++ b/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/util/json/WxMpUserGsonAdapter.java @@ -36,7 +36,7 @@ public class WxMpUserGsonAdapter implements JsonDeserializer { Integer sexId = GsonHelper.getInteger(o, "sex"); wxMpUser.setRemark(GsonHelper.getString(o, "remark")); wxMpUser.setGroupId(GsonHelper.getInteger(o, "groupid")); - wxMpUser.setTagIds(GsonHelper.getIntArray(o, "tagid_list")); + wxMpUser.setTagIds(GsonHelper.getLongArray(o, "tagid_list")); wxMpUser.setSexId(sexId); if (new Integer(1).equals(sexId)) { wxMpUser.setSex("男");