From 5544f75ed232af3c461da2e8368482e92ac34a15 Mon Sep 17 00:00:00 2001
From: tangxiaobao <303826152@qq.com>
Date: 星期四, 16 九月 2021 10:14:09 +0800
Subject: [PATCH] lyq-屏蔽请求工具类请求参数和返回参数日志打印
---
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/WxUtil.java | 417 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 395 insertions(+), 22 deletions(-)
diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/WxUtil.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/WxUtil.java
index c44a45b..863bee0 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/WxUtil.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/WxUtil.java
@@ -1,37 +1,410 @@
package com.panzhihua.common.utlis;
-import com.alibaba.fastjson.JSON;
-
+import java.math.BigDecimal;
+import java.util.ArrayList;
import java.util.HashMap;
+import java.util.List;
import java.util.Map;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
+import com.panzhihua.common.constants.WxSubscribeConstants;
+import com.panzhihua.common.model.dtos.wx.TemplateParam;
+import com.panzhihua.common.model.dtos.wx.WxSubscribeDTO;
+
+import lombok.extern.slf4j.Slf4j;
+
+@Slf4j
public class WxUtil {
- //客服消息推送地址
+ // 客服消息推送地址
public final static String kf_url = "https://api.weixin.qq.com/cgi-bin/message/custom/send";
- public static String sendKfLinkMessage(String openid,String url,String thumbUrl,String access_token)throws Exception{
- Map<String,Object> map_content = new HashMap<>();
- map_content.put("title","社区福利一分购");
- map_content.put("description","点击参与社区一分钱抢购活动");
- map_content.put("url",url);//跳转地址
- map_content.put("thumb_url",thumbUrl);//图片地址
- Map<String,Object> map = new HashMap<>();
- map.put("touser",openid);
- map.put("msgtype","link");
- map.put("link",map_content);
+ public static String sendKfLinkMessage(String openid, String url, String thumbUrl, String access_token)
+ throws Exception {
+ Map<String, Object> map_content = new HashMap<>();
+ map_content.put("title", "社区福利一分购");
+ map_content.put("description", "点击参与社区一分钱抢购活动");
+ map_content.put("url", url);// 跳转地址
+ map_content.put("thumb_url", thumbUrl);// 图片地址
+ Map<String, Object> map = new HashMap<>();
+ map.put("touser", openid);
+ map.put("msgtype", "link");
+ map.put("link", map_content);
String content = JSON.toJSONString(map);
- return HttpClientUtil.httpPost(kf_url+"?access_token="+access_token,content);
+ return HttpClientUtil.httpPost(kf_url + "?access_token=" + access_token, content);
}
- public static String sendKfConetntMessage(String openid,String access_token)throws Exception{
- Map<String,Object> map_content = new HashMap<>();
- map_content.put("content","社区福利一分购");
- Map<String,Object> map = new HashMap<>();
- map.put("touser",openid);
- map.put("msgtype","text");
- map.put("text",map_content);
+ public static String sendKfConetntMessage(String openid, String access_token) throws Exception {
+ Map<String, Object> map_content = new HashMap<>();
+ map_content.put("content", "社区福利一分购");
+ Map<String, Object> map = new HashMap<>();
+ map.put("touser", openid);
+ map.put("msgtype", "text");
+ map.put("text", map_content);
String content = JSON.toJSONString(map);
- return HttpClientUtil.httpPost(kf_url+"?access_token="+access_token,content);
+ return HttpClientUtil.httpPost(kf_url + "?access_token=" + access_token, content);
}
+
+ public static String sendKfImagesMessage(String openid, String access_token, String mediaId) throws Exception {
+ Map<String, Object> map_content = new HashMap<>();
+ map_content.put("media_id", mediaId);
+ Map<String, Object> map = new HashMap<>();
+ map.put("touser", openid);
+ map.put("msgtype", "image");
+ map.put("image", map_content);
+ String content = JSON.toJSONString(map);
+ return HttpClientUtil.httpPost(kf_url + "?access_token=" + access_token, content);
+ }
+
+ /**
+ * 订阅消息推送
+ *
+ * @param accessToken
+ * 获取会话token
+ * @return 消息推送结果
+ */
+ static void sendSubscribe(String accessToken, WxSubscribeDTO subscribeDTO) throws Exception {
+ String resultString = HttpUtils.wxMessageModeSendUrl(accessToken, subscribeDTO);
+ JSONObject jsonResult = JSON.parseObject(resultString);
+ if (jsonResult != null) {
+ log.info("订阅消息推送返回参数" + jsonResult.toJSONString());
+ int errorCode = jsonResult.getIntValue("errcode");
+ String errorMessage = jsonResult.getString("errmsg");
+ if (errorCode == 0) {
+ log.info("订阅消息推送成功,openId:" + subscribeDTO.getTouser());
+ } else {
+ log.error(
+ "订阅消息发送失败,错误码:" + errorCode + ",错误信息:" + errorMessage + "用户openid:" + subscribeDTO.getTouser());
+ }
+ }
+ }
+
+ /**
+ * 随手拍奖励到账订阅消息推送
+ *
+ * @param openId
+ * 用户openid
+ * @param accessToken
+ * token会话标识
+ * @param name
+ * 随手拍活动标题
+ * @param amount
+ * 奖励金额
+ * @param remark
+ * 备注说明
+ */
+ public static void sendSubscribeJLDZ(String openId, String accessToken, String name, BigDecimal amount,
+ String remark) {
+ WxSubscribeDTO subscribeDTO = new WxSubscribeDTO();
+ subscribeDTO.setTouser(openId);
+ subscribeDTO.setTemplate_id(WxSubscribeConstants.JLFF_ID);
+ List<TemplateParam> paras = new ArrayList<TemplateParam>();
+ paras.add(new TemplateParam("thing1", name));// 活动名称
+ paras.add(new TemplateParam("amount3", amount.toString()));// 奖励金额
+ paras.add(new TemplateParam("thing7", remark));// 备注说明
+ subscribeDTO.setTemplateParamList(paras);
+ try {
+ sendSubscribe(accessToken, subscribeDTO);
+ } catch (Exception e) {
+ log.error("随手拍奖励到账订阅消息推送失败,失败原因:" + e.getMessage());
+ }
+ }
+
+ /**
+ * 活动报名成功订阅消息推送
+ *
+ * @param openId
+ * 用户openid
+ * @param accessToken
+ * token会话标识
+ * @param name
+ * 活动名称
+ * @param address
+ * 活动地址
+ * @param activityTime
+ * 活动时间
+ * @param signTime
+ * 报名时间
+ */
+ public static void sendSubscribeSQHD(String openId, String accessToken, String name, String address,
+ String activityTime, String signTime) {
+ WxSubscribeDTO subscribeDTO = new WxSubscribeDTO();
+ subscribeDTO.setTouser(openId);
+ subscribeDTO.setTemplate_id(WxSubscribeConstants.BMCG_ID);
+ List<TemplateParam> paras = new ArrayList<TemplateParam>();
+ paras.add(new TemplateParam("thing1", name));// 活动名称
+ paras.add(new TemplateParam("thing2", address));// 活动地址
+ paras.add(new TemplateParam("date3", activityTime));// 活动时间
+ paras.add(new TemplateParam("time8", signTime));// 报名时间
+ subscribeDTO.setTemplateParamList(paras);
+ try {
+ sendSubscribe(accessToken, subscribeDTO);
+ } catch (Exception e) {
+ log.error("活动报名成功订阅消息推送失败,失败原因:" + e.getMessage());
+ }
+ }
+
+ /**
+ * 新问卷调查订阅消息通知
+ *
+ * @param openId
+ * 用户openid
+ * @param accessToken
+ * token会话标识
+ * @param name
+ * 活动名称
+ * @param questionnaireName
+ * 问卷名称
+ */
+ public static void sendSubscribeDYWJ(String openId, String accessToken, String name, String questionnaireName) {
+ WxSubscribeDTO subscribeDTO = new WxSubscribeDTO();
+ subscribeDTO.setTouser(openId);
+ subscribeDTO.setTemplate_id(WxSubscribeConstants.DYWJ_ID);
+ List<TemplateParam> paras = new ArrayList<TemplateParam>();
+ paras.add(new TemplateParam("thing1", name));// 活动名称
+ paras.add(new TemplateParam("thing2", questionnaireName));// 问卷名称
+ subscribeDTO.setTemplateParamList(paras);
+ try {
+ sendSubscribe(accessToken, subscribeDTO);
+ } catch (Exception e) {
+ log.error("新问卷调查订阅消息推送失败,失败原因:" + e.getMessage());
+ }
+ }
+
+ /**
+ * 认证审核订阅消息通知
+ *
+ * @param openId
+ * 用户openid
+ * @param accessToken
+ * token会话标识
+ * @param name
+ * 认证内容
+ * @param applyTime
+ * 申请时间
+ * @param result
+ * 审核结果
+ */
+ public static void sendSubscribeRZSH(String openId, String accessToken, String name, String applyTime,
+ String result) {
+ WxSubscribeDTO subscribeDTO = new WxSubscribeDTO();
+ subscribeDTO.setTouser(openId);
+ subscribeDTO.setTemplate_id(WxSubscribeConstants.EZSH_ID);
+ List<TemplateParam> paras = new ArrayList<TemplateParam>();
+ paras.add(new TemplateParam("thing2", name));// 认证内容
+ paras.add(new TemplateParam("phrase1", result));// 审核结果
+ paras.add(new TemplateParam("date3", applyTime));// 申请时间
+ subscribeDTO.setTemplateParamList(paras);
+ try {
+ sendSubscribe(accessToken, subscribeDTO);
+ } catch (Exception e) {
+ log.error("认证审核订阅消息推送失败,失败原因:" + e.getMessage());
+ }
+ }
+
+ /**
+ * 随手拍、邻里圈、微心愿、房源审核状态进度通知
+ *
+ * @param openId
+ * 用户openid
+ * @param accessToken
+ * token会话标识
+ * @param name
+ * 审核项目
+ * @param applyTime
+ * 审核状态
+ * @param result
+ * 审核时间
+ */
+ public static void sendSubscribeSHZT(String openId, String accessToken, String name, String applyTime,
+ String result) {
+ WxSubscribeDTO subscribeDTO = new WxSubscribeDTO();
+ subscribeDTO.setTouser(openId);
+ subscribeDTO.setTemplate_id(WxSubscribeConstants.SHZT_ID);
+ List<TemplateParam> paras = new ArrayList<TemplateParam>();
+ paras.add(new TemplateParam("thing1", name));// 审核项目
+ paras.add(new TemplateParam("phrase2", result));// 审核状态
+ paras.add(new TemplateParam("time3", applyTime));// 审核时间
+ subscribeDTO.setTemplateParamList(paras);
+ try {
+ sendSubscribe(accessToken, subscribeDTO);
+ } catch (Exception e) {
+ log.error("审核状态订阅消息推送失败,失败原因:" + e.getMessage());
+ }
+ }
+
+ /**
+ * 社区活动取消通知
+ *
+ * @param openId
+ * 用户openid
+ * @param accessToken
+ * token会话标识
+ * @param name
+ * 活动名称
+ * @param time
+ * 活动时间
+ */
+ public static void sendSubscribeHDQX(String openId, String accessToken, String name, String time) {
+ WxSubscribeDTO subscribeDTO = new WxSubscribeDTO();
+ subscribeDTO.setTouser(openId);
+ subscribeDTO.setTemplate_id(WxSubscribeConstants.HDQX_ID);
+ List<TemplateParam> paras = new ArrayList<TemplateParam>();
+ paras.add(new TemplateParam("thing1", name));// 活动标题
+ paras.add(new TemplateParam("date2", time));// 活动时间
+ subscribeDTO.setTemplateParamList(paras);
+ try {
+ sendSubscribe(accessToken, subscribeDTO);
+ } catch (Exception e) {
+ log.error("活动取消订阅消息推送失败,失败原因:" + e.getMessage());
+ }
+ }
+
+ /**
+ * 留言回复订阅消息通知
+ *
+ * @param openId
+ * 用户openid
+ * @param accessToken
+ * token会话标识
+ * @param name
+ * 回复人名称
+ * @param time
+ * 回复时间
+ * @param content
+ * 回复内容
+ */
+ public static void sendSubscribeLYHF(String openId, String accessToken, String name, String time, String content) {
+ WxSubscribeDTO subscribeDTO = new WxSubscribeDTO();
+ subscribeDTO.setTouser(openId);
+ subscribeDTO.setTemplate_id(WxSubscribeConstants.LYHF_ID);
+ List<TemplateParam> paras = new ArrayList<TemplateParam>();
+ paras.add(new TemplateParam("thing3", content));// 回复内容
+ paras.add(new TemplateParam("name1", name));// 回复者
+ paras.add(new TemplateParam("date2", time));// 回复时间
+ subscribeDTO.setTemplateParamList(paras);
+ try {
+ sendSubscribe(accessToken, subscribeDTO);
+ } catch (Exception e) {
+ log.error("留言回复订阅消息推送失败,失败原因:" + e.getMessage());
+ }
+ }
+
+ /**
+ * 活动变更订阅消息通知
+ *
+ * @param openId
+ * 用户openid
+ * @param accessToken
+ * token会话标识
+ * @param name
+ * 活动名称
+ * @param changeTime
+ * 活动时间变更
+ * @param changeAddress
+ * 活动地点变更
+ * @param time
+ * 活动时间
+ * @param address
+ * 活动地点
+ */
+ public static void sendSubscribeHDBG(String openId, String accessToken, String name, String changeTime,
+ String changeAddress, String time, String address) {
+ WxSubscribeDTO subscribeDTO = new WxSubscribeDTO();
+ subscribeDTO.setTouser(openId);
+ subscribeDTO.setTemplate_id(WxSubscribeConstants.HDBG_ID);
+ List<TemplateParam> paras = new ArrayList<TemplateParam>();
+ paras.add(new TemplateParam("thing1", name));// 活动名称
+ paras.add(new TemplateParam("time2", changeTime));// 活动时间变更
+ paras.add(new TemplateParam("thing3", changeAddress));// 地址变更
+ paras.add(new TemplateParam("time5", time));// 活动时间
+ paras.add(new TemplateParam("thing6", address));// 活动地点
+ subscribeDTO.setTemplateParamList(paras);
+ try {
+ sendSubscribe(accessToken, subscribeDTO);
+ } catch (Exception e) {
+ log.error("留言回复订阅消息推送失败,失败原因:" + e.getMessage());
+ }
+ }
+
+ /**
+ * 活动即将开始订阅消息通知
+ *
+ * @param openId
+ * 用户openid
+ * @param accessToken
+ * token会话标识
+ * @param name
+ * 活动名称
+ * @param time
+ * 活动时间
+ * @param address
+ * 活动地点
+ * @param num
+ * 活动参加人数
+ */
+ public static void sendSubscribeHDJJKS(String openId, String accessToken, String name, String time, String address,
+ String num) {
+ WxSubscribeDTO subscribeDTO = new WxSubscribeDTO();
+ subscribeDTO.setTouser(openId);
+ subscribeDTO.setTemplate_id(WxSubscribeConstants.HDJJKS_ID);
+ List<TemplateParam> paras = new ArrayList<TemplateParam>();
+ paras.add(new TemplateParam("thing1", name));// 活动名称
+ paras.add(new TemplateParam("date2", time));// 活动时间
+ paras.add(new TemplateParam("number3", num));// 参与人数
+ paras.add(new TemplateParam("thing4", address));// 活动地点
+ subscribeDTO.setTemplateParamList(paras);
+ try {
+ sendSubscribe(accessToken, subscribeDTO);
+ } catch (Exception e) {
+ log.error("活动即将开始订阅消息推送失败,失败原因:" + e.getMessage());
+ }
+ }
+
+ /**
+ * 预约提醒订阅消息通知
+ * @param openId 用户openid
+ * @param accessToken token会话标识
+ * @param result 预约结果
+ * @param title 预约主题
+ * @param name 预约人
+ * @param time 预约时间
+ */
+ public static void sendSubscribeYYTX(String openId, String accessToken, String result, String title, String name,String time){
+ WxSubscribeDTO subscribeDTO = new WxSubscribeDTO();
+ subscribeDTO.setTouser(openId);
+ subscribeDTO.setTemplate_id(WxSubscribeConstants.YYTX_ID);
+ List<TemplateParam> paras=new ArrayList<TemplateParam>();
+ paras.add(new TemplateParam("phrase8",result));//预约结果
+ paras.add(new TemplateParam("thing23",title));//预约主题
+ paras.add(new TemplateParam("name5",name));//预约人
+ paras.add(new TemplateParam("date7",time));//预约时间
+ subscribeDTO.setTemplateParamList(paras);
+ try {
+ sendSubscribe(accessToken,subscribeDTO);
+ }catch (Exception e){
+ log.error("预约提醒订阅消息推送失败,失败原因:" + e.getMessage());
+ }
+ }
+
+ public static void main(String[] args) {
+
+ WxXCXTempSend util = new WxXCXTempSend();
+ try {
+ // String openId = "oMIR-5S9rpsWAVUUrNKoVDQbn5Mw";//zj的openid
+ String openId = "oMIR-5dWyNyWCCKMl7-kYzvyHOjs";// lyq的openid
+ String accessToken = util.getAppAccessToken();
+ // sendSubscribeHDJJKS(openId,accessToken,"测试活动即将开始标题","2021-08-04 13:00:00","成都市","50");//活动即将开始
+ // sendSubscribeHDQX(openId,accessToken,"取消活动测试标题","2021-08-04 13:00:00");//活动取消
+ // sendSubscribeHDBG(openId,accessToken,"活动名称","2021-08-05","活动变更地址","2021-08-06","活动地址");//活动变更
+ // sendSubscribeRZSH(openId,accessToken,"用户认证审核通知","2021-08-04","通过");//认证审核
+ // sendSubscribeJLDZ(openId,accessToken,"随手拍活动DDD",BigDecimal.TEN,"用户参加随手拍活动奖励");//奖励到账
+ // sendSubscribeLYHF(openId,accessToken,"社区管理员","2021-08-04 11:26:20","勇敢牛牛 不怕困难!");//留言回复
+ // sendSubscribeSHZT(openId,accessToken,"随手拍审核!!","2021-08-04 11:20:00","通过了");//审核状态
+ } catch (Exception e) {
+ System.out.println("错误错误!!!");
+ }
+ }
+
}
--
Gitblit v1.7.1