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/Api1211PR.java |   58 ++++++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 50 insertions(+), 8 deletions(-)

diff --git a/src/main/java/com/fzzy/api/view/pr/Api1211PR.java b/src/main/java/com/fzzy/api/view/pr/Api1211PR.java
index c1b9212..ec689a6 100644
--- a/src/main/java/com/fzzy/api/view/pr/Api1211PR.java
+++ b/src/main/java/com/fzzy/api/view/pr/Api1211PR.java
@@ -4,6 +4,7 @@
 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.Api1211;
 import com.fzzy.api.entity.ApiConfs;
 import com.fzzy.api.service.ApiCommonService;
@@ -161,22 +162,37 @@
      */
     @Expose
     public String pushData(List<Api1211> items) {
-        ResponseDto responseDto;
-        String result = "";
-        Api1211 d;
+
         String kqdm = items.get(0).getKqdm();
         ApiConfs apiConf = apiCommonService.getConf(kqdm);
 
         if (null == apiConf) return "绯荤粺娌℃湁鑾峰彇鍒板綋鍓嶅簱鍖洪厤缃俊鎭紝鎵ц澶辫触";
 
-        //灏佽鍙傛暟
-        ApiParam param = new ApiParam(apiConf, Constant.API_CATEGORY_11, Constant.API_CODE_1211);
-
-
         //鑾峰彇瀹炵幇鎺ュ彛
-        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 apiService
+     * @param apiConf
+     * @return
+     */
+    private String pushDataSingle(List<Api1211> items, ApiRemoteService apiService, ApiConfs apiConf) {
+        ResponseDto responseDto;
+        String result = "";
+
+        //灏佽鍙傛暟
+        ApiParam param = new ApiParam(apiConf, Constant.API_CATEGORY_12, Constant.API_CODE_1211);
+        Api1211 d;
         for (Api1211 data : items) {
             d = new Api1211();
             BeanUtils.copyProperties(data, d);
@@ -192,4 +208,30 @@
         return result;
     }
 
+    /**
+     * 澶氭潯鏁版嵁json鎺ㄩ��
+     *
+     * @param items
+     * @param apiRemoteService
+     * @param apiConf
+     * @return
+     */
+    private String pushDataList(List<Api1211> items, ApiRemoteService apiRemoteService, ApiConfs apiConf) {
+
+        //灏佽鍙傛暟
+        ApiParam param = new ApiParam(apiConf, Constant.API_CATEGORY_12, Constant.API_CODE_1211);
+
+        //鎺ㄩ�侊紝鏁版嵁涓洪泦鍚堝舰寮�
+        ResponseDto responseDto = apiRemoteService.pushData(param, apiConf, items);
+        if (responseDto.getSuccess() == 0) {
+            //鎺ㄩ�佹垚鍔燂紝鏇存柊鏁版嵁涓婁紶鐘舵��
+            for (Api1211 data : items) {
+                if (Constant.CZBZ_I.equals(data.getCzbz())) {
+                    //鏇存柊鐘舵��
+                    apiRepository.updateStatus(data.getId(), Constant.CZBZ_U);
+                }
+            }
+        }
+        return responseDto.toString();
+    }
 }

--
Gitblit v1.9.3