mirror of
https://gitee.com/binary/weixin-java-tools.git
synced 2025-09-21 02:58:09 +08:00
#265 几个NewsBuilder支持直接设置Article或Item对象列表
This commit is contained in:
@@ -5,6 +5,7 @@ import me.chanjar.weixin.cp.bean.WxCpMessage;
|
||||
import me.chanjar.weixin.cp.bean.article.MpnewsArticle;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
@@ -30,8 +31,13 @@ public final class MpnewsBuilder extends BaseBuilder<MpnewsBuilder> {
|
||||
return this;
|
||||
}
|
||||
|
||||
public MpnewsBuilder addArticle(MpnewsArticle article) {
|
||||
this.articles.add(article);
|
||||
public MpnewsBuilder addArticle(MpnewsArticle... articles) {
|
||||
Collections.addAll(this.articles, articles);
|
||||
return this;
|
||||
}
|
||||
|
||||
public MpnewsBuilder articles(List<MpnewsArticle> articles) {
|
||||
this.articles = articles;
|
||||
return this;
|
||||
}
|
||||
|
||||
|
@@ -5,6 +5,7 @@ import me.chanjar.weixin.cp.bean.WxCpMessage;
|
||||
import me.chanjar.weixin.cp.bean.article.NewArticle;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
@@ -24,8 +25,13 @@ public final class NewsBuilder extends BaseBuilder<NewsBuilder> {
|
||||
this.msgType = WxConsts.CUSTOM_MSG_NEWS;
|
||||
}
|
||||
|
||||
public NewsBuilder addArticle(NewArticle article) {
|
||||
this.articles.add(article);
|
||||
public NewsBuilder addArticle(NewArticle... articles) {
|
||||
Collections.addAll(this.articles, articles);
|
||||
return this;
|
||||
}
|
||||
|
||||
public NewsBuilder articles(List<NewArticle> articles) {
|
||||
this.articles = articles;
|
||||
return this;
|
||||
}
|
||||
|
||||
|
@@ -4,6 +4,7 @@ import me.chanjar.weixin.cp.bean.WxCpXmlOutNewsMessage;
|
||||
import me.chanjar.weixin.cp.bean.WxCpXmlOutNewsMessage.Item;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
@@ -12,11 +13,15 @@ import java.util.List;
|
||||
* @author Daniel Qian
|
||||
*/
|
||||
public final class NewsBuilder extends BaseBuilder<NewsBuilder, WxCpXmlOutNewsMessage> {
|
||||
private List<Item> articles = new ArrayList<>();
|
||||
|
||||
protected final List<Item> articles = new ArrayList<>();
|
||||
public NewsBuilder addArticle(Item... items) {
|
||||
Collections.addAll(this.articles, items);
|
||||
return this;
|
||||
}
|
||||
|
||||
public NewsBuilder addArticle(Item item) {
|
||||
this.articles.add(item);
|
||||
public NewsBuilder articles(List<Item> articles){
|
||||
this.articles = articles;
|
||||
return this;
|
||||
}
|
||||
|
||||
|
@@ -3,9 +3,9 @@ package me.chanjar.weixin.cp.bean;
|
||||
import me.chanjar.weixin.common.api.WxConsts;
|
||||
import me.chanjar.weixin.cp.bean.article.MpnewsArticle;
|
||||
import me.chanjar.weixin.cp.bean.article.NewArticle;
|
||||
import org.testng.annotations.Test;
|
||||
import org.testng.annotations.*;
|
||||
|
||||
import static org.testng.Assert.assertEquals;
|
||||
import static org.testng.Assert.*;
|
||||
|
||||
@Test
|
||||
public class WxCpMessageTest {
|
||||
@@ -127,11 +127,9 @@ public class WxCpMessageTest {
|
||||
.thumbMediaId("thumb")
|
||||
.build();
|
||||
|
||||
WxCpMessage reply = WxCpMessage.MPNEWS().toUser("OPENID").addArticle(article1).addArticle(article2).build();
|
||||
WxCpMessage reply = WxCpMessage.MPNEWS().toUser("OPENID").addArticle(article1, article2).build();
|
||||
|
||||
assertEquals(reply.toJson(), "{\"touser\":\"OPENID\",\"msgtype\":\"mpnews\"," +
|
||||
"\"mpnews\":{\"articles\":[{\"title\":\"Happy Day\",\"thumb_media_id\":\"thumb\",\"author\":\"aaaaaa\",\"content_source_url\":\"nice url\",\"content\":\"hahaha\",\"digest\":\"digest\",\"show_cover_pic\":\"heihei\"}," +
|
||||
"{\"title\":\"Happy Day\",\"thumb_media_id\":\"thumb\",\"author\":\"aaaaaa\",\"content_source_url\":\"nice url\",\"content\":\"hahaha\",\"digest\":\"digest\",\"show_cover_pic\":\"heihei\"}]}}");
|
||||
assertEquals(reply.toJson(), "{\"touser\":\"OPENID\",\"msgtype\":\"mpnews\",\"safe\":\"0\",\"mpnews\":{\"articles\":[{\"title\":\"Happy Day\",\"thumb_media_id\":\"thumb\",\"author\":\"aaaaaa\",\"content_source_url\":\"nice url\",\"content\":\"hahaha\",\"digest\":\"digest\",\"show_cover_pic\":\"heihei\"},{\"title\":\"Happy Day\",\"thumb_media_id\":\"thumb\",\"author\":\"aaaaaa\",\"content_source_url\":\"nice url\",\"content\":\"hahaha\",\"digest\":\"digest\",\"show_cover_pic\":\"heihei\"}]}}");
|
||||
}
|
||||
|
||||
public void testMpnewsBuild_with_media_id() {
|
||||
|
Reference in New Issue
Block a user