From 86df207c37502cce1b2043e1c7c0486459eef1d6 Mon Sep 17 00:00:00 2001 From: mitao <2763622819@qq.com> Date: 星期四, 13 三月 2025 19:58:45 +0800 Subject: [PATCH] 党员、诉求评论基础代码 --- springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/WxUtil.java | 419 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 414 insertions(+), 5 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 00a04ba..9c55423 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,17 +1,17 @@ package com.panzhihua.common.utlis; import java.math.BigDecimal; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; +import cn.hutool.core.util.StrUtil; 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 com.panzhihua.common.model.vos.community.acid.ComActAcidDangerMemberVO; +import com.panzhihua.common.model.vos.community.reserve.FiveCount; import lombok.extern.slf4j.Slf4j; @Slf4j @@ -408,13 +408,421 @@ } } + /** + * 推送危险人员订阅消息通知 + * @param openId 用户openid + * @param accessToken token会话标识 + * @param dangerMember 风险人员 + */ + public static void sendSubscribeDanger(String openId, String accessToken, ComActAcidDangerMemberVO dangerMember, String templateId){ + WxSubscribeDTO subscribeDTO = new WxSubscribeDTO(); + subscribeDTO.setTouser(openId); + subscribeDTO.setTemplate_id(templateId); + List<TemplateParam> paras=new ArrayList<TemplateParam>(); + Integer type = dangerMember.getType(); + paras.add(new TemplateParam("thing2", (type == 1 ? "当前风险人员 " : "当前未填住址人员 ") + dangerMember.getName())); + paras.add(new TemplateParam("time3", DateUtils.getCurrentDateStr())); + paras.add(new TemplateParam("thing1","新冠疫情")); + paras.add(new TemplateParam("thing4", type == 1 ? "新增风险人员" : "新增未填住址人员")); + subscribeDTO.setTemplateParamList(paras); + try { + sendSubscribe(accessToken,subscribeDTO); + }catch (Exception e){ + log.error("危险人员订阅消息推送失败,失败原因:" + e.getMessage()); + } + } + + + /** + * 推送危险人员订阅消息通知 + * @param openId 用户openid + * @param accessToken token会话标识 + * @param fiveCount 统计数据 + */ + public static void sendSubscribeStatics(String openId, String accessToken, FiveCount fiveCount, String templateId){ + WxSubscribeDTO subscribeDTO = new WxSubscribeDTO(); + subscribeDTO.setTouser(openId); + subscribeDTO.setTemplate_id(templateId); + subscribeDTO.setPage("/packageB/pages/register/reportingStatistics/reportingStatistics"); + List<TemplateParam> paras=new ArrayList<TemplateParam>(); + paras.add(new TemplateParam("thing2", "报备总数"+fiveCount.getAllCount()+";"+"风险人员"+fiveCount.getDangerCount())); + paras.add(new TemplateParam("time3", DateUtils.getDateFormatString(DateUtils.addDay(new Date(),-1),"yyyy-MM-dd")+"0点到24点")); + paras.add(new TemplateParam("thing1","新冠疫情")); + paras.add(new TemplateParam("thing4", "社区报备数据统计")); + subscribeDTO.setTemplateParamList(paras); + try { + sendSubscribe(accessToken,subscribeDTO); + }catch (Exception e){ + log.error("危险人员订阅消息推送失败,失败原因:" + e.getMessage()); + } + } + + /** + * uu洗车订单状态更改 + * @param openId + * @param accessToken + * @param status + * @param washerName + * @param washerMobile + * @param phone + * @param templateId + */ + public static void sendUuWash(String openId, String accessToken, String status,String washerName,String washerMobile,String phone,String templateId){ + WxSubscribeDTO subscribeDTO = new WxSubscribeDTO(); + subscribeDTO.setTouser(openId); + subscribeDTO.setTemplate_id(templateId); + subscribeDTO.setPage("packageD/pages/washer/order/index"); + List<TemplateParam> paras=new ArrayList<TemplateParam>(); + paras.add(new TemplateParam("thing1", "上门洗车")); + paras.add(new TemplateParam("thing4", phone)); + subscribeDTO.setTemplateParamList(paras); + try { + sendSubscribe(accessToken,subscribeDTO); + }catch (Exception e){ + log.error(e.getMessage()); + } + } + + /** + * ws洗车订单状态更改 + * @param openId + * @param accessToken + * @param status + * @param washerName + * @param washerMobile + * @param phone + * @param templateId + */ + public static void sendWsWash(String openId, String accessToken, String status,String washerName,String washerMobile,String phone,String templateId){ + WxSubscribeDTO subscribeDTO = new WxSubscribeDTO(); + subscribeDTO.setTouser(openId); + subscribeDTO.setTemplate_id(templateId); + subscribeDTO.setPage("pages/washer/order/index"); + List<TemplateParam> paras=new ArrayList<TemplateParam>(); + paras.add(new TemplateParam("thing2", "上门洗车")); + paras.add(new TemplateParam("thing5", phone)); + subscribeDTO.setTemplateParamList(paras); + try { + log.info(subscribeDTO.toString()); + sendSubscribe(accessToken,subscribeDTO); + }catch (Exception e){ + log.error(e.getMessage()); + } + } + /** + * uu洗车订单状态更改 + * @param openId + * @param accessToken + * @param status + * @param washerName + * @param washerMobile + * @param phone + * @param templateId + */ + public static void sendUuWash3(String openId, String accessToken, String status,String washerName,String washerMobile,String phone,String templateId){ + WxSubscribeDTO subscribeDTO = new WxSubscribeDTO(); + subscribeDTO.setTouser(openId); + subscribeDTO.setTemplate_id(templateId); + subscribeDTO.setPage("packageD/pages/washer/order/index"); + List<TemplateParam> paras=new ArrayList<TemplateParam>(); + paras.add(new TemplateParam("thing9", StrUtil.isBlank(washerName) ? "无":washerName)); + paras.add(new TemplateParam("phone_number10",StrUtil.isBlank(washerMobile) ? "0":washerMobile)); + subscribeDTO.setTemplateParamList(paras); + try { + sendSubscribe(accessToken,subscribeDTO); + }catch (Exception e){ + log.error(e.getMessage()); + } + } + /** + * ws洗车订单状态更改 + * @param openId + * @param accessToken + * @param status + * @param washerName + * @param washerMobile + * @param phone + * @param templateId + */ + public static void sendWsWash3(String openId, String accessToken, String status,String washerName,String washerMobile,String phone,String templateId){ + WxSubscribeDTO subscribeDTO = new WxSubscribeDTO(); + subscribeDTO.setTouser(openId); + subscribeDTO.setTemplate_id(templateId); + subscribeDTO.setPage("pages/washer/order/index"); + List<TemplateParam> paras=new ArrayList<TemplateParam>(); + paras.add(new TemplateParam("thing9", StrUtil.isBlank(washerName) ? "无":washerName)); + paras.add(new TemplateParam("phone_number10",StrUtil.isBlank(washerMobile) ? "0" :washerMobile)); + subscribeDTO.setTemplateParamList(paras); + try { + sendSubscribe(accessToken,subscribeDTO); + }catch (Exception e){ + log.error(e.getMessage()); + } + } + /** + * uu洗车订单状态更改 + * @param openId + * @param accessToken + * @param status + * @param washerName + * @param washerMobile + * @param phone + * @param templateId + */ + public static void sendUuWash4(String openId, String accessToken, String status,String washerName,String washerMobile,String phone,String templateId){ + WxSubscribeDTO subscribeDTO = new WxSubscribeDTO(); + subscribeDTO.setTouser(openId); + subscribeDTO.setTemplate_id(templateId); + subscribeDTO.setPage("packageD/pages/washer/order/index"); + List<TemplateParam> paras=new ArrayList<TemplateParam>(); + paras.add(new TemplateParam("thing4", status)); + paras.add(new TemplateParam("thing3", StrUtil.isBlank(washerName) ? "无":washerName)); + paras.add(new TemplateParam("thing6",StrUtil.isBlank(washerMobile) ? "无":washerMobile)); + subscribeDTO.setTemplateParamList(paras); + try { + sendSubscribe(accessToken,subscribeDTO); + }catch (Exception e){ + log.error(e.getMessage()); + } + } + /** + * ws洗车订单状态更改 + * @param openId + * @param accessToken + * @param status + * @param washerName + * @param washerMobile + * @param phone + * @param templateId + */ + public static void sendWsWash4(String openId, String accessToken, String status,String washerName,String washerMobile,String phone,String templateId){ + WxSubscribeDTO subscribeDTO = new WxSubscribeDTO(); + subscribeDTO.setTouser(openId); + subscribeDTO.setTemplate_id(templateId); + subscribeDTO.setPage("pages/washer/order/index"); + List<TemplateParam> paras=new ArrayList<TemplateParam>(); + paras.add(new TemplateParam("thing4", status)); + paras.add(new TemplateParam("thing3", StrUtil.isBlank(washerName) ? "无":washerName)); + paras.add(new TemplateParam("thing6",StrUtil.isBlank(washerMobile) ? "无":washerMobile)); + subscribeDTO.setTemplateParamList(paras); + try { + sendSubscribe(accessToken,subscribeDTO); + }catch (Exception e){ + log.error(e.getMessage()); + } + } + /** + * uu洗车订单状态更改 + * @param openId + * @param accessToken + * @param status + * @param washerName + * @param washerMobile + * @param phone + * @param templateId + */ + public static void sendUuWash6(String openId, String accessToken, String status,String washerName,String washerMobile,String phone,String templateId){ + WxSubscribeDTO subscribeDTO = new WxSubscribeDTO(); + subscribeDTO.setTouser(openId); + subscribeDTO.setTemplate_id(templateId); + subscribeDTO.setPage("packageD/pages/washer/order/index"); + List<TemplateParam> paras=new ArrayList<TemplateParam>(); + paras.add(new TemplateParam("phrase14", status)); + paras.add(new TemplateParam("name3", StrUtil.isBlank(washerName) ? "无":washerName)); + paras.add(new TemplateParam("thing5",StrUtil.isBlank(washerMobile) ? "无":washerMobile)); + subscribeDTO.setTemplateParamList(paras); + try { + sendSubscribe(accessToken,subscribeDTO); + }catch (Exception e){ + log.error(e.getMessage()); + } + } + /** + * ws洗车订单状态更改 + * @param openId + * @param accessToken + * @param status + * @param washerName + * @param washerMobile + * @param phone + * @param templateId + */ + public static void sendWsWash6(String openId, String accessToken, String status,String washerName,String washerMobile,String phone,String templateId){ + WxSubscribeDTO subscribeDTO = new WxSubscribeDTO(); + subscribeDTO.setTouser(openId); + subscribeDTO.setTemplate_id(templateId); + subscribeDTO.setPage("pages/washer/order/index"); + List<TemplateParam> paras=new ArrayList<TemplateParam>(); + paras.add(new TemplateParam("phrase14", status)); + paras.add(new TemplateParam("name3", StrUtil.isBlank(washerName) ? "无":washerName)); + paras.add(new TemplateParam("thing5",StrUtil.isBlank(washerMobile) ? "无":washerMobile)); + subscribeDTO.setTemplateParamList(paras); + try { + sendSubscribe(accessToken,subscribeDTO); + }catch (Exception e){ + log.error(e.getMessage()); + } + } + /** + * 长期订阅模板消息推送 + * @param openId + * @param accessToken + */ + public static void sendLongTimeTemplate(String openId, String accessToken, String word,String content,String page) { + WxSubscribeDTO subscribeDTO = new WxSubscribeDTO(); + subscribeDTO.setTouser(openId); + subscribeDTO.setTemplate_id("5f-xcy4lrWy_0kc5H4dj5bgBM-MwsvTwPApA-u3fqsQ"); + subscribeDTO.setPage(page); + List<TemplateParam> paras = new ArrayList<TemplateParam>(); + paras.add(new TemplateParam("thing3", word)); + paras.add(new TemplateParam("thing6", content)); + subscribeDTO.setTemplateParamList(paras); + try { + sendSubscribe(accessToken, subscribeDTO); + } catch (Exception e) { + log.error(e.getMessage()); + } + } + + /** + * 推送 商家开始配送后 订单配送通知 + * @param openId 用户openid + * @param accessToken token会话标识 + */ + public static void sendStartShipping(String openId, String accessToken, String orderNo){ + WxSubscribeDTO subscribeDTO = new WxSubscribeDTO(); + subscribeDTO.setTouser(openId); + subscribeDTO.setTemplate_id("ezwzGs3R5DMuKxTyW8xOIQOIsLpW2sS61ZXsfyll7rw"); + List<TemplateParam> paras=new ArrayList<TemplateParam>(); + paras.add(new TemplateParam("character_string2", orderNo)); + paras.add(new TemplateParam("phrase5", "配送中")); + paras.add(new TemplateParam("thing8","您的订单已开始配送")); + subscribeDTO.setTemplateParamList(paras); + try { + sendSubscribe(accessToken,subscribeDTO); + }catch (Exception e){ + log.error("商家开始配送后订阅消息推送失败,失败原因:" + e.getMessage()); + } + } + + /** + * 推送 商家送达后 用取货通知 + * @param openId 用户openid + * @param accessToken token会话标识 + */ + public static void sendService(String openId, String accessToken, String pointName){ + WxSubscribeDTO subscribeDTO = new WxSubscribeDTO(); + subscribeDTO.setTouser(openId); + subscribeDTO.setTemplate_id("6RGbNmRrmGNWyeK7UDodYTItNqEnIIdtlgyzeGLI2w8"); + List<TemplateParam> paras=new ArrayList<TemplateParam>(); + paras.add(new TemplateParam("phrase3", "待收货")); + paras.add(new TemplateParam("thing7", "您有一个订单已到达自提点,请及时取货")); + paras.add(new TemplateParam("thing5",pointName)); + subscribeDTO.setTemplateParamList(paras); + try { + sendSubscribe(accessToken,subscribeDTO); + }catch (Exception e){ + log.error("取货通知订阅消息推送失败,失败原因:" + e.getMessage()); + } + } + /** + * 推送 商家发货后 发货通知 + * @param openId 用户openid + * @param accessToken token会话标识 + */ + public static void sendDeliverGoodsNotice(String openId, String accessToken, String logisticsCompany , String logisticsNo, String orderNo,String deliverTime){ + WxSubscribeDTO subscribeDTO = new WxSubscribeDTO(); + subscribeDTO.setTouser(openId); + subscribeDTO.setTemplate_id("PuE0cYU9xUW7Y6XpW-wqz4Hlj1w2mnI_LprsUByJnGg"); + List<TemplateParam> paras=new ArrayList<TemplateParam>(); + paras.add(new TemplateParam("thing2", "您有一个订单已发货")); + paras.add(new TemplateParam("thing3", logisticsCompany)); + paras.add(new TemplateParam("character_string4",logisticsNo)); + paras.add(new TemplateParam("character_string5",orderNo)); + paras.add(new TemplateParam("time6",deliverTime)); + subscribeDTO.setTemplateParamList(paras); + try { + sendSubscribe(accessToken,subscribeDTO); + }catch (Exception e){ + log.error("商家发货后订阅消息推送失败,失败原因:" + e.getMessage()); + } + } + + /** + * 推送 商家处理完退款申请后 订单退款通知 + * @param openId 用户openid + * @param accessToken token会话标识 + */ + public static void sendRefundNotice(String openId, String accessToken, String refundNo , String refundAmount, String result){ + WxSubscribeDTO subscribeDTO = new WxSubscribeDTO(); + subscribeDTO.setTouser(openId); + subscribeDTO.setTemplate_id("GxFV_Oj1Pri4NnPkvKGPIPJsPryG8M6DW9mTHTbIrjE"); + List<TemplateParam> paras=new ArrayList<TemplateParam>(); + paras.add(new TemplateParam("character_string6", refundNo)); + paras.add(new TemplateParam("amount9", refundAmount)); + paras.add(new TemplateParam("phrase11",result)); + subscribeDTO.setTemplateParamList(paras); + try { + sendSubscribe(accessToken,subscribeDTO); + }catch (Exception e){ + log.error("订单退款通知 订阅消息推送失败,失败原因:" + e.getMessage()); + } + } + + /** + * 推送 新订单提醒 商家收到一个新的订单 + * @param openId 用户openid + * @param accessToken token会话标识 + */ + public static void sendNewOrderNotice(String openId, String accessToken, String orderNo , String type, String goodsName,String amount,String orderTime){ + WxSubscribeDTO subscribeDTO = new WxSubscribeDTO(); + subscribeDTO.setTouser(openId); + subscribeDTO.setTemplate_id("3EwAKLw2Xe2o-GDnH-NUGa4nNwqPXsn01hBX8Xp2PbU"); + List<TemplateParam> paras=new ArrayList<TemplateParam>(); + paras.add(new TemplateParam("character_string1", orderNo)); + paras.add(new TemplateParam("thing5", type)); + paras.add(new TemplateParam("thing3",goodsName)); + paras.add(new TemplateParam("amount4",amount)); + paras.add(new TemplateParam("time2",orderTime)); + subscribeDTO.setTemplateParamList(paras); + try { + sendSubscribe(accessToken,subscribeDTO); + }catch (Exception e){ + log.error("新订单提醒 订阅消息推送失败,失败原因:" + e.getMessage()); + } + } + + /** + * 推送 退款申请通知 商家收到一个退款申请 + * @param openId 用户openid + * @param accessToken token会话标识 + */ + public static void sendNewRefundOrderNotice(String openId, String accessToken, String refundNo , String refundAmount,String orderTime){ + WxSubscribeDTO subscribeDTO = new WxSubscribeDTO(); + subscribeDTO.setTouser(openId); + subscribeDTO.setTemplate_id("3EwAKLw2Xe2o-GDnH-NUGa4nNwqPXsn01hBX8Xp2PbU"); + List<TemplateParam> paras=new ArrayList<TemplateParam>(); + paras.add(new TemplateParam("thing5", "您有一个退款订单")); + paras.add(new TemplateParam("character_string2", refundNo)); + paras.add(new TemplateParam("amount3",refundAmount)); + paras.add(new TemplateParam("time4",orderTime)); + 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(); + String accessToken = util.getAccessToken(); // 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","活动地址");//活动变更 @@ -427,4 +835,5 @@ } } + } -- Gitblit v1.7.1