From d8d69911bfc7cbc1b86834aa6fb5ddbba2801b2b Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期三, 08 七月 2020 12:26:29 +0800
Subject: [PATCH] 优化事务处理完成

---
 service-api/src/main/java/com/java110/api/listener/system/TransferListener.java |   15 ++++++++++++---
 1 files changed, 12 insertions(+), 3 deletions(-)

diff --git a/service-api/src/main/java/com/java110/api/listener/system/TransferListener.java b/service-api/src/main/java/com/java110/api/listener/system/TransferListener.java
index e305d22..0e5b60e 100644
--- a/service-api/src/main/java/com/java110/api/listener/system/TransferListener.java
+++ b/service-api/src/main/java/com/java110/api/listener/system/TransferListener.java
@@ -57,14 +57,23 @@
             if (CommonConstant.HTTP_METHOD_GET.equals(service.getMethod())) {
                 responseEntity = restTemplate.exchange(requestUrl, HttpMethod.GET, httpEntity, String.class);
             } else if (CommonConstant.HTTP_METHOD_PUT.equals(service.getMethod())) {
-                responseEntity = restTemplate.exchange(service.getUrl(), HttpMethod.PUT, httpEntity, String.class);
+                responseEntity = restTemplate.exchange(requestUrl, HttpMethod.PUT, httpEntity, String.class);
             } else if (CommonConstant.HTTP_METHOD_DELETE.equals(service.getMethod())) {
                 responseEntity = restTemplate.exchange(requestUrl, HttpMethod.DELETE, httpEntity, String.class);
             } else {
-                responseEntity = restTemplate.exchange(service.getUrl(), HttpMethod.POST, httpEntity, String.class);
+                responseEntity = restTemplate.exchange(requestUrl, HttpMethod.POST, httpEntity, String.class);
             }
         } catch (HttpStatusCodeException e) { //杩欓噷spring 妗嗘灦 鍦�4XX 鎴� 5XX 鏃舵姏鍑� HttpServerErrorException 寮傚父锛岄渶瑕侀噸鏂板皝瑁呬竴涓�
-            responseEntity = new ResponseEntity<String>(e.getResponseBodyAsString(), e.getStatusCode());
+            logger.error("璇锋眰涓嬫父鏈嶅姟銆�" + requestUrl + "銆戝紓甯革紝鍙傛暟涓�" + httpEntity + e.getResponseBodyAsString(), e);
+            String body = e.getResponseBodyAsString();
+
+            if(StringUtil.isJsonObject(body)){
+                JSONObject bodyObj = JSONObject.parseObject(body);
+                if(bodyObj.containsKey("message") && !StringUtil.isEmpty(bodyObj.getString("message"))){
+                    body = bodyObj.getString("message");
+                }
+            }
+            responseEntity = new ResponseEntity<String>(body, e.getStatusCode());
         }
 
         logger.debug("API 鏈嶅姟璋冪敤涓嬫父鏈嶅姟璇锋眰锛歿}锛岃繑鍥炰负锛歿}", httpEntity, responseEntity);

--
Gitblit v1.8.0