微信公众号模板消息配置和发送

代码实现思路

上代码

一:根据模板封装一个map对象

HashMap<String, String> map = new HashMap<>();
    map.put("openId", "oOTJU60hq-mQ9tGKurMuAPFcFIxg");
    map.put("template_id", "-d7t3A4gBhejn0j-feResggYBxKJIRuPdUFE-GZE2eE");
		
    map.put("first", "尊敬的助学者,您有一张卡券即将过期失效");
    map.put("keyword1",9999);
    map.put("keyword2", 120 + "元");
    map.put("keyword3","9999年09月09日");
    String remark = "请及时使用!";
    map.put("remark", remark);

二:map对象和openId,templateId封装

@Data
public class TemplateData {
    private Map<String,String> first;
    private Map<String,String> keyword1;
    private Map<String,String> keyword2;
    private Map<String,String> keyword3;
    private Map<String,String> keyword4;
    private Map<String,String> remark;
}

@Data
public class TemplateMessage {
    //openId
    private String touser;
    //template_id
    private String template_id;
    //color--非必须
    private String topcolor;
    //data
    public TemplateData data;
    //url
    public String url;
}

    // 封装
    TemplateData templateData = new TemplateData();
    HashMap<String, String> first = new HashMap<>();
    HashMap<String, String> keyword1 = new HashMap<>();
    HashMap<String, String> keyword2 = new HashMap<>();
    HashMap<String, String> keyword3 = new HashMap<>();
    HashMap<String, String> remark = new HashMap<>();
    
    // 此map来自上面封装的map对象
    first.put("value", map.get("first"));
    keyword1.put("value", map.get("keyword1"));
    keyword2.put("value", map.get("keyword2"));
    keyword3.put("value", map.get("keyword3"));
    remark.put("value", map.get("remark"));
    
    templateData.setFirst(first);
    templateData.setKeyword1(keyword1);
    templateData.setKeyword2(keyword2);
    templateData.setKeyword3(keyword3);
    templateData.setKeyword4(keyword4);
    templateData.setRemark(remark);

    TemplateMessage templateMessage = new TemplateMessage();
    templateMessage.setTouser(map.get("openId"));
    templateMessage.setTemplate_id(map.get("template_id"));
    templateMessage.setData(templateData);

三:向用户发送模板消息

获取微信发送模板消息的接口

开始发送消息

经验分享 程序员 微信小程序 职场和发展