jinpengyong
2023-11-03 ed05d0e27515d4fb054284e77af94c5d0ebed3c1
chore:推送接口提交
3 files modified
52 ■■■■ changed files
screen-api/src/main/java/com/moral/api/controller/AppUserController.java 42 ●●●● patch | view | raw | blame | history
screen-api/src/main/java/com/moral/api/utils/HttpClientUtil.java 4 ●●●● patch | view | raw | blame | history
screen-api/src/main/java/com/moral/api/vo/WxMssVo.java 6 ●●●●● patch | view | raw | blame | history
screen-api/src/main/java/com/moral/api/controller/AppUserController.java
@@ -18,6 +18,7 @@
import java.util.HashMap;
import java.util.Map;
import com.alibaba.fastjson.JSON;
import com.moral.api.service.UserService;
import com.moral.api.utils.HttpClientUtil;
@@ -67,8 +68,8 @@
    @GetMapping("pushOneUser")
    @ApiOperation(value = "小程序推送消息")
    public  ResultMessage pushOneUser(String openid){
        String body = push("oOCWi6yfVapaK25Jnkk7jKSbMLyw");
    public  ResultMessage pushOneUser(){
        String body = push("oOCWi6-_hnzSvrMT8HX5D7Dz7tEA");
        return ResultMessage.ok(body);
    }
@@ -76,20 +77,39 @@
    public String push(String openid) {
        RestTemplate restTemplate = new RestTemplate();
        //这里简单起见我们每次都获取最新的access_token(时间开发中,应该在access_token快过期时再重新获取)
        //小程序订阅
        String url = "https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token=" + HttpClientUtil.getAccessToken();
//        String url = "https://api.weixin.qq.com/cgi-bin/message/wxopen/template/send?access_token=" + HttpClientUtil.getAccessToken();
//        String url = "https://api.weixin.qq.com/cgi-bin/message/wxopen/template/uniform_send?access_token=" + HttpClientUtil.getAccessToken();
//        String url = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=" + HttpClientUtil.getAccessToken();
          //小程序客服
//        String url = "https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=" + HttpClientUtil.getAccessToken();
        //拼接推送的模版
        WxMssVo wxMssVo = new WxMssVo();
        wxMssVo.setTouser(openid);//用户的openid(要发送给那个用户,通常这里应该动态传进来的)
        wxMssVo.setTemplate_id("sClgB85aEG1hgaiXpnJBopo5LJX6r91DUsyikOmUgv8");//订阅消息模板id
        wxMssVo.setPage("pages/index/index");
        wxMssVo.setTemplate_id("YNqUZ1MgMvwY3G-NENVbcmIBR5dUotSdnwcz96CWrho");//订阅消息模板id
        wxMssVo.setLang("zh_CN");
        wxMssVo.setMiniprogramState("formal");
//        wxMssVo.setPage("pages/index/index");
        Map<String, String> m = new HashMap<>(3);
        m.put("time2", "2023-10-23");
        m.put("thing3", "七星");
        m.put("thing7", "第一章第一节");
        m.put("character_string8", "第一章第一节");
        m.put("phrase10", "第一章第一节");
        wxMssVo.setData(m);
        Map<String, Object> m = new HashMap<>();
        HashMap<String, Object> map1 = new HashMap<>();
        HashMap<String, Object> map2 = new HashMap<>();
        HashMap<String, Object> map3 = new HashMap<>();
        HashMap<String, Object> map4 = new HashMap<>();
        map1.put("value","欧阳仑2");
        map2.put("value","ouyanglun");
        map3.put("value","巧克力1");
        map4.put("value","2023-10-16");
        m.put("thing18", map1);
        m.put("character_string1", map2);
        m.put("thing2", map3);
        m.put("date4", map4);
        wxMssVo.setData(JSON.toJSON(m));
        ResponseEntity<String> responseEntity =
                restTemplate.postForEntity(url, wxMssVo, String.class);
        return responseEntity.getBody();
screen-api/src/main/java/com/moral/api/utils/HttpClientUtil.java
@@ -143,8 +143,8 @@
    public static String getAccessToken() {
        RestTemplate restTemplate = new RestTemplate();
        Map<String, String> params = new HashMap<>();
        params.put("APPID", "wx7c54942dfc87f4d8");  //
        params.put("APPSECRET", "5873a729c365b65ab42bb5fc82d2ed49");  //
        params.put("APPID", "wxf95fb77e0b1f8c09");  //
        params.put("APPSECRET", "acf3be9facf7f26bb8286c9b4eff93d0");  //
        ResponseEntity<String> responseEntity = restTemplate.getForEntity(
                "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={APPID}&secret={APPSECRET}", String.class, params);
        String body = responseEntity.getBody();
screen-api/src/main/java/com/moral/api/vo/WxMssVo.java
@@ -8,6 +8,8 @@
public class WxMssVo {
    private String touser;//用户openid
    private String template_id;//订阅消息模版id
    private String page = "pages/index/index";//默认跳到小程序首页
    private Map<String, String> data;//推送文字
//    private String page = "pages/index/index";//默认跳到小程序首页
    private Object data;//推送文字
    private  String miniprogramState;
    private  String lang;
}