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/Api1301PR.java | 115 +++++++++++++++++++++++++++++++++++++++------------------ 1 files changed, 79 insertions(+), 36 deletions(-) diff --git a/src/main/java/com/fzzy/api/view/pr/Api1301PR.java b/src/main/java/com/fzzy/api/view/pr/Api1301PR.java index 2c2a19d..5a7f644 100644 --- a/src/main/java/com/fzzy/api/view/pr/Api1301PR.java +++ b/src/main/java/com/fzzy/api/view/pr/Api1301PR.java @@ -4,7 +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.entity.Api1301; +import com.fzzy.api.data.PushProtocol; import com.fzzy.api.entity.ApiConfs; import com.fzzy.api.service.ApiCommonService; import com.fzzy.api.service.ApiPushManager; @@ -36,6 +36,7 @@ /** * 瀹夊叏绠$悊鏁版嵁 + * * @author chen */ @Slf4j @@ -79,7 +80,7 @@ } if (StringUtils.isNotBlank(param.getCzbz())) { - Predicate predicate2 = cb.equal(root.get("czbz"),param.getCzbz()); + Predicate predicate2 = cb.equal(root.get("czbz"), param.getCzbz()); predicates.add(predicate2); } if (null != param.getStart()) { @@ -114,44 +115,43 @@ Api1301 data = new Api1301(); BeanUtils.copyProperties(entity, data); - if(StringUtils.isEmpty(data.getId())){ + if (StringUtils.isEmpty(data.getId())) { data.setId(ContextUtil.getUUID()); } api1301Rep.save(data); } - /** - * api1301PR#delData - * - * @param data - */ - @Expose - public String delData(Api1301 data) { + /** + * api1301PR#delData + * + * @param data + */ + @Expose + public String delData(Api1301 data) { - api1301Rep.deleteById(data.getId()); + api1301Rep.deleteById(data.getId()); - return null; - } + return null; + } - /** - * - * 鏇存柊鍒犻櫎鏍囪 api1301PR#delUpdate - * - * @param entity - */ - @Expose - public String delUpdate(Api1301 entity) { + /** + * 鏇存柊鍒犻櫎鏍囪 api1301PR#delUpdate + * + * @param entity + */ + @Expose + public String delUpdate(Api1301 entity) { - entity.setCzbz(Constant.CZBZ_D); + entity.setCzbz(Constant.CZBZ_D); - Api1301 data = new Api1301(); - BeanUtils.copyProperties(entity, data); + Api1301 data = new Api1301(); + BeanUtils.copyProperties(entity, data); - api1301Rep.save(data); + api1301Rep.save(data); - return null; - } + return null; + } /** * api1301PR#pushData @@ -160,22 +160,37 @@ */ @Expose public String pushData(List<Api1301> items) { - ResponseDto responseDto; - String result = ""; - Api1301 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_1301); - - //鑾峰彇瀹炵幇鎺ュ彛 - 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<Api1301> items, ApiRemoteService apiService, ApiConfs apiConf) { + ResponseDto responseDto; + String result = ""; + + //灏佽鍙傛暟 + ApiParam param = new ApiParam(apiConf, Constant.API_CATEGORY_13, Constant.API_CODE_1301); + Api1301 d; for (Api1301 data : items) { d = new Api1301(); BeanUtils.copyProperties(data, d); @@ -183,7 +198,7 @@ result += responseDto.toString(); if (responseDto.getSuccess() == 0) { //todo 浠h〃涓婁紶鎴愬姛 ,鍚庢湡闇�瑕佷繚瀛樻棩蹇� - if("i".equals(d.getCzbz())){ + if ("i".equals(d.getCzbz())) { d.setCzbz("u"); api1301Rep.save(d); } @@ -191,4 +206,32 @@ } return result; } + + /** + * 澶氭潯鏁版嵁json鎺ㄩ�� + * + * @param items + * @param apiRemoteService + * @param apiConf + * @return + */ + private String pushDataList(List<Api1301> items, ApiRemoteService apiRemoteService, ApiConfs apiConf) { + + //灏佽鍙傛暟 + ApiParam param = new ApiParam(apiConf, Constant.API_CATEGORY_13, Constant.API_CODE_1301); + + //鎺ㄩ�侊紝鏁版嵁涓洪泦鍚堝舰寮� + ResponseDto responseDto = apiRemoteService.pushData(param, apiConf, items); + if (responseDto.getSuccess() == 0) { + //鎺ㄩ�佹垚鍔燂紝鏇存柊鏁版嵁涓婁紶鐘舵�� + for (Api1301 data : items) { + if (Constant.CZBZ_I.equals(data.getCzbz())) { + //鏇存柊鐘舵�� + data.setCzbz(Constant.CZBZ_U); + api1301Rep.save(data); + } + } + } + return responseDto.toString(); + } } -- Gitblit v1.9.3