package com.care.client.controller; import com.care.common.service.WxTemplateService; import com.care.client.dto.TemplateDataDTO; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; import java.text.SimpleDateFormat; import java.util.Date; import java.util.HashMap; import java.util.Map; @Api(tags = "模板测试") @RestController @RequestMapping("/wxtemplate") @Slf4j public class TestWxController { @Resource private WxTemplateService wxTemplateService; @ApiOperation(value = "模板测试", notes = "消息发送") @GetMapping("send") public void test(@RequestParam("openId") String openId, @RequestParam("templateId") String templateId) { // WxAccessTokenVO wxda02870032b8f928 = WxTemplateUtil.getAccessToken("wxda02870032b8f928", "5984b6cf5dad4693eb60cbc494d9f385"); // System.out.println(); // WxConfig wxConfig = platformPinanbaoConfig.wxConfig(); // 获取accessToken // WxAccessTokenVO wxAccessTokenVO = WxTemplateUtil.getAccessToken(wxConfig.getAppId(), wxConfig.getSecret()); // WxAccessTokenVO wxAccessTokenVO = WxTemplateUtil.getAccessToken("wxf393853ab94c853f", "f3fc21fee8de01d79ded7f799a4d2d4d"); // WxAccessTokenVO wxAccessTokenVO = new WxAccessTokenVO(); // wxAccessTokenVO.setAccessToken("50_hMKs4nHb0yvJwhfByWRc01Zq_ksQ34mfWHwHkymrT560MuDcW8DMuRTKTa5QjH06ZL-slBSGqKR42R7cPWsFoy6u7wlkpEDQgjG-Hv0YG9GA3FEZRMUsd-Zy0ePKCN06Ur2uNrzNPkdefA6tSEKjADAVHN"); // wxAccessTokenVO.setExpiresIn(7200); // WxAccessTokenVO wxAccessTokenVO = new WxAccessTokenVO(); // if (redisUtil.hasKey(RedisKeyConstant.YUANSERVICE_ACCESSTOKEN + "y")) { // wxAccessTokenVO.setAccessToken(ObjectUtils.toString(redisUtil.get(RedisKeyConstant.YUANSERVICE_ACCESSTOKEN))); // } else { // wxAccessTokenVO = WxTemplateUtil.getAccessToken("wxf393853ab94c853f", "f3fc21fee8de01d79ded7f799a4d2d4d"); // wxAccessTokenVO = WxTemplateUtil.getAccessToken("wxd735a330f9387639", "f0b4652c392b7cae457fe9d986115052"); // if (wxAccessTokenVO == null || StringUtils.isBlank(wxAccessTokenVO.getAccessToken())) { // return; // } // redisUtil.set(RedisKeyConstant.YUANSERVICE_ACCESSTOKEN, wxAccessTokenVO.getAccessToken(),60 * 100); // } // WxTemplateUtil.getUserOpenIdList(wxAccessTokenVO.getAccessToken(), "oAIrY6RoG56fKOZZD6auXgdheV_Y"); // System.out.println("token: " + wxAccessTokenVO.getAccessToken()); // 消息模板对象 // WxTemplateDTO wxTemplateDTO = new WxTemplateDTO(); // 时间格式转换 SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); // 用户openIdopenid -> // wxTemplateDTO.setTouser("oAIrY6RoG56fKOZZD6auXgdheV_Y"); // self // wxTemplateDTO.setTouser("oAIrY6ci3o4O_HtGGKzVj495vV7M"); // wxTemplateDTO.setTouser("oAvJS6tYkZCwm6xC8m6uqW-UjBGc"); // 模板ID // wxTemplateDTO.setTemplate_id("1M1kDRDW-kMSoOzmv9cP-SImD1kXWtezwyWe8euUJIc"); // wxTemplateDTO.setTemplate_id("S86r6mkzaKIv-m9HndhFgCmyCrrv9Uw87_5THakYCkQ"); // 跳转页面设置(仅限上线后的小程序,测试时可以忽略此属性) // wxTemplateDTO.setPage("pages/index/index"); Map data = new HashMap<>(); data.put("first", new TemplateDataDTO("您关联的与安宝设备上传一条安全事件", "#ff5200")); data.put("keyword1", new TemplateDataDTO("跌倒报警", "#000000")); data.put("keyword2", new TemplateDataDTO(simpleDateFormat.format(new Date()), "#000000")); data.put("keyword3", new TemplateDataDTO("北京市丰台区金桥东街6号 顶秀金石家园1号楼1单元111室", "#000000")); data.put("remark", new TemplateDataDTO("请尽快联系您的被监护人, 确认现场情况", "#ff5200")); // 模板内容 // wxTemplateDTO.setData(data); // 发送消息模板 // boolean flag = wxTemplateService.sendTemplateMsg("oyVYT6Ox9b88n_33lgKWRj5uFbUY", "S86r6mkzaKIv-m9HndhFgCmyCrrv9Uw87_5THakYCkQ", data); boolean flag = wxTemplateService.sendTemplateMsg(openId, templateId, "wxda02870032b8f928", "/page/index/index", data); log.info("发送消息模板: openId: " + openId + ", templateId: " + templateId + " 状态: " + flag); } }