From 8cbee71a1145555fabb0ebcdd9a8654da4a485ae Mon Sep 17 00:00:00 2001 From: CZT <czt18638530771@163.com> Date: 星期日, 17 九月 2023 20:49:28 +0800 Subject: [PATCH] 优化上海接口-手动上传时根据协议区分数据是否为集合形式 --- src/main/java/com/fzzy/api/view/pr/Api1101PR.java | 67 +++++++++++++++++++++++++++++---- src/main/java/com/fzzy/push/sh2023/SH2023OrderApiServiceImpl.java | 6 ++ src/main/java/com/fzzy/push/sh2023/SH2023ApiRemoteService.java | 3 + 3 files changed, 65 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/fzzy/api/view/pr/Api1101PR.java b/src/main/java/com/fzzy/api/view/pr/Api1101PR.java index f9bc997..bb2579a 100644 --- a/src/main/java/com/fzzy/api/view/pr/Api1101PR.java +++ b/src/main/java/com/fzzy/api/view/pr/Api1101PR.java @@ -5,6 +5,7 @@ import com.bstek.dorado.annotation.Expose; import com.fzzy.api.Constant; import com.fzzy.api.data.ApiParam; +import com.fzzy.api.data.PushProtocol; import com.fzzy.api.dto.ResponseDto; import com.fzzy.api.entity.Api1101; import com.fzzy.api.entity.ApiConfs; @@ -16,13 +17,12 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; - import java.util.List; /** * 鍗曚綅淇℃伅 * - * @author he + * @author czt */ @Component public class Api1101PR { @@ -100,21 +100,42 @@ */ @Expose public String pushData(List<Api1101> items) { - ResponseDto responseDto; - String result = ""; //鑾峰彇閰嶇疆 String kqdm = items.get(0).getKqdm(); ApiConfs apiConf = apiCommonService.getConf(kqdm); - if (null == apiConf) return "绯荤粺娌℃湁鑾峰彇鍒板綋鍓嶅簱鍖洪厤缃俊鎭紝鎵ц澶辫触"; + if (null == apiConf) { + return "绯荤粺娌℃湁鑾峰彇鍒板綋鍓嶅簱鍖洪厤缃俊鎭紝鎵ц澶辫触"; + } + + //鑾峰彇瀹炵幇鎺ュ彛 + ApiRemoteService apiRemoteService = apiPushManager.getApiRemoteService(apiConf.getPushProtocol()); + if (null == apiRemoteService) { + return "绯荤粺娌℃湁褰撳墠鎺ㄩ�佸崗璁厤缃紝鎵ц澶辫触"; + } + + //鏍规嵁鐪佷唤鍗忚锛屽垽鏂槸闆嗗悎褰㈠紡涓婃姤杩樻槸鍗曟潯json涓婃姤 + if(PushProtocol.SB_SH_2023.getCode().equals(apiConf.getPushProtocol())){ + return pushDataList(items, apiRemoteService, apiConf); + } + + return pushDataSingle(items, apiRemoteService, apiConf); + } + + /** + * 鍗曟潯鏁版嵁json鎺ㄩ�� + * @param items + * @param apiRemoteService + * @param apiConf + * @return + */ + private String pushDataSingle(List<Api1101> items, ApiRemoteService apiRemoteService, ApiConfs apiConf) { + ResponseDto responseDto; + String result = ""; //灏佽鍙傛暟 ApiParam param = new ApiParam(apiConf, Constant.API_CATEGORY_11, Constant.API_CODE_1101); - - //鑾峰彇瀹炵幇鎺ュ彛 - ApiRemoteService apiRemoteService = apiPushManager.getApiRemoteService(param.getPushProtocol()); - if (null == apiRemoteService) return "绯荤粺娌℃湁褰撳墠鎺ㄩ�佸崗璁厤缃紝鎵ц澶辫触"; Api1101 d; for (ApiParent data : items) { @@ -133,4 +154,32 @@ return result; } + /** + * 闆嗗悎褰㈠紡鎺ㄩ�� + * @param items + * @param apiRemoteService + * @param apiConf + * @return + */ + private String pushDataList(List<Api1101> items, ApiRemoteService apiRemoteService, ApiConfs apiConf) { + + //灏佽鍙傛暟 + ApiParam param = new ApiParam(apiConf, Constant.API_CATEGORY_11, Constant.API_CODE_1101); + + + //鎺ㄩ�侊紝鏁版嵁涓洪泦鍚堝舰寮� + ResponseDto responseDto = apiRemoteService.pushData(param, apiConf, items); + if (responseDto.getSuccess() == 0) { + //鎺ㄩ�佹垚鍔燂紝鏇存柊鏁版嵁涓婁紶鐘舵�� + for (Api1101 data : items) { + if (Constant.CZBZ_I.equals(data.getCzbz())) { + //鏇存柊鐘舵�� + api1101Rep.updateStatus(data.getKqdm(), Constant.CZBZ_U); + } + } + } + + return responseDto.toString(); + } + } diff --git a/src/main/java/com/fzzy/push/sh2023/SH2023ApiRemoteService.java b/src/main/java/com/fzzy/push/sh2023/SH2023ApiRemoteService.java index 0dc1763..8d3b4e7 100644 --- a/src/main/java/com/fzzy/push/sh2023/SH2023ApiRemoteService.java +++ b/src/main/java/com/fzzy/push/sh2023/SH2023ApiRemoteService.java @@ -74,7 +74,7 @@ String inteId = param.getInteId(); String kqdm = param.getKqdm(); //鏌ヨ搴撳尯淇℃伅琛屾斂鍖哄垝鐮� - List<Api1102> api1102List = api1102Rep.findPushData(conf.getKqdm()); + List<Api1102> api1102List = api1102Rep.findPushData(kqdm); try { if (null == conf) { conf = apiCommonService.getConf(kqdm); @@ -110,6 +110,7 @@ String key = RedisConst.buildKey(RedisConst.KYE_ORDER, conf.getKqdm()); String orderId = (String)redisUtil.get(key); if(StringUtils.isEmpty(orderId)){ + log.error("鎸囦护id澶辨晥=" + jsonData); ResponseDto responseDto = new ResponseDto(99, "鎸囦护id澶辨晥"); apiLog.setStatus(99); apiLog.setResult("鎸囦护id澶辨晥"); diff --git a/src/main/java/com/fzzy/push/sh2023/SH2023OrderApiServiceImpl.java b/src/main/java/com/fzzy/push/sh2023/SH2023OrderApiServiceImpl.java index 5b662a5..30b5a8e 100644 --- a/src/main/java/com/fzzy/push/sh2023/SH2023OrderApiServiceImpl.java +++ b/src/main/java/com/fzzy/push/sh2023/SH2023OrderApiServiceImpl.java @@ -48,10 +48,12 @@ // 鑻ユ寚浠ょ被鍨嬩笉涓�1锛屽垯杩斿洖 if(!OrderConstant.ORDER_TYPE_1.equals(orderType)){ + log.error("鎸囦护绫诲瀷涓嶄负1锛屼笉杩涜鏁版嵁涓婃姤={}", req); return; } String ids = req.getContent(); if(StringUtils.isEmpty(ids)){ + log.error("鎸囦护鎺ュ彛涓虹┖锛屼笉杩涜鏁版嵁涓婃姤={}", req); return; } @@ -66,8 +68,10 @@ param.setEnd(DateUtils.parseDate(req.getEndtime(), new String[]{"yyyy-MM-dd HH:mm:ss"})); param.setDeptId(conf.getDeptId()); - String[] interfaces = ids.split(","); + log.info("鎺ユ敹鐨勬寚浠や腑鎺ュ彛鍐呭涓�={}", req.getContent()); + String[] interfaces = ids.split(";"); for (String inteId : interfaces) { + log.info("杩樻槸鎵ц鎺ュ彛={}鐨勬暟鎹笂鎶�", inteId); param.setInteId(inteId); getDataToPush(param, inteId); } -- Gitblit v1.9.3