Skip to content

Commit 6aa8559

Browse files
authored
🎨 #1406 小程序订阅消息发送接口增加新参数:mniprogram_state 和 lang
1 parent 70640f4 commit 6aa8559

File tree

4 files changed

+75
-0
lines changed

4 files changed

+75
-0
lines changed

weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/bean/WxMaSubscribeMessage.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package cn.binarywang.wx.miniapp.bean;
22

3+
import cn.binarywang.wx.miniapp.constant.WxMaConstants;
34
import cn.binarywang.wx.miniapp.util.json.WxMaGsonBuilder;
45
import lombok.*;
56

@@ -61,6 +62,16 @@ public class WxMaSubscribeMessage implements Serializable {
6162
*/
6263
private List<Data> data;
6364

65+
/**
66+
* 跳转小程序类型:developer为开发版;trial为体验版;formal为正式版;默认为正式版
67+
*/
68+
private String miniprogramState = WxMaConstants.MiniprogramState.FORMAL;
69+
70+
/**
71+
* 进入小程序查看的语言类型,支持zh_CN(简体中文)、en_US(英文)、zh_HK(繁体中文)、zh_TW(繁体中文),默认为zh_CN
72+
*/
73+
private String lang = WxMaConstants.MiniprogramLang.ZH_CN;
74+
6475
public WxMaSubscribeMessage addData(Data datum) {
6576
if (this.data == null) {
6677
this.data = new ArrayList<>();

weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/constant/WxMaConstants.java

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -137,4 +137,54 @@ public static final class OrderAddInsured{
137137
*/
138138
public static final int DEFAULT_INSURED_VALUE = 0;
139139
}
140+
141+
142+
/**
143+
* 小程序订阅消息跳转小程序类型
144+
*
145+
* developer为开发版;trial为体验版;formal为正式版;默认为正式版
146+
*/
147+
public static final class MiniprogramState{
148+
/**
149+
* 开发版
150+
*/
151+
public static final String DEVELOPER = "developer";
152+
153+
/**
154+
* 体验版
155+
*/
156+
public static final String TRIAL = "trial";
157+
158+
/**
159+
* 正式版
160+
*/
161+
public static final String FORMAL = "formal";
162+
}
163+
164+
165+
/**
166+
* 进入小程序查看的语言类型
167+
* 支持zh_CN(简体中文)、en_US(英文)、zh_HK(繁体中文)、zh_TW(繁体中文),默认为zh_CN
168+
*/
169+
public static final class MiniprogramLang{
170+
/**
171+
* 简体中文
172+
*/
173+
public static final String ZH_CN = "zh_CN";
174+
175+
/**
176+
* 英文
177+
*/
178+
public static final String EN_US = "en_US";
179+
180+
/**
181+
* 繁体中文
182+
*/
183+
public static final String ZH_HK = "zh_HK";
184+
185+
/**
186+
* 繁体中文
187+
*/
188+
public static final String ZH_TW = "zh_TW";
189+
}
140190
}

weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/util/json/WxMaSubscribeMessageGsonAdapter.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,14 @@ public JsonElement serialize(WxMaSubscribeMessage message, Type typeOfSrc, JsonS
2323
messageJson.addProperty("page", message.getPage());
2424
}
2525

26+
if (message.getMiniprogramState() != null) {
27+
messageJson.addProperty("miniprogram_state", message.getMiniprogramState());
28+
}
29+
30+
if (message.getLang() != null) {
31+
messageJson.addProperty("lang", message.getLang());
32+
}
33+
2634
JsonObject data = new JsonObject();
2735
messageJson.add("data", data);
2836

weixin-java-miniapp/src/test/java/cn/binarywang/wx/miniapp/api/impl/WxMaMsgServiceImplTest.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@
22

33
import cn.binarywang.wx.miniapp.api.WxMaService;
44
import cn.binarywang.wx.miniapp.bean.*;
5+
import cn.binarywang.wx.miniapp.constant.WxMaConstants;
6+
import org.testng.annotations.*;
7+
8+
import cn.binarywang.wx.miniapp.api.WxMaService;
59
import cn.binarywang.wx.miniapp.test.ApiTestModule;
610
import cn.binarywang.wx.miniapp.test.TestConfig;
711
import com.google.common.collect.Lists;
@@ -68,6 +72,8 @@ public void testSendSubscribeMsg() throws WxErrorException {
6872
WxMaSubscribeMessage message = new WxMaSubscribeMessage();
6973
message.setTemplateId(config.getTemplateId());
7074
message.setToUser(config.getOpenid());
75+
message.setLang(WxMaConstants.MiniprogramLang.ZH_CN);
76+
message.setMiniprogramState(WxMaConstants.MiniprogramState.FORMAL);
7177
message.addData(new WxMaSubscribeMessage.Data("thing1", "苹果到货啦"));
7278
message.addData(new WxMaSubscribeMessage.Data("amount3", "¥5"));
7379
message.addData(new WxMaSubscribeMessage.Data("thing5", "记得领取哦"));

0 commit comments

Comments
 (0)