k94314517
2024-08-27 532d1286a13a10e78283cf8e4f5af6f6f6226a39
代码提交
已添加3个文件
已修改2个文件
134 ■■■■■ 文件已修改
server/service/src/main/java/com/doumee/biz/zbom/model/zhongtai/response/ZTTagChildInfoResponse.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/service/src/main/java/com/doumee/core/wx/SendWxMessage.java 76 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/service/src/main/java/com/doumee/core/wx/TemplateData.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/service/src/main/java/com/doumee/core/wx/WxMsgVO.java 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/web/src/main/java/com/doumee/api/web/CustomerApi.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/service/src/main/java/com/doumee/biz/zbom/model/zhongtai/response/ZTTagChildInfoResponse.java
@@ -33,4 +33,6 @@
    @ApiModelProperty(value = "标签值排序")
    private String labelValueSort;
    @ApiModelProperty(value = "子标签信息")
    private List<ZTTagInfoResponse> relLabel;
}
server/service/src/main/java/com/doumee/core/wx/SendWxMessage.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,76 @@
package com.doumee.core.wx;
import com.alibaba.fastjson.JSONObject;
import com.doumee.biz.system.SystemDictDataBiz;
import com.doumee.core.utils.Constants;
import com.doumee.core.utils.DateUtil;
import com.doumee.dao.system.model.SystemDictData;
import com.doumee.dao.system.model.SystemUser;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Service;
import org.springframework.web.client.RestTemplate;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
/**
 * Created by IntelliJ IDEA.
 *
 * @Author : Rk
 * @create 2022/12/7 17:27
 */
@Service
@Slf4j
public class SendWxMessage {
    private static String programUrl = "packagesMine/meetingDetails/meetingDetails?id=";
    public  void  testMessage(String openid,String token){
        RestTemplate restTemplate = new RestTemplate();
        log.info("微信小程序 ä¼šè®®å¼€å§‹è®¢é˜…消息发送日志 -> accessToken:{}",token);
        //这里简单起见我们每次都获取最新的access_token(时间开发中,应该在access_token快过期时再重新获取)
        String url = "https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token="+token;
        //拼接推送的模版
        WxMsgVO wxMsgVo = new WxMsgVO();
        //用户的openid(要发送给那个用户)
        wxMsgVo.setTouser(openid);
        //订阅消息模板id
        wxMsgVo.setTemplate_id("A_jEWoyl0Uu_l5J-zwlwx_FcbUirlsS6Peu4JW6a7Gc");
        Map<String, TemplateData> m = new HashMap<>(2);
        //会议主题
        m.put("thing1", new TemplateData("又来新客户啦!"));
        //会议地点
        m.put("character_string6", new TemplateData("zhangsan01"));
        wxMsgVo.setData(m);
        ResponseEntity<String> responseEntity =
                restTemplate.postForEntity(url, wxMsgVo, String.class);
        log.info("微信小程序-> å–消通知订阅消息发送日志:{}",JSONObject.toJSONString(responseEntity));
    }
//    /**
//     * èŽ·å–token
//     */
//    private static String getAccessToken() {
//        //发送请求获取token
//        JSONObject token = null;
//        try {
//            token = JSONObject.parseObject(HttpsUtil.get(APP_ACCESS_TOKEN_URL,false));
//        } catch (Exception e) {
//            e.printStackTrace();
//        }
//        JSONObject jsonObject = token;
//        String accessToken = (String) jsonObject.get("access_token");
//        Integer expiresIn = (Integer) jsonObject.get("expires_in");
//        //创建token对象,并存储
//        return new AccessToken(accessToken,String.valueOf(expiresIn)).getAccessToken();
//    }
}
server/service/src/main/java/com/doumee/core/wx/TemplateData.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,19 @@
package com.doumee.core.wx;
import lombok.Data;
/**
 * Created by IntelliJ IDEA.
 *
 * @Author : Rk
 * @create 2022/12/7 17:28
 */
@Data
public class TemplateData {
    private String value;
    public TemplateData(String value) {
        this.value = value;
    }
}
server/service/src/main/java/com/doumee/core/wx/WxMsgVO.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
package com.doumee.core.wx;
import lombok.Data;
import java.util.Map;
/**
 * Created by IntelliJ IDEA.
 *
 * @Author : Rk
 * @create 2022/12/7 17:27
 */
@Data
public class WxMsgVO {
    //用户openId
    private String touser;
    //模版id
    private String template_id;
    //推送文字
    private Map<String , TemplateData> data;
    //跳转路径 ï¼Œé»˜è®¤è·³è½¬åˆ°å°ç¨‹åºé¦–页
    private String page="pages/index/index";
}
server/web/src/main/java/com/doumee/api/web/CustomerApi.java
@@ -11,6 +11,7 @@
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.core.utils.Constants;
import com.doumee.core.wx.SendWxMessage;
import com.doumee.dao.business.model.*;
import com.doumee.dao.web.reqeust.*;
import com.doumee.dao.web.response.AccountResponse;
@@ -625,4 +626,17 @@
        ZTBasePageResponse<ZTCollectLikeInfoResponse>  ztBasePageResponse= getZhongTaiDataService.collectLikePage(ztCollectLikeRequest);
        return ApiResponse.success("查询成功",ztBasePageResponse);
    }
    @ApiOperation(value = "测试发送微信消息", notes = "客户端小程序")
    @GetMapping("/testSendWxMessage")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "query", dataType = "String", name = "openid", value = "小程序id", required = true),
            @ApiImplicitParam(paramType = "query", dataType = "String", name = "token", value = "token", required = true),
    })
    public ApiResponse testSendWxMessage(@RequestParam String openid,@RequestParam String token) {
        SendWxMessage sendWxMessage = new SendWxMessage();
        sendWxMessage.testMessage(openid,token);
        return ApiResponse.success("操作成功");
    }
}