From ff087240b3dee29ce4e14ad0836e76b9fdf312cf Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期二, 19 八月 2025 09:28:07 +0800
Subject: [PATCH] Merge branch 'master' of http://139.186.142.91:10010/r/productDev/lianhelihua_sh

---
 server/src/main/java/com/doumee/core/utils/qiyeweixin/QywxUtil.java |  105 ++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 97 insertions(+), 8 deletions(-)

diff --git a/server/src/main/java/com/doumee/core/utils/qiyeweixin/QywxUtil.java b/server/src/main/java/com/doumee/core/utils/qiyeweixin/QywxUtil.java
index 36325d6..c3faaed 100644
--- a/server/src/main/java/com/doumee/core/utils/qiyeweixin/QywxUtil.java
+++ b/server/src/main/java/com/doumee/core/utils/qiyeweixin/QywxUtil.java
@@ -6,6 +6,7 @@
 import com.doumee.core.utils.HttpsUtil;
 import com.doumee.core.utils.qiyeweixin.model.request.QywxSendMsgRequest;
 import com.doumee.core.utils.qiyeweixin.model.response.*;
+import lombok.Data;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -13,7 +14,9 @@
 import org.springframework.stereotype.Component;
 
 import javax.annotation.PostConstruct;
+import java.io.File;
 import java.io.IOException;
+import java.io.InputStream;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -21,6 +24,7 @@
 
 @Component
 @Slf4j
+@Data
 public class QywxUtil {
     private static JSONObject json = new JSONObject();
 
@@ -34,6 +38,8 @@
     @PostConstruct
     private void init() {
         qyUtil = this;
+        System.out.println(qyUtil.qiweiUrl);
+        System.out.println(qyUtil.getQiweiUrl());
 //        QywxUtil.qiweiUrl =  serviceurl;
     }
 
@@ -57,7 +63,7 @@
     public static String getAccessToken(String corpId, String corpSecret)  {
         String[] interfaceUrl = QywxConstant.GET_ACCESS_TOKEN;
         String url = interfaceUrl[0].replace("${corpid}",corpId).replace("${secret}",corpSecret);
-        QywxBaseResponse response = sendHttpRequest(url,interfaceUrl[1],"",new TypeReference<QywxBaseResponse<String>>(){});
+        QywxBaseResponse response = sendHttpGetRequest(url,interfaceUrl[1], new TypeReference<QywxBaseResponse<String>>(){});
         if(response.getErrcode()!=null && response.getErrcode() ==0){
             return response.getAccess_token();
         }
@@ -87,7 +93,7 @@
             String[] interfaceUrl = QywxConstant.SEND_MSG;
             String url = interfaceUrl[0].replace("${accesstoken}",token);
             QywxSendMsgResponse response = sendHttpRequestSingle(url,interfaceUrl[1],JSONObject.toJSONString(param)
-                    ,new TypeReference<QywxSendMsgResponse>(){});
+                    ,new TypeReference<QywxSendMsgResponse>(){},true);
             log.error("鎺ㄩ�佹秷鎭粨鏋渰}",JSONObject.toJSONString(response));
             if(response.getErrcode()!=null && response.getErrcode() ==0){
                 return response;
@@ -112,12 +118,57 @@
 
         return null;
     }
+    public static InputStream getMediaInputstream(String token, String media)   {
+        try {
+            String[] interfaceUrl = QywxConstant.GET_MEDIA;
+            String url = qyUtil.qiweiUrl+interfaceUrl[0].replace("${accesstoken}",token).replace("${media_id}",media);
+            log.info("浼佷笟寰俊涓存椂绱犳潗鑾峰彇url=========="+url);
+            return  HttpsUtil.connectionInputsteam(url,"GET",null,null);
+        }catch (Exception e){
+            e.printStackTrace();
+            log.error("浼佷笟寰俊涓存椂绱犳潗鑾峰彇error=========="+e.getMessage());
+        }
+
+        return null;
+    }
+
+    public static   Map<String,Object> getMediaInputstreamMap(String token, String media)   {
+        try {
+            String[] interfaceUrl = QywxConstant.GET_MEDIA;
+            String url = qyUtil.qiweiUrl+interfaceUrl[0].replace("${accesstoken}",token).replace("${media_id}",media);
+            log.info("浼佷笟寰俊涓存椂绱犳潗鑾峰彇url=========="+url);
+            Map<String,Object> map =  HttpsUtil.connInputsteamReturnMap(url,"GET",null,null);
+            return map;
+        }catch (Exception e){
+            e.printStackTrace();
+            log.error("浼佷笟寰俊涓存椂绱犳潗鑾峰彇error=========="+e.getMessage());
+        }
+
+        return null;
+    }
     public static QywxUserInfoResponse getUserInfo(String token,String id)  {
         String[] interfaceUrl = QywxConstant.GET_USER_DETAIL;
         String url = interfaceUrl[0].replace("${accesstoken}",token).replace("${id}",id);
         QywxUserInfoResponse response = sendHttpRequestSingle(url,interfaceUrl[1],""
-                ,new TypeReference<QywxUserInfoResponse>(){});
+                ,new TypeReference<QywxUserInfoResponse>(){},false);
         if(response.getErrcode()!=null && response.getErrcode() ==0){
+            return response;
+        }
+        return null;
+    }
+
+    /**
+     *
+     * @param token
+     * @param type 	濯掍綋鏂囦欢绫诲瀷锛屽垎鍒湁鍥剧墖锛坕mage锛夈�佽闊筹紙voice锛夈�佽棰戯紙video锛夛紝鏅�氭枃浠讹紙file锛�
+     * @return
+     */
+    public static QywxUploadMediaResponse uploadMedia(String token,String type,String imgurl)  {
+        String[] interfaceUrl = QywxConstant.UPLOAD_TEMP_MEDIA;
+        String url = interfaceUrl[0].replace("${accesstoken}",token).replace("${type}",type);
+        QywxUploadMediaResponse response = sendHttpRequestMultifile(url,interfaceUrl[1],imgurl
+                ,new TypeReference<QywxUploadMediaResponse>(){});
+        if(response !=null && response.getErrcode()!=null && response.getErrcode() ==0){
             return response;
         }
         return null;
@@ -156,12 +207,12 @@
      * @param <T>
      */
     public static   <T> QywxBaseResponse<T> sendHttpRequest(String url, String name, String param, TypeReference<QywxBaseResponse<T>> typeReference){
-        log.info("銆�"+name+"銆�================寮�濮�===="+ JSONObject.toJSONString(param));
+        log.info("銆�"+name+"銆�================寮�濮�===="+qyUtil.qiweiUrl+url+"\nparam==========================:"+ JSONObject.toJSONString(param));
         if ( StringUtils.isNotBlank(url)) {
             String res = null;
             try {
                 Map<String,String> headers = new HashMap<>();
-                res = HttpsUtil.postJson(qyUtil.qiweiUrl+url,param);
+                res = HttpsUtil.get(qyUtil.qiweiUrl+url,true);
                 QywxBaseResponse result = JSONObject.parseObject(res, typeReference.getType());
                 logResult(result,name);
                 return  result;
@@ -172,13 +223,51 @@
         }
         return  null;
     }
-    public static  <T extends QywxBaseSingleResponse>  T sendHttpRequestSingle(String url, String name, String param, TypeReference<T> typeReference){
-        log.info("銆�"+name+"銆�================寮�濮�===="+ JSONObject.toJSONString(param));
+    public static   <T> QywxBaseResponse<T> sendHttpGetRequest(String url, String name,  TypeReference<QywxBaseResponse<T>> typeReference){
+        log.info("銆�"+name+"銆�================寮�濮�===="+qyUtil.qiweiUrl+url+"\nparam==========================:"+ JSONObject.toJSONString(url));
         if ( StringUtils.isNotBlank(url)) {
             String res = null;
             try {
                 Map<String,String> headers = new HashMap<>();
-                res = HttpsUtil.postJson(qyUtil.qiweiUrl+url,param);
+                res = HttpsUtil.get(qyUtil.qiweiUrl+url,true);
+                QywxBaseResponse result = JSONObject.parseObject(res, typeReference.getType());
+                logResult(result,name);
+                return  result;
+            }catch (Exception e){
+                e.printStackTrace();
+                log.error("銆�"+name+"銆�================澶辫触===="+ JSONObject.toJSONString(url));
+            }
+        }
+        return  null;
+    }
+    public static  <T extends QywxBaseSingleResponse>  T sendHttpRequestMultifile(String url, String name, String imgUrl  , TypeReference<T> typeReference){
+        log.info("銆�"+name+"銆�================寮�濮�===="+qyUtil.qiweiUrl+url+"\nparam==========================:"+ imgUrl);
+        if ( StringUtils.isNotBlank(url)) {
+            String res = null;
+            try {
+                 res = HttpsUtil.uploadTempMedia (qyUtil.qiweiUrl+url,imgUrl);
+                log.info("浠庝紒寰帴鍙�:{}----涓婁紶涓存椂绱犳潗缁撴灉:{}",url,res);
+                JSONObject jsonObject = JSONObject.parseObject(res);
+                T result = JSONObject.parseObject(res, typeReference.getType());
+                return  result;
+            }catch (Exception e){
+                e.printStackTrace();
+                log.error("銆�"+name+"銆�================澶辫触===="+ imgUrl);
+            }
+        }
+        return  null;
+    }
+    public static  <T extends QywxBaseSingleResponse>  T sendHttpRequestSingle(String url, String name, String param, TypeReference<T> typeReference,boolean isPost){
+        log.info("銆�"+name+"銆�================寮�濮�===="+qyUtil.qiweiUrl+url+"\nparam==========================:"+ JSONObject.toJSONString(param));
+        if ( StringUtils.isNotBlank(url)) {
+            String res = null;
+            try {
+                Map<String,String> headers = new HashMap<>();
+                if(isPost){
+                    res = HttpsUtil.postJson(qyUtil.qiweiUrl+url,param);
+                }else{
+                    res = HttpsUtil.get(qyUtil.qiweiUrl+url,true);
+                }
                 T result = JSONObject.parseObject(res, typeReference.getType());
 //                logResult(result,name);
                 return  result;

--
Gitblit v1.9.3