From c8665e4368f2e81a54a8117adf8aa77c05add0b1 Mon Sep 17 00:00:00 2001
From: wuxw7 <wuxw7@asiainfo.com>
Date: 星期日, 25 十一月 2018 21:21:29 +0800
Subject: [PATCH] 用户注册返回报文处理

---
 Api/src/main/java/com/java110/api/listener/AbstractServiceApiDataFlowListener.java |   57 +++++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 53 insertions(+), 4 deletions(-)

diff --git a/Api/src/main/java/com/java110/api/listener/AbstractServiceApiDataFlowListener.java b/Api/src/main/java/com/java110/api/listener/AbstractServiceApiDataFlowListener.java
index cda5cf5..3546257 100644
--- a/Api/src/main/java/com/java110/api/listener/AbstractServiceApiDataFlowListener.java
+++ b/Api/src/main/java/com/java110/api/listener/AbstractServiceApiDataFlowListener.java
@@ -2,15 +2,14 @@
 
 import com.alibaba.fastjson.JSONObject;
 import com.java110.common.constant.CommonConstant;
+import com.java110.common.constant.ResponseConstant;
+import com.java110.common.util.Assert;
 import com.java110.common.util.StringUtil;
 import com.java110.core.context.DataFlowContext;
 import com.java110.entity.center.AppService;
 import com.java110.event.service.api.ServiceDataFlowListener;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpEntity;
-import org.springframework.http.HttpHeaders;
-import org.springframework.http.HttpMethod;
-import org.springframework.http.ResponseEntity;
+import org.springframework.http.*;
 import org.springframework.web.client.HttpClientErrorException;
 import org.springframework.web.client.HttpServerErrorException;
 import org.springframework.web.client.HttpStatusCodeException;
@@ -78,6 +77,56 @@
 
 
     /**
+     * 澶勭悊杩斿洖鎶ユ枃淇℃伅
+     * @param dataFlowContext
+     */
+    protected void doResponse(DataFlowContext dataFlowContext) {
+        ResponseEntity<String> responseEntity = dataFlowContext.getResponseEntity();
+        ResponseEntity<String> newResponseEntity = null;
+        if(responseEntity == null || StringUtil.isNullOrNone(responseEntity.getBody()) || !Assert.isJsonObject(responseEntity.getBody())){ //杩欓噷涓�鑸繘涓嶅幓
+            return ;
+        }
+        JSONObject resJson = JSONObject.parseObject(responseEntity.getBody());
+
+        if(!resJson.containsKey("orders")
+                || !ResponseConstant.RESULT_CODE_SUCCESS.equals(resJson.getJSONObject("orders").getJSONObject("response").getString("code"))){
+            return ;
+        }
+
+        if(resJson.containsKey("business") && resJson.getJSONArray("business").size() == 1){
+            JSONObject busiJson = resJson.getJSONArray("business").getJSONObject(0);
+            if(busiJson.containsKey("orderTypeCd")){
+                busiJson.remove("orderTypeCd");
+            }
+            if(busiJson.containsKey("serviceCode")){
+                busiJson.remove("serviceCode");
+            }
+            if(busiJson.containsKey("response")){
+                busiJson.remove("response");
+            }
+            if(busiJson.containsKey("bId")){
+                busiJson.remove("bId");
+            }
+
+            if(busiJson.containsKey("businessType")){
+                busiJson.remove("businessType");
+            }
+
+            if(busiJson.containsKey("dataFlowId")){
+                busiJson.remove("dataFlowId");
+            }
+            //杩欎釜涓�鑸槸 center鏈嶅姟鍜屼笅娓哥郴缁熶箣闂翠氦浜掔殑娴佹按鍙互鍒犳帀锛岃繑鍥炲嚭鍘讳篃娌℃湁鍟ユ剰涔�
+            if(busiJson.containsKey("transactionId")){
+                busiJson.remove("transactionId");
+            }
+            newResponseEntity = new ResponseEntity<String>(busiJson.toJSONString(),responseEntity.getHeaders(), HttpStatus.OK);
+
+            dataFlowContext.setResponseEntity(newResponseEntity);
+        }
+    }
+
+
+    /**
      * 灏唕est 鍗忚杞负 璁㈠崟鍗忚
      * @param business
      * @return

--
Gitblit v1.8.0