From 7aab004601e77890b158f19d1735594a8326feaa Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期四, 24 四月 2025 17:11:17 +0800
Subject: [PATCH] 数据库事务注解位置调整

---
 pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/util/RestTemplateUtil.java |  115 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 115 insertions(+), 0 deletions(-)

diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/util/RestTemplateUtil.java b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/util/RestTemplateUtil.java
new file mode 100644
index 0000000..04710fd
--- /dev/null
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/util/RestTemplateUtil.java
@@ -0,0 +1,115 @@
+package com.dy.pipIrrWechat.util;
+
+import com.alibaba.fastjson2.JSONObject;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.*;
+import org.springframework.stereotype.Component;
+import org.springframework.util.MultiValueMap;
+import org.springframework.web.client.RestTemplate;
+
+import java.io.IOException;
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * @author ZhuBaoMin
+ * @date 2024-03-06 13:47
+ * @LastEditTime 2024-03-06 13:47
+ * @Description
+ */
+
+@Component
+public class RestTemplateUtil {
+
+    @Autowired
+    private RestTemplate restTemplate;
+
+    //@Qualifier("RestTemplateWithCert")
+    //@Resource
+    //private RestTemplate restTemplate;
+
+    public JSONObject get(String url, Map<String, Object> queryParams) throws IOException {
+        return get(url, queryParams, new HashMap<>(1));
+    }
+
+    public JSONObject get(String url, Map<String, Object> queryParams, Map<String, String> headerParams) throws IOException {
+        String tempUrl = setParamsByAppendUrl(queryParams, url);
+        HttpHeaders headers = new HttpHeaders();
+        headerParams.forEach(headers::add);
+        HttpEntity<MultiValueMap<String, Object>> httpEntity = new HttpEntity<>(null, headers);
+        ResponseEntity<String> response = restTemplate.exchange(tempUrl, HttpMethod.GET, httpEntity, String.class);
+        return JSONObject.parseObject(response.getBody());
+    }
+
+    public JSONObject getHeaders(String url, Map<String, Object> queryParams, Map<String, String> headerParams) throws IOException {
+        String tempUrl = setParamsByAppendUrl(queryParams, url);
+        HttpHeaders headers = new HttpHeaders();
+        headerParams.forEach(headers::add);
+        HttpEntity<MultiValueMap<String, Object>> httpEntity = new HttpEntity<>(null, headers);
+        ResponseEntity<String> response = restTemplate.exchange(tempUrl, HttpMethod.GET, httpEntity, String.class);
+
+        JSONObject jsonObject = new JSONObject();
+        jsonObject.put("headers", response.getHeaders());
+        jsonObject.put("body", response.getBody());
+        return jsonObject;
+    }
+
+    public JSONObject get2(String url, Map<String, Object> queryParams, Map<String, String> headerParams) throws IOException {
+        String tempUrl = setParamsByPath(queryParams, url);
+        HttpHeaders headers = new HttpHeaders();
+        headerParams.forEach(headers::add);
+        HttpEntity<MultiValueMap<String, Object>> httpEntity = new HttpEntity<>(null, headers);
+        ResponseEntity<String> response = restTemplate.exchange(tempUrl, HttpMethod.GET, httpEntity, String.class, queryParams);
+        return JSONObject.parseObject(response.getBody());
+    }
+
+    public JSONObject post(String url, String json, Map<String, String> headerParams) {
+        HttpHeaders headers = new HttpHeaders();
+        headerParams.forEach(headers::add);
+        headers.setContentType(MediaType.APPLICATION_JSON);
+        headers.add("Accept", MediaType.APPLICATION_JSON.toString());
+        HttpEntity<String> httpEntity = new HttpEntity<>(json, headers);
+        ResponseEntity<String> response = restTemplate.exchange(url, HttpMethod.POST, httpEntity, String.class);
+        return JSONObject.parseObject(response.getBody());
+    }
+
+    private String setParamsByPath(Map<String, Object> queryParams, String url) {
+        // url?id={id}&name={name}
+        if (queryParams == null || queryParams.isEmpty()) {
+            return url;
+        }
+        StringBuilder sb = new StringBuilder();
+        try {
+            for (Map.Entry<String, Object> entry : queryParams.entrySet()) {
+                sb.append("&").append(entry.getKey()).append("=").append("{").append(entry.getKey()).append("}");
+            }
+            if (!url.contains("?")) {
+                sb.deleteCharAt(0).insert(0, "?");
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return url + sb;
+    }
+
+    private String setParamsByAppendUrl(Map<String, Object> queryParams, String url) {
+        // url?id=1&name=zzc
+        if (queryParams == null || queryParams.isEmpty()) {
+            return url;
+        }
+        StringBuilder sb = new StringBuilder();
+        try {
+            for (Map.Entry<String, Object> entry : queryParams.entrySet()) {
+                sb.append("&").append(entry.getKey()).append("=");
+                sb.append(entry.getValue());
+            }
+            if (!url.contains("?")) {
+                sb.deleteCharAt(0).insert(0, "?");
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return url + sb;
+    }
+
+}
\ No newline at end of file

--
Gitblit v1.8.0