From a598218a73cc7736925517b12db6a861bd971f73 Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期四, 22 一月 2026 18:18:08 +0800
Subject: [PATCH] 小程序 接口开发
---
server/dmmall_service/src/main/java/com/doumee/core/wx/SendWxMessage.java | 65 ++++++++++++++++++++++++++++++++
1 files changed, 65 insertions(+), 0 deletions(-)
diff --git a/server/dmmall_service/src/main/java/com/doumee/core/wx/SendWxMessage.java b/server/dmmall_service/src/main/java/com/doumee/core/wx/SendWxMessage.java
index 0ad0c54..2f78583 100644
--- a/server/dmmall_service/src/main/java/com/doumee/core/wx/SendWxMessage.java
+++ b/server/dmmall_service/src/main/java/com/doumee/core/wx/SendWxMessage.java
@@ -1,11 +1,14 @@
package com.doumee.core.wx;
import com.alibaba.fastjson.JSONObject;
+import com.doumee.core.utils.Constants;
import com.doumee.core.utils.DateUtil;
import com.doumee.core.utils.HttpsUtil;
import com.doumee.dao.business.model.Goodsorder;
+import com.doumee.dao.business.model.GoodsorderDetail;
import com.doumee.dao.business.model.Member;
import lombok.extern.slf4j.Slf4j;
+import me.chanjar.weixin.common.error.WxErrorException;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.client.RestTemplate;
@@ -13,7 +16,9 @@
import java.math.BigDecimal;
import java.util.Date;
import java.util.HashMap;
+import java.util.List;
import java.util.Map;
+import java.util.stream.Collectors;
/**
* Created by IntelliJ IDEA.
@@ -33,6 +38,66 @@
private static String programUserUrl = "pages/balanceDetails/balanceDetails";
+ public static void createSendData(Constants.WxNotice wxNotice, Goodsorder goodsorder, List<GoodsorderDetail> gdetailList, Member member){
+ Map<String, TemplateData> m = new HashMap<>();
+ String jumpUrl = wxNotice.getJumpUrl();
+ if(Constants.equalsInteger(wxNotice.getType(),Constants.ZERO)){
+ //鍙戣揣閫氱煡
+ m.put("character_string1}",new TemplateData(goodsorder.getCode().toString()));//璁㈠崟缂栧彿
+ m.put("thing7}",new TemplateData(String.join(",", gdetailList.stream().map(i->i.getName()).collect(Collectors.toList()))));//鍟嗗搧鍚嶇О
+ m.put("thing10}",new TemplateData(goodsorder.getKdName()));//蹇�掑叕鍙�
+ m.put("character_string3}",new TemplateData(goodsorder.getKdCode()));//蹇�掑崟鍙�
+ jumpUrl = jumpUrl+"?id="+goodsorder.getId();
+ }else if(Constants.equalsInteger(wxNotice.getType(),Constants.ONE)){
+ //璁㈠崟鏍搁攢
+ m.put("character_string3}",new TemplateData(goodsorder.getCode().toString()));//璁㈠崟缂栧彿
+ m.put("time2}",new TemplateData(DateUtil.formatDate(goodsorder.getDoneDate(),"yyyy骞碝M鏈坉d HH:mm")));//鏍搁攢鏃堕棿
+ m.put("phrase1}",new TemplateData("宸叉牳閿�"));//鏍搁攢鐘舵��
+ jumpUrl = jumpUrl+"?id="+goodsorder.getId();
+ }else if(Constants.equalsInteger(wxNotice.getType(),Constants.TWO)){
+ //璁㈠崟閫�娆�
+ m.put("character_string1}",new TemplateData(goodsorder.getCode().toString()));//璁㈠崟缂栧彿
+ m.put("thing2}",new TemplateData(String.join(",", gdetailList.stream().map(i->i.getName()).collect(Collectors.toList()))));//鍟嗗搧鍚嶇О
+ m.put("date9}",new TemplateData(DateUtil.formatDate(goodsorder.getRefundTime(),"yyyy骞碝M鏈坉d HH:mm")));//閫�娆炬椂闂�
+ m.put("phrase1}",new TemplateData(goodsorder.getRefundMoney()+"鍏�"));//閫�娆鹃噾棰�
+ jumpUrl = jumpUrl+"?id="+goodsorder.getId();
+ }
+ SendWxMessage.sendWxMessage(wxNotice.getTempId(),m,member.getOpenId(),jumpUrl);
+ }
+
+
+ /**
+ * 鍙戦�佹秷鎭�
+ * @param tempId
+ * @param m
+ * @param openid
+ * @param jumpUrl
+ */
+ public static void sendWxMessage(String tempId,Map<String, TemplateData> m,String openid,String jumpUrl){
+ try{
+ String accessToken = WxMiniConfig.wxMaService.getAccessToken();
+ RestTemplate restTemplate = new RestTemplate();
+ //杩欓噷绠�鍗曡捣瑙佹垜浠瘡娆¢兘鑾峰彇鏈�鏂扮殑access_token锛堟椂闂村紑鍙戜腑锛屽簲璇ュ湪access_token蹇繃鏈熸椂鍐嶉噸鏂拌幏鍙栵級
+ String url = "https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token="+accessToken;
+ //鎷兼帴鎺ㄩ�佺殑妯$増
+ WxMsgVO wxMsgVo = new WxMsgVO();
+ //鐢ㄦ埛鐨刼penid锛堣鍙戦�佺粰閭d釜鐢ㄦ埛锛�
+ wxMsgVo.setTouser(openid);
+ wxMsgVo.setTemplate_id(tempId);
+ wxMsgVo.setPage(jumpUrl);
+ ResponseEntity<String> responseEntity =
+ restTemplate.postForEntity(url, wxMsgVo, String.class);
+ log.info("寰俊灏忕▼搴�->鍙戦�佽闃呮秷鎭細{}",JSONObject.toJSONString(responseEntity));
+ }catch (WxErrorException wxErrorException){
+
+ }
+
+ }
+
+
+
+
+
/**
* 鍙栨秷璁㈠崟 閫氱煡
* @param member 浼氬憳淇℃伅
--
Gitblit v1.9.3