|
|
|
@@ -1,8 +1,10 @@ |
|
|
|
package com.iformall.service.msg.impl; |
|
|
|
|
|
|
|
import cn.binarywang.wx.miniapp.api.WxMaService; |
|
|
|
import cn.binarywang.wx.miniapp.bean.WxMaSubscribeMessage; |
|
|
|
import cn.binarywang.wx.miniapp.bean.WxMaTemplateData; |
|
|
|
import cn.binarywang.wx.miniapp.bean.WxMaTemplateMessage; |
|
|
|
import cn.binarywang.wx.miniapp.constant.WxMaConstants; |
|
|
|
import com.alibaba.fastjson.JSON; |
|
|
|
import com.alibaba.fastjson.JSONArray; |
|
|
|
import com.alibaba.fastjson.JSONObject; |
|
|
|
@@ -50,7 +52,8 @@ public class SendSmartAppMsgServiceImpl implements MsgSendService { |
|
|
|
TenantEntity tenantEntity = smartAppMsg.getTenantInfo(); |
|
|
|
|
|
|
|
WxTemplateMsg msg = null; |
|
|
|
WxMaTemplateMessage templateMessage; |
|
|
|
WxMaSubscribeMessage subscribeMessage; |
|
|
|
// WxMaTemplateMessage templateMessage; |
|
|
|
|
|
|
|
WxMaService wxMaService = null; |
|
|
|
if(isFmOpen) { |
|
|
|
@@ -79,24 +82,45 @@ public class SendSmartAppMsgServiceImpl implements MsgSendService { |
|
|
|
String emphasis = customParam.getString("emphasis"); |
|
|
|
|
|
|
|
// build template data list |
|
|
|
List<WxMaTemplateData> dataTempList = new ArrayList<>(); |
|
|
|
List<String> dataList = smartAppMsg.getDataList(); |
|
|
|
JSONArray indexArr = customParam.getJSONArray("index"); |
|
|
|
|
|
|
|
List<WxMaSubscribeMessage.Data> dataTempList = new ArrayList<>(); |
|
|
|
for(int i=0;i<indexArr.size();i++) { |
|
|
|
String key = indexArr.getString(i); |
|
|
|
String value = customParam.getString(key); |
|
|
|
value = value.replace("{"+key+"}", dataList.get(i)); |
|
|
|
WxMaTemplateData templateData = new WxMaTemplateData(key, value); |
|
|
|
String value = dataList.get(i); |
|
|
|
WxMaSubscribeMessage.Data templateData = new WxMaSubscribeMessage.Data(key, value); |
|
|
|
dataTempList.add(templateData); |
|
|
|
} |
|
|
|
templateMessage = WxMaTemplateMessage.builder() |
|
|
|
|
|
|
|
// List<WxMaTemplateData> dataTempList = new ArrayList<>(); |
|
|
|
// for(int i=0;i<indexArr.size();i++) { |
|
|
|
// String key = indexArr.getString(i); |
|
|
|
// String value = customParam.getString(key); |
|
|
|
// value = value.replace("{"+key+"}", dataList.get(i)); |
|
|
|
// WxMaTemplateData templateData = new WxMaTemplateData(key, value); |
|
|
|
// dataTempList.add(templateData); |
|
|
|
// } |
|
|
|
|
|
|
|
// templateMessage = WxMaTemplateMessage.builder() |
|
|
|
// .toUser(smartAppMsg.getTo()) |
|
|
|
// .formId(smartAppMsg.getFormId()) // 微信支付的formId是prepayId |
|
|
|
// .page(smartAppMsg.getGotopage()) |
|
|
|
// .data(dataTempList) |
|
|
|
// .templateId(msg.getTemplateId()) |
|
|
|
// .emphasisKeyword(emphasis) |
|
|
|
// .build(); |
|
|
|
// wxMaService.getMsgService().sendTemplateMsg(templateMessage); |
|
|
|
|
|
|
|
subscribeMessage = WxMaSubscribeMessage.builder() |
|
|
|
.templateId(msg.getTemplateId()) |
|
|
|
.toUser(smartAppMsg.getTo()) |
|
|
|
.formId(smartAppMsg.getFormId()) // 微信支付的formId是prepayId |
|
|
|
.lang(WxMaConstants.MiniprogramLang.ZH_CN) |
|
|
|
.miniprogramState(WxMaConstants.MiniprogramState.FORMAL) |
|
|
|
.page(smartAppMsg.getGotopage()) |
|
|
|
.data(dataTempList) |
|
|
|
.templateId(msg.getTemplateId()) |
|
|
|
.emphasisKeyword(emphasis) |
|
|
|
.build(); |
|
|
|
wxMaService.getMsgService().sendTemplateMsg(templateMessage); |
|
|
|
|
|
|
|
wxMaService.getMsgService().sendSubscribeMsg(subscribeMessage); |
|
|
|
} |
|
|
|
} |