From b47cd3a18a9951210f0afbb2f41c9d78830b6170 Mon Sep 17 00:00:00 2001 From: Daniel Qian Date: Fri, 19 Dec 2014 12:20:41 +0800 Subject: [PATCH] =?UTF-8?q?fix=20#56=20=E5=88=86=E7=BB=84=E7=BE=A4?= =?UTF-8?q?=E5=8F=91=E6=B6=88=E6=81=AF=E6=B2=A1=E6=9C=89=20is=5Fto=5Fall?= =?UTF-8?q?=20=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../chanjar/weixin/mp/bean/WxMpMassGroupMessage.java | 10 +++++++--- .../chanjar/weixin/mp/util/json/WxMpGsonBuilder.java | 2 +- ...apter.java => WxMpMassGroupMessageGsonAdapter.java} | 9 +++++++-- 3 files changed, 15 insertions(+), 6 deletions(-) rename weixin-java-mp/src/main/java/me/chanjar/weixin/mp/util/json/{WxMpMassMessageGsonAdapter.java => WxMpMassGroupMessageGsonAdapter.java} (88%) diff --git a/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/WxMpMassGroupMessage.java b/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/WxMpMassGroupMessage.java index c8e859c0c..aa79c43f4 100644 --- a/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/WxMpMassGroupMessage.java +++ b/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/WxMpMassGroupMessage.java @@ -9,7 +9,7 @@ import me.chanjar.weixin.mp.util.json.WxMpGsonBuilder; */ public class WxMpMassGroupMessage { - private long groupId; + private Long groupId; private String msgtype; private String content; private String mediaId; @@ -58,11 +58,15 @@ public class WxMpMassGroupMessage { return WxMpGsonBuilder.INSTANCE.create().toJson(this); } - public long getGroupId() { + public Long getGroupId() { return groupId; } - public void setGroupId(long groupId) { + /** + * 如果不设置则就意味着发给所有用户 + * @param groupId + */ + public void setGroupId(Long groupId) { this.groupId = groupId; } diff --git a/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/util/json/WxMpGsonBuilder.java b/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/util/json/WxMpGsonBuilder.java index 2849a796e..408548430 100644 --- a/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/util/json/WxMpGsonBuilder.java +++ b/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/util/json/WxMpGsonBuilder.java @@ -14,7 +14,7 @@ public class WxMpGsonBuilder { INSTANCE.disableHtmlEscaping(); INSTANCE.registerTypeAdapter(WxMpCustomMessage.class, new WxMpCustomMessageGsonAdapter()); INSTANCE.registerTypeAdapter(WxMpMassNews.class, new WxMpMassNewsGsonAdapter()); - INSTANCE.registerTypeAdapter(WxMpMassGroupMessage.class, new WxMpMassMessageGsonAdapter()); + INSTANCE.registerTypeAdapter(WxMpMassGroupMessage.class, new WxMpMassGroupMessageGsonAdapter()); INSTANCE.registerTypeAdapter(WxMpMassOpenIdsMessage.class, new WxMpMassOpenIdsMessageGsonAdapter()); INSTANCE.registerTypeAdapter(WxMpGroup.class, new WxMpGroupGsonAdapter()); INSTANCE.registerTypeAdapter(WxMpUser.class, new WxUserGsonAdapter()); diff --git a/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/util/json/WxMpMassMessageGsonAdapter.java b/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/util/json/WxMpMassGroupMessageGsonAdapter.java similarity index 88% rename from weixin-java-mp/src/main/java/me/chanjar/weixin/mp/util/json/WxMpMassMessageGsonAdapter.java rename to weixin-java-mp/src/main/java/me/chanjar/weixin/mp/util/json/WxMpMassGroupMessageGsonAdapter.java index 5b9a98453..a00774692 100644 --- a/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/util/json/WxMpMassMessageGsonAdapter.java +++ b/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/util/json/WxMpMassGroupMessageGsonAdapter.java @@ -22,13 +22,18 @@ import java.lang.reflect.Type; * @author qianjia * */ -public class WxMpMassMessageGsonAdapter implements JsonSerializer { +public class WxMpMassGroupMessageGsonAdapter implements JsonSerializer { public JsonElement serialize(WxMpMassGroupMessage message, Type typeOfSrc, JsonSerializationContext context) { JsonObject messageJson = new JsonObject(); JsonObject filter = new JsonObject(); - filter.addProperty("group_id", message.getGroupId()); + if(null == message.getGroupId()) { + filter.addProperty("is_to_all", true); + } else { + filter.addProperty("is_to_all", false); + filter.addProperty("group_id", message.getGroupId()); + } messageJson.add("filter", filter); if (WxConsts.MASS_MSG_NEWS.equals(message.getMsgtype())) {