@@ -1,5 +1,6 @@ | |||||
package cn.binarywang.wx.miniapp.bean; | package cn.binarywang.wx.miniapp.bean; | ||||
import cn.binarywang.wx.miniapp.constant.WxMaConstants; | |||||
import cn.binarywang.wx.miniapp.util.json.WxMaGsonBuilder; | import cn.binarywang.wx.miniapp.util.json.WxMaGsonBuilder; | ||||
import lombok.*; | import lombok.*; | ||||
@@ -61,6 +62,16 @@ public class WxMaSubscribeMessage implements Serializable { | |||||
*/ | */ | ||||
private List<Data> data; | private List<Data> data; | ||||
/** | |||||
* 跳转小程序类型:developer为开发版;trial为体验版;formal为正式版;默认为正式版 | |||||
*/ | |||||
private String miniprogramState = WxMaConstants.MiniprogramState.FORMAL; | |||||
/** | |||||
* 进入小程序查看的语言类型,支持zh_CN(简体中文)、en_US(英文)、zh_HK(繁体中文)、zh_TW(繁体中文),默认为zh_CN | |||||
*/ | |||||
private String lang = WxMaConstants.MiniprogramLang.ZH_CN; | |||||
public WxMaSubscribeMessage addData(Data datum) { | public WxMaSubscribeMessage addData(Data datum) { | ||||
if (this.data == null) { | if (this.data == null) { | ||||
this.data = new ArrayList<>(); | this.data = new ArrayList<>(); | ||||
@@ -137,4 +137,54 @@ public class WxMaConstants { | |||||
*/ | */ | ||||
public static final int DEFAULT_INSURED_VALUE = 0; | public static final int DEFAULT_INSURED_VALUE = 0; | ||||
} | } | ||||
/** | |||||
* 小程序订阅消息跳转小程序类型 | |||||
* | |||||
* developer为开发版;trial为体验版;formal为正式版;默认为正式版 | |||||
*/ | |||||
public static final class MiniprogramState{ | |||||
/** | |||||
* 开发版 | |||||
*/ | |||||
public static final String DEVELOPER = "developer"; | |||||
/** | |||||
* 体验版 | |||||
*/ | |||||
public static final String TRIAL = "trial"; | |||||
/** | |||||
* 正式版 | |||||
*/ | |||||
public static final String FORMAL = "formal"; | |||||
} | |||||
/** | |||||
* 进入小程序查看的语言类型 | |||||
* 支持zh_CN(简体中文)、en_US(英文)、zh_HK(繁体中文)、zh_TW(繁体中文),默认为zh_CN | |||||
*/ | |||||
public static final class MiniprogramLang{ | |||||
/** | |||||
* 简体中文 | |||||
*/ | |||||
public static final String ZH_CN = "zh_CN"; | |||||
/** | |||||
* 英文 | |||||
*/ | |||||
public static final String EN_US = "en_US"; | |||||
/** | |||||
* 繁体中文 | |||||
*/ | |||||
public static final String ZH_HK = "zh_HK"; | |||||
/** | |||||
* 繁体中文 | |||||
*/ | |||||
public static final String ZH_TW = "zh_TW"; | |||||
} | |||||
} | } |
@@ -23,6 +23,14 @@ public class WxMaSubscribeMessageGsonAdapter implements JsonSerializer<WxMaSubsc | |||||
messageJson.addProperty("page", message.getPage()); | messageJson.addProperty("page", message.getPage()); | ||||
} | } | ||||
if (message.getMiniprogramState() != null) { | |||||
messageJson.addProperty("miniprogram_state", message.getMiniprogramState()); | |||||
} | |||||
if (message.getLang() != null) { | |||||
messageJson.addProperty("lang", message.getLang()); | |||||
} | |||||
JsonObject data = new JsonObject(); | JsonObject data = new JsonObject(); | ||||
messageJson.add("data", data); | messageJson.add("data", data); | ||||
@@ -2,6 +2,10 @@ package cn.binarywang.wx.miniapp.api.impl; | |||||
import cn.binarywang.wx.miniapp.api.WxMaService; | import cn.binarywang.wx.miniapp.api.WxMaService; | ||||
import cn.binarywang.wx.miniapp.bean.*; | import cn.binarywang.wx.miniapp.bean.*; | ||||
import cn.binarywang.wx.miniapp.constant.WxMaConstants; | |||||
import org.testng.annotations.*; | |||||
import cn.binarywang.wx.miniapp.api.WxMaService; | |||||
import cn.binarywang.wx.miniapp.test.ApiTestModule; | import cn.binarywang.wx.miniapp.test.ApiTestModule; | ||||
import cn.binarywang.wx.miniapp.test.TestConfig; | import cn.binarywang.wx.miniapp.test.TestConfig; | ||||
import com.google.common.collect.Lists; | import com.google.common.collect.Lists; | ||||
@@ -68,6 +72,8 @@ public class WxMaMsgServiceImplTest { | |||||
WxMaSubscribeMessage message = new WxMaSubscribeMessage(); | WxMaSubscribeMessage message = new WxMaSubscribeMessage(); | ||||
message.setTemplateId(config.getTemplateId()); | message.setTemplateId(config.getTemplateId()); | ||||
message.setToUser(config.getOpenid()); | message.setToUser(config.getOpenid()); | ||||
message.setLang(WxMaConstants.MiniprogramLang.ZH_CN); | |||||
message.setMiniprogramState(WxMaConstants.MiniprogramState.FORMAL); | |||||
message.addData(new WxMaSubscribeMessage.Data("thing1", "苹果到货啦")); | message.addData(new WxMaSubscribeMessage.Data("thing1", "苹果到货啦")); | ||||
message.addData(new WxMaSubscribeMessage.Data("amount3", "¥5")); | message.addData(new WxMaSubscribeMessage.Data("amount3", "¥5")); | ||||
message.addData(new WxMaSubscribeMessage.Data("thing5", "记得领取哦")); | message.addData(new WxMaSubscribeMessage.Data("thing5", "记得领取哦")); | ||||