From ff3cdb14875896a16170a61432e5a84b1968f012 Mon Sep 17 00:00:00 2001 From: Binary Wang Date: Sat, 16 Dec 2017 13:47:44 +0800 Subject: [PATCH] =?UTF-8?q?#358=20=E9=92=88=E5=AF=B9=E5=BE=AE=E4=BF=A1?= =?UTF-8?q?=E7=BD=91=E9=A1=B5=E6=8E=88=E6=9D=83=E4=B8=BAsnsapi=5Fuserinfo?= =?UTF-8?q?=E6=97=B6=EF=BC=8CWxMpUser=E7=B1=BB=E4=B8=AD=E5=A2=9E=E5=8A=A0p?= =?UTF-8?q?rivilege=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../chanjar/weixin/common/util/json/GsonHelper.java | 13 +++++++++++++ .../me/chanjar/weixin/mp/bean/result/WxMpUser.java | 4 ++++ .../weixin/mp/util/json/WxMpUserGsonAdapter.java | 1 + 3 files changed, 18 insertions(+) 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 3ce39566..2d9493d4 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 @@ -129,6 +129,19 @@ public class GsonHelper { return result.toArray(new Integer[0]); } + public static String[] getStringArray(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).getAsString()); + } + + return result.toArray(new String[0]); + } public static Long[] getLongArray(JsonObject o, String string) { JsonArray jsonArray = getAsJsonArray(o.getAsJsonArray(string)); 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 95f0395e..441f7954 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 @@ -44,6 +44,10 @@ public class WxMpUser implements Serializable { private String remark; private Integer groupId; private Long[] tagIds; + /** + * 用户特权信息,json 数组,如微信沃卡用户为(chinaunicom) + */ + private String[] privileges; public static WxMpUser fromJson(String json) { return WxMpGsonBuilder.INSTANCE.create().fromJson(json, WxMpUser.class); 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 e47d405f..84976738 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 @@ -37,6 +37,7 @@ public class WxMpUserGsonAdapter implements JsonDeserializer { wxMpUser.setRemark(GsonHelper.getString(o, "remark")); wxMpUser.setGroupId(GsonHelper.getInteger(o, "groupid")); wxMpUser.setTagIds(GsonHelper.getLongArray(o, "tagid_list")); + wxMpUser.setPrivileges(GsonHelper.getStringArray(o, "privilege")); wxMpUser.setSexId(sexId); if (new Integer(1).equals(sexId)) { wxMpUser.setSex("男");