From 4ff738f377504fe8f2296df18cf7d0123641cdd9 Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期四, 17 十月 2019 22:11:03 +0800
Subject: [PATCH] 优化调用微服务时的报错

---
 WebService/src/main/java/com/java110/web/smo/impl/PackingSpaceServiceSMOImpl.java |   47 ++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 42 insertions(+), 5 deletions(-)

diff --git a/WebService/src/main/java/com/java110/web/smo/impl/PackingSpaceServiceSMOImpl.java b/WebService/src/main/java/com/java110/web/smo/impl/PackingSpaceServiceSMOImpl.java
index ec5cedc..8d4be0d 100644
--- a/WebService/src/main/java/com/java110/web/smo/impl/PackingSpaceServiceSMOImpl.java
+++ b/WebService/src/main/java/com/java110/web/smo/impl/PackingSpaceServiceSMOImpl.java
@@ -1,11 +1,12 @@
 package com.java110.web.smo.impl;
 
+import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
-import com.java110.common.constant.PrivilegeCodeConstant;
-import com.java110.common.constant.ResponseConstant;
-import com.java110.common.constant.ServiceConstant;
-import com.java110.common.exception.SMOException;
-import com.java110.common.util.Assert;
+import com.java110.utils.constant.PrivilegeCodeConstant;
+import com.java110.utils.constant.ResponseConstant;
+import com.java110.utils.constant.ServiceConstant;
+import com.java110.utils.exception.SMOException;
+import com.java110.utils.util.Assert;
 import com.java110.core.context.IPageData;
 import com.java110.web.core.BaseComponentSMO;
 import com.java110.web.smo.IParkingSpaceServiceSMO;
@@ -17,6 +18,9 @@
 import org.springframework.http.ResponseEntity;
 import org.springframework.stereotype.Service;
 import org.springframework.web.client.RestTemplate;
+
+import java.util.HashMap;
+import java.util.Map;
 
 /**
  * 灏忓尯妤煎疄鐜扮被
@@ -200,6 +204,39 @@
         responseEntity = this.callCenterService(restTemplate, pd, "",
                 apiUrl,
                 HttpMethod.GET);
+        if (responseEntity.getStatusCode() != HttpStatus.OK) {
+            return responseEntity;
+        }
+
+        JSONObject psInfo = JSONObject.parseObject(responseEntity.getBody().toString());
+        JSONArray pss = psInfo.getJSONArray("parkingSpaces");
+
+        Map feeMap = null;
+        JSONObject resultFeeInfo = null;
+        JSONObject psObj = null;
+        for (int roomIndex = 0; roomIndex < pss.size(); roomIndex++) {
+            psObj = pss.getJSONObject(roomIndex);
+            feeMap = new HashMap();
+            feeMap.put("communityId", communityId);
+            feeMap.put("psId", psObj.getString("psId"));
+            apiUrl = ServiceConstant.SERVICE_API_URL + "/api/fee.queryFeeByParkingSpace" + mapToUrlParam(feeMap);
+            responseEntity = this.callCenterService(restTemplate, pd, "",
+                    apiUrl,
+                    HttpMethod.GET);
+
+            if (responseEntity.getStatusCode() != HttpStatus.OK) {
+                //throw new SMOException(ResponseConstant.RESULT_CODE_ERROR, "褰撳墠鎴垮眿[" + roomObj.getString("roomNum") + "]娌℃湁鐗╀笟璐逛俊鎭紝鏁版嵁閿欒");
+
+                continue;
+            }
+
+            resultFeeInfo = JSONObject.parseObject(responseEntity.getBody().toString());
+            psObj.putAll(resultFeeInfo);
+
+        }
+
+        responseEntity = new ResponseEntity(psInfo.toJSONString(), HttpStatus.OK);
+
         return responseEntity;
     }
 

--
Gitblit v1.8.0