From 7d6d02e3d501a0a5f5cbdff16bf594c77f2fc7cd Mon Sep 17 00:00:00 2001
From: YYC <1833023622@qq.com>
Date: 星期一, 18 九月 2023 18:58:44 +0800
Subject: [PATCH] 优化上海接口-手动上传时根据协议区分数据是否为集合形式

---
 src/main/java/com/fzzy/api/view/pr/Api1204PR.java |   57 +++++++++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 51 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/fzzy/api/view/pr/Api1204PR.java b/src/main/java/com/fzzy/api/view/pr/Api1204PR.java
index e9773e0..f14ee11 100644
--- a/src/main/java/com/fzzy/api/view/pr/Api1204PR.java
+++ b/src/main/java/com/fzzy/api/view/pr/Api1204PR.java
@@ -4,6 +4,8 @@
 import com.bstek.dorado.annotation.DataResolver;
 import com.bstek.dorado.annotation.Expose;
 import com.bstek.dorado.data.provider.Page;
+import com.fzzy.api.data.PushProtocol;
+import com.fzzy.api.entity.Api1204;
 import com.fzzy.api.entity.Api1204;
 import com.fzzy.api.entity.ApiConfs;
 import com.fzzy.api.service.ApiCommonService;
@@ -170,18 +172,34 @@
 
         if (null == apiConf) return "绯荤粺娌℃湁鑾峰彇鍒板綋鍓嶅簱鍖洪厤缃俊鎭紝鎵ц澶辫触";
 
-        //灏佽鍙傛暟
-        ApiParam param = new ApiParam(apiConf, Constant.API_CATEGORY_11, Constant.API_CODE_1204);
-
-
         //鑾峰彇瀹炵幇鎺ュ彛
-        ApiRemoteService apiService = apiPushManager.getApiRemoteService(param.getPushProtocol());
+        ApiRemoteService apiService = apiPushManager.getApiRemoteService(apiConf.getPushProtocol());
         if (null == apiService) return "绯荤粺娌℃湁褰撳墠鎺ㄩ�佸崗璁厤缃紝鎵ц澶辫触";
 
+        if (PushProtocol.SB_SH_2023.getCode().equals(apiConf.getPushProtocol())) {
+            return pushDataList(items, apiService, apiConf);
+        }
+        return pushDataSingle(items, apiService, apiConf);
+    }
+    /**
+     * 鍗曟潯鏁版嵁json鎺ㄩ��
+     *
+     * @param items
+     * @param apiRemoteService
+     * @param apiConf
+     * @return
+     */
+    private String pushDataSingle(List<Api1204> items, ApiRemoteService apiRemoteService, ApiConfs apiConf) {
+        ResponseDto responseDto;
+        String result = "";
+
+        //灏佽鍙傛暟
+        ApiParam param = new ApiParam(apiConf, Constant.API_CATEGORY_12, Constant.API_CODE_1204);
+        Api1204 d;
         for (Api1204 data : items) {
             d = new Api1204();
             BeanUtils.copyProperties(data, d);
-            responseDto = apiService.pushData(param, apiConf, d);
+            responseDto = apiRemoteService.pushData(param, apiConf, d);
             result += responseDto.toString();
             if (responseDto.getSuccess() == 0) {
                 //todo 浠h〃涓婁紶鎴愬姛 ,鍚庢湡闇�瑕佷繚瀛樻棩蹇�
@@ -193,4 +211,31 @@
         return result;
     }
 
+    /**
+     * 澶氭潯鏁版嵁json鎺ㄩ��
+     *
+     * @param items
+     * @param apiRemoteService
+     * @param apiConf
+     * @return
+     */
+    private String pushDataList(List<Api1204> items, ApiRemoteService apiRemoteService, ApiConfs apiConf) {
+
+        //灏佽鍙傛暟
+        ApiParam param = new ApiParam(apiConf, Constant.API_CATEGORY_12, Constant.API_CODE_1204);
+
+        //鎺ㄩ�侊紝鏁版嵁涓洪泦鍚堝舰寮�
+        ResponseDto responseDto = apiRemoteService.pushData(param, apiConf, items);
+        if (responseDto.getSuccess() == 0) {
+            //鎺ㄩ�佹垚鍔燂紝鏇存柊鏁版嵁涓婁紶鐘舵��
+            for (Api1204 data : items) {
+                if (Constant.CZBZ_I.equals(data.getCzbz())) {
+                    //鏇存柊鐘舵��
+                    apiRepository.updateStatus(data.getRkjsdh(), Constant.CZBZ_U);
+                }
+            }
+        }
+        return responseDto.toString();
+    }
+
 }

--
Gitblit v1.9.3