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