From dfdd615c4cab8c142c76caebc70bdf16f4e12b10 Mon Sep 17 00:00:00 2001
From: CZT <czt18638530771@163.com>
Date: 星期三, 13 九月 2023 10:04:21 +0800
Subject: [PATCH] 优化上海接口指令时效问题
---
src/main/java/com/fzzy/push/whhpjl/WhjlApiRemoteService.java | 19 +++++++--
src/main/java/com/fzzy/api/utils/RedisConst.java | 5 ++
src/main/java/com/fzzy/push/sh2023/SH2023OrderApiServiceImpl.java | 9 ++++
src/main/java/com/fzzy/api/data/ApiParam.java | 3 -
src/main/java/com/fzzy/push/sh2023/SH2023ApiRemoteService.java | 43 ++++++++++++++-------
5 files changed, 56 insertions(+), 23 deletions(-)
diff --git a/src/main/java/com/fzzy/api/data/ApiParam.java b/src/main/java/com/fzzy/api/data/ApiParam.java
index cc31437..cd6a6b1 100644
--- a/src/main/java/com/fzzy/api/data/ApiParam.java
+++ b/src/main/java/com/fzzy/api/data/ApiParam.java
@@ -36,9 +36,6 @@
private String bizId;
- //鎸囦护ID锛岀敤浜庝笂绾у钩鍙板彂閫佹寚浠よ幏鍙栨暟鎹殑鎯呭喌
- private String orderid;
-
public ApiParam() {
super();
diff --git a/src/main/java/com/fzzy/api/utils/RedisConst.java b/src/main/java/com/fzzy/api/utils/RedisConst.java
index 1abd9aa..5c55c4f 100644
--- a/src/main/java/com/fzzy/api/utils/RedisConst.java
+++ b/src/main/java/com/fzzy/api/utils/RedisConst.java
@@ -24,6 +24,11 @@
*/
public static String KYE_TOKEN = "TOKEN";
+ /**
+ * 鎸囦护ID-ORDER
+ */
+ public static String KYE_ORDER = "ORDER";
+
diff --git a/src/main/java/com/fzzy/push/sh2023/SH2023ApiRemoteService.java b/src/main/java/com/fzzy/push/sh2023/SH2023ApiRemoteService.java
index 606d808..0dc1763 100644
--- a/src/main/java/com/fzzy/push/sh2023/SH2023ApiRemoteService.java
+++ b/src/main/java/com/fzzy/push/sh2023/SH2023ApiRemoteService.java
@@ -106,13 +106,24 @@
return responseDto;
}
+ //鑾峰彇鎸囦护id
+ String key = RedisConst.buildKey(RedisConst.KYE_ORDER, conf.getKqdm());
+ String orderId = (String)redisUtil.get(key);
+ if(StringUtils.isEmpty(orderId)){
+ ResponseDto responseDto = new ResponseDto(99, "鎸囦护id澶辨晥");
+ apiLog.setStatus(99);
+ apiLog.setResult("鎸囦护id澶辨晥");
+ apiLogRep.save(apiLog);
+ return responseDto;
+ }
+
//灏佽鎺ㄩ�佹暟鎹�
SH2023ReqDto reqData = new SH2023ReqDto();
reqData.setId(ContextUtil.getUUID());
//鑾峰彇韬唤ID锛屽嵆琛屾斂鍖哄垝鐮�
reqData.setUid(conf.getUserName());
//鎸囦护id
- reqData.setOrderid(param.getOrderid());
+ reqData.setOrderid(orderId);
//韬唤绛惧悕锛屼娇鐢ㄨ嚜鏈塕SA绉侀挜杩涜鍔犲瘑(鍦板尯琛屾斂鍖哄垝浠g爜_褰撳ぉ鏃ユ湡)
reqData.setAccess_token(RSAUtils.encryptData(reqData.getUid() + "_" + DateFormatUtils.format(new Date(), "yyyy-MM-dd"), conf.getPassword()));
//鏁版嵁鎬绘潯鏁�
@@ -182,27 +193,31 @@
return responseDto;
}
+ //鑾峰彇鎸囦护id
+ String key = RedisConst.buildKey(RedisConst.KYE_ORDER, conf.getKqdm());
+ String orderId = (String)redisUtil.get(key);
+ if(StringUtils.isEmpty(orderId)){
+ ResponseDto responseDto = new ResponseDto(99, "鎸囦护id澶辨晥");
+ apiLog.setStatus(99);
+ apiLog.setResult("鎸囦护id澶辨晥");
+ apiLogRep.save(apiLog);
+ return responseDto;
+ }
+
//灏佽鎺ㄩ�佹暟鎹�
SH2023ReqDto reqData = new SH2023ReqDto();
reqData.setId(ContextUtil.getUUID());
//鑾峰彇韬唤ID锛屽嵆琛屾斂鍖哄垝鐮�
- if (null == api1102List || api1102List.isEmpty()) {
- ResponseDto responseDto = new ResponseDto(99, "娌℃湁鑾峰彇鍒拌韩浠絀D");
- apiLog.setStatus(99);
- apiLog.setResult("娌℃湁鑾峰彇鍒拌韩浠絀D");
- apiLogRep.save(apiLog);
- return responseDto;
- }
- reqData.setUid(api1102List.get(0).getXzqhdm());
+ reqData.setUid(conf.getUserName());
//鎸囦护id
- reqData.setOrderid(param.getOrderid());
- //韬唤绛惧悕锛屽鍦板尯琛屾斂鍖哄垝浠g爜_褰撳ぉ鏃ユ湡杩涜MD5绠楁硶绛惧悕
- reqData.setAccess_token(RSAUtils.encryptData(reqData.getUid() + "_" + DateFormatUtils.format(new Date(), "yyyy-MM-dd"), conf.getPublicKey()));
+ reqData.setOrderid(orderId);
+ //韬唤绛惧悕锛屼娇鐢ㄨ嚜鏈塕SA绉侀挜杩涜鍔犲瘑(鍦板尯琛屾斂鍖哄垝浠g爜_褰撳ぉ鏃ユ湡)
+ reqData.setAccess_token(RSAUtils.encryptData(reqData.getUid() + "_" + DateFormatUtils.format(new Date(), "yyyy-MM-dd"), conf.getPassword()));
//鏁版嵁鎬绘潯鏁�
List<Object> list = (List<Object>) data;
reqData.setDatalength(list.size());
- //鏁版嵁杩涜SM4鍔犲瘑
- reqData.setData(jsonData);
+ //浣跨敤鍖虹骇骞冲彴鍏挜瀵规暟鎹繘琛孯SA鍔犲瘑
+ reqData.setData(RSAUtils.encrypt(jsonData, conf.getPublicKey()));
//鎽樿锛屾暟鎹富浣撶殑MD5鍊�
reqData.setDigst(MyMD5Util.encrypt(jsonData));
diff --git a/src/main/java/com/fzzy/push/sh2023/SH2023OrderApiServiceImpl.java b/src/main/java/com/fzzy/push/sh2023/SH2023OrderApiServiceImpl.java
index eea3602..5b662a5 100644
--- a/src/main/java/com/fzzy/push/sh2023/SH2023OrderApiServiceImpl.java
+++ b/src/main/java/com/fzzy/push/sh2023/SH2023OrderApiServiceImpl.java
@@ -4,6 +4,8 @@
import com.fzzy.api.data.ApiParam;
import com.fzzy.api.data.PushProtocol;
import com.fzzy.api.entity.ApiConfs;
+import com.fzzy.api.utils.RedisConst;
+import com.fzzy.api.utils.RedisUtil;
import com.fzzy.order.OrderApiService;
import com.fzzy.order.data.OrderConstant;
import com.fzzy.order.data.OrderData;
@@ -22,6 +24,8 @@
@Slf4j
public class SH2023OrderApiServiceImpl implements OrderApiService {
+ @Autowired
+ private RedisUtil redisUtil;
@Autowired
private SH2023ApiRemoteService apiRemoteService;
@Autowired
@@ -51,13 +55,16 @@
return;
}
+ //鎸囦护瀛樺叆缂撳瓨锛屾椂鏁�24灏忔椂
+ String key = RedisConst.buildKey(RedisConst.KYE_ORDER, conf.getKqdm());
+ redisUtil.set(key, orderid, 59 * 60 * 24);
+
ApiParam param = new ApiParam();
param.setPushProtocol(conf.getPushProtocol());
param.setKqdm(conf.getKqdm());
param.setStart(DateUtils.parseDate(req.getStarttime(), new String[]{"yyyy-MM-dd HH:mm:ss"}));
param.setEnd(DateUtils.parseDate(req.getEndtime(), new String[]{"yyyy-MM-dd HH:mm:ss"}));
param.setDeptId(conf.getDeptId());
- param.setOrderid(orderid);
String[] interfaces = ids.split(",");
for (String inteId : interfaces) {
diff --git a/src/main/java/com/fzzy/push/whhpjl/WhjlApiRemoteService.java b/src/main/java/com/fzzy/push/whhpjl/WhjlApiRemoteService.java
index 157f664..d5b1b13 100644
--- a/src/main/java/com/fzzy/push/whhpjl/WhjlApiRemoteService.java
+++ b/src/main/java/com/fzzy/push/whhpjl/WhjlApiRemoteService.java
@@ -8,10 +8,7 @@
import com.fzzy.api.service.ApiCommonService;
import com.fzzy.api.service.ApiRemoteService;
import com.fzzy.api.service.ApiTriggerService;
-import com.fzzy.api.utils.AESUtils;
-import com.fzzy.api.utils.ContextUtil;
-import com.fzzy.api.utils.MyMD5Util;
-import com.fzzy.api.utils.RedisUtil;
+import com.fzzy.api.utils.*;
import com.fzzy.api.view.repository.*;
import com.fzzy.push.whhpjl.dto.WhjlReqDto;
import com.fzzy.push.whhpjl.dto.WhjlRespDto;
@@ -88,12 +85,24 @@
apiLogRep.save(apiLog);
return responseDto;
}
+
+ //鑾峰彇鎸囦护id
+ String key = RedisConst.buildKey(RedisConst.KYE_ORDER, conf.getKqdm());
+ String orderId = (String)redisUtil.get(key);
+ if(StringUtils.isEmpty(orderId)){
+ ResponseDto responseDto = new ResponseDto(99, "鎸囦护id澶辨晥");
+ apiLog.setStatus(99);
+ apiLog.setResult("鎸囦护id澶辨晥");
+ apiLogRep.save(apiLog);
+ return responseDto;
+ }
+
//灏佽鎺ㄩ�佹暟鎹�
WhjlReqDto reqData = new WhjlReqDto();
reqData.setId(ContextUtil.getUUID());
reqData.setUid(conf.getKqdm());
//鎸囦护ID
- reqData.setOrderid(param.getOrderid());
+ reqData.setOrderid(orderId);
reqData.setAppcode(conf.getUserName());
reqData.setTimestamp(ContextUtil.getCurTimeMillis());
List<Object> list = (List<Object>)data;
--
Gitblit v1.9.3