diff --git a/CHANGE.md b/CHANGE.md index 2edf2625..f2e8970f 100644 --- a/CHANGE.md +++ b/CHANGE.md @@ -314,3 +314,7 @@ * 2015-06-04 + **weixin4j-mp**: 新增查询红包接口 + +* 2015-06-08 + + + **weixin4j-base**: 新增群发卡券消息类型 diff --git a/weixin4j-base/CHANGE.md b/weixin4j-base/CHANGE.md index 4759d5c1..d8aa65f2 100644 --- a/weixin4j-base/CHANGE.md +++ b/weixin4j-base/CHANGE.md @@ -52,4 +52,8 @@ * 2015-05-07 - + 删除ResponseTuple接口 \ No newline at end of file + + 删除ResponseTuple接口 + +* 2015-06-08 + + + 新增群发卡券消息类型 \ No newline at end of file diff --git a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/Card.java b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/Card.java new file mode 100644 index 00000000..1941ed08 --- /dev/null +++ b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/Card.java @@ -0,0 +1,47 @@ +package com.foxinmy.weixin4j.tuple; + +import javax.xml.bind.annotation.XmlElement; + +import com.alibaba.fastjson.annotation.JSONField; + +/** + * 卡券对象 + *
+ * 可用于「群发消息」 + *
+ * + * @className Card + * @author jy + * @date 2015年6月8日 + * @since JDK 1.7 + * @see + */ +public class Card implements MassTuple { + + private static final long serialVersionUID = 6119453633595102147L; + + @Override + public String getMessageType() { + return "wxcard"; + } + + /** + * 上传后的微信返回的媒体ID + */ + @JSONField(name = "card_id") + @XmlElement(name = "CardId") + private String cardId; + + public Card(String cardId) { + this.cardId = cardId; + } + + public String getCardId() { + return cardId; + } + + @Override + public String toString() { + return "Card [cardId=" + cardId + "]"; + } +} diff --git a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/File.java b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/File.java index 1fb1b4a9..407edbd2 100644 --- a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/File.java +++ b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/File.java @@ -40,10 +40,6 @@ public class File implements NotifyTuple { return mediaId; } - public void setMediaId(String mediaId) { - this.mediaId = mediaId; - } - @Override public String toString() { return "File [mediaId=" + mediaId + "]"; diff --git a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/Image.java b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/Image.java index 75e11dca..f4e1a0d1 100644 --- a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/Image.java +++ b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/Image.java @@ -40,10 +40,6 @@ public class Image implements MassTuple, NotifyTuple { return mediaId; } - public void setMediaId(String mediaId) { - this.mediaId = mediaId; - } - @Override public String toString() { return "Image [mediaId=" + mediaId + "]"; diff --git a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/MassTuple.java b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/MassTuple.java index 50f84bcd..441d9d57 100644 --- a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/MassTuple.java +++ b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/MassTuple.java @@ -12,6 +12,7 @@ package com.foxinmy.weixin4j.tuple; * @see com.foxinmy.weixin4j.tuple.Voice * @see com.foxinmy.weixin4j.tuple.MpVideo * @see com.foxinmy.weixin4j.tuple.MpNews + * @see com.foxinmy.weixin4j.tuple.Card */ public interface MassTuple extends Tuple { diff --git a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/MpArticle.java b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/MpArticle.java index 8f2cab25..184455f6 100644 --- a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/MpArticle.java +++ b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/MpArticle.java @@ -46,13 +46,13 @@ public class MpArticle implements Serializable { */ @JSONField(name = "show_cover_pic") private String showCoverPic; - + /** * 正文的URL 可为空 */ @JSONField(name = "content_url") private String contentUrl; - + /** * 封面图片的URL 可为空 */ @@ -73,10 +73,6 @@ public class MpArticle implements Serializable { return thumbMediaId; } - public void setThumbMediaId(String thumbMediaId) { - this.thumbMediaId = thumbMediaId; - } - public String getAuthor() { return author; } @@ -89,10 +85,6 @@ public class MpArticle implements Serializable { return title; } - public void setTitle(String title) { - this.title = title; - } - public String getSourceUrl() { return sourceUrl; } @@ -105,10 +97,6 @@ public class MpArticle implements Serializable { return content; } - public void setContent(String content) { - this.content = content; - } - public String getDigest() { return digest; } diff --git a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/MpVideo.java b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/MpVideo.java index edb5e678..60e76462 100644 --- a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/MpVideo.java +++ b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/MpVideo.java @@ -40,10 +40,6 @@ public class MpVideo implements MassTuple { return mediaId; } - public void setMediaId(String mediaId) { - this.mediaId = mediaId; - } - @Override public String toString() { return "MpVideo [mediaId=" + mediaId + "]"; diff --git a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/Music.java b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/Music.java index 0fb3de2c..d9d884d1 100644 --- a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/Music.java +++ b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/Music.java @@ -104,10 +104,6 @@ public class Music implements NotifyTuple { return thumbMediaId; } - public void setThumbMediaId(String thumbMediaId) { - this.thumbMediaId = thumbMediaId; - } - @Override public String toString() { return "Music [title=" + title + ", desc=" + desc + ", musicUrl=" diff --git a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/Text.java b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/Text.java index 83d5c589..87232032 100644 --- a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/Text.java +++ b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/Text.java @@ -1,6 +1,5 @@ package com.foxinmy.weixin4j.tuple; -import javax.xml.bind.annotation.XmlRootElement; /** * 文本对象 @@ -14,7 +13,6 @@ import javax.xml.bind.annotation.XmlRootElement; * @since JDK 1.7 * @see */ -@XmlRootElement(name = "Content") public class Text implements MassTuple, NotifyTuple { private static final long serialVersionUID = 520050144519064503L; diff --git a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/Video.java b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/Video.java index 91ee2e4f..4e30195f 100644 --- a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/Video.java +++ b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/tuple/Video.java @@ -73,10 +73,6 @@ public class Video implements NotifyTuple { return mediaId; } - public void setMediaId(String mediaId) { - this.mediaId = mediaId; - } - public String getThumbMediaId() { return thumbMediaId; } diff --git a/weixin4j-server/src/main/java/com/foxinmy/weixin4j/dispatcher/WeixinMessageMatcher.java b/weixin4j-server/src/main/java/com/foxinmy/weixin4j/dispatcher/WeixinMessageMatcher.java deleted file mode 100644 index 07e88f2d..00000000 --- a/weixin4j-server/src/main/java/com/foxinmy/weixin4j/dispatcher/WeixinMessageMatcher.java +++ /dev/null @@ -1,192 +0,0 @@ -package com.foxinmy.weixin4j.dispatcher; - -import io.netty.util.internal.logging.InternalLogger; -import io.netty.util.internal.logging.InternalLoggerFactory; - -import java.util.HashMap; -import java.util.Map; - -import com.foxinmy.weixin4j.message.ImageMessage; -import com.foxinmy.weixin4j.message.LocationMessage; -import com.foxinmy.weixin4j.message.TextMessage; -import com.foxinmy.weixin4j.message.VideoMessage; -import com.foxinmy.weixin4j.message.VoiceMessage; -import com.foxinmy.weixin4j.message.event.LocationEventMessage; -import com.foxinmy.weixin4j.messagekey.WeixinMessageKeyDefiner; -import com.foxinmy.weixin4j.mp.event.KfCloseEventMessage; -import com.foxinmy.weixin4j.mp.event.KfCreateEventMessage; -import com.foxinmy.weixin4j.mp.event.KfSwitchEventMessage; -import com.foxinmy.weixin4j.mp.event.MassEventMessage; -import com.foxinmy.weixin4j.mp.event.ScanEventMessage; -import com.foxinmy.weixin4j.mp.event.TemplatesendjobfinishMessage; -import com.foxinmy.weixin4j.qy.event.BatchjobresultMessage; -import com.foxinmy.weixin4j.qy.event.EnterAgentEventMessage; -import com.foxinmy.weixin4j.type.AccountType; -import com.foxinmy.weixin4j.type.EventType; -import com.foxinmy.weixin4j.type.MessageType; - -/** - * 微信消息匹配(不够优雅,待改进) - * - * @className WeixinMessageMatcher - * @author jy - * @date 2015年5月17日 - * @since JDK 1.7 - * @see com.foxinmy.weixin4j.request.WeixinMessage - * @see com.foxinmy.weixin4j.messagekey.WeixinMessageKeyDefiner - */ -public class WeixinMessageMatcher { - - private final InternalLogger logger = InternalLoggerFactory - .getInstance(getClass()); - - private final Map