From 86d368337175a7d7eed5e9330bd80a838ab4f396 Mon Sep 17 00:00:00 2001
From: jiazx0107@163.com <jiazx0107@163.com>
Date: 星期四, 09 十一月 2023 17:25:23 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/igds-api-gateway' into igds-api-gateway
---
src/main/java/com/fzzy/push/whhpjl/WhjlApiRemoteService.java | 66 ++++++++++++++++++--------------
1 files changed, 37 insertions(+), 29 deletions(-)
diff --git a/src/main/java/com/fzzy/push/whhpjl/WhjlApiRemoteService.java b/src/main/java/com/fzzy/push/whhpjl/WhjlApiRemoteService.java
index 6cb31f9..01e6be7 100644
--- a/src/main/java/com/fzzy/push/whhpjl/WhjlApiRemoteService.java
+++ b/src/main/java/com/fzzy/push/whhpjl/WhjlApiRemoteService.java
@@ -8,14 +8,11 @@
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;
-import com.fzzy.whjl.WhjlConstant;
+import com.fzzy.otherview.whhpjl.WhjlConstant;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils;
@@ -42,6 +39,8 @@
private ApiTriggerService apiTriggerService;
@Autowired
private ApiLogRep apiLogRep;
+ @Autowired
+ private Whjl2023HttpClientUtil whjl2023HttpClientUtil;
@Override
public String getProtocol() {
@@ -67,8 +66,8 @@
ApiLog apiLog = new ApiLog();
apiLog.setId(ContextUtil.getUUID());
apiLog.setInteId(inteId);
- String jsonData = getJsonData(inteId, data);
- log.info("鏁版嵁鎶ユ枃淇℃伅=" + jsonData);
+ String jsonData = getJsonData(data);
+ log.info("鎺ュ彛鏁版嵁淇℃伅=" + jsonData);
inteId = getInteId(inteId);
if (StringUtils.isEmpty(inteId)) {
ResponseDto responseDto = new ResponseDto(99, "娌℃湁鑾峰彇鍒版帴鍙�");
@@ -88,31 +87,39 @@
apiLogRep.save(apiLog);
return responseDto;
}
+
//灏佽鎺ㄩ�佹暟鎹�
WhjlReqDto reqData = new WhjlReqDto();
+ //鎶ユ枃鏍囪瘑ID
reqData.setId(ContextUtil.getUUID());
- reqData.setUid(conf.getKqdm());
- //TODO 鎸囦护id寰呯‘璁�
- reqData.setOrderid("");
- reqData.setAppcode(conf.getUserName());
- reqData.setTimestamp(ContextUtil.getCurTimeMillis());
+ //韬唤ID
+ reqData.setUid(conf.getUserName());
+ //鑾峰彇鎸囦护id
+ String key = RedisConst.buildKey(RedisConst.KYE_ORDER, conf.getKqdm());
+ String orderId = (String)redisUtil.get(key);
+ if(StringUtils.isEmpty(orderId)){
+ orderId = reqData.getId();
+ }
+ reqData.setOrderid(orderId);
+ //搴旂敤鐮�
+ reqData.setAppcode(conf.getAppCode());
+ //鏃堕棿鎴�
+ reqData.setTimestamp(Long.valueOf(ContextUtil.getCurTimeMillis()));
+ //韬唤绛惧悕锛屽搴旂敤鐮乢鎺堟潈鐮乢绔欑偣缂栫爜_鎶ユ枃ID_鏃堕棿鎴宠繘琛孧D5绠楁硶绛惧悕
+ String accessToken = reqData.getAppcode() +"_" + conf.getPassword() +"_" + reqData.getUid() + "_" + reqData.getId() + "_" + reqData.getTimestamp();
+ log.info("韬唤绛惧悕锛�" + accessToken);
+ reqData.setAccesstoken(MyMD5Util.encrypt(accessToken));
+ //鏁版嵁鎬绘潯鏁�
List<Object> list = (List<Object>)data;
reqData.setDatalength(list.size());
- //鏁版嵁杩涜SM4鍔犲瘑
- reqData.setData(AESUtils.encrypt(jsonData, conf.getPublicKey()));
- reqData.setOperator("insert");
+ //鏁版嵁涓讳綋锛岃繘琛孲M4鍔犲瘑
+ reqData.setData(SM4Util.encryptEcb(conf.getPublicKey(), jsonData));
//鎽樿锛屾暟鎹富浣撶殑MD5鍊�
- reqData.setDigst(MyMD5Util.encrypt(jsonData));
- //韬唤绛惧悕锛屽搴旂敤鐮乢鎺堟潈鐮乢绔欑偣缂栫爜_鎶ユ枃ID_鏃堕棿鎴宠繘琛孧D5绠楁硶绛惧悕
- StringBuffer buffer = new StringBuffer();
- buffer.append(reqData.getAppcode()).append("_");
- buffer.append(conf.getPublicKey()).append("_");
- buffer.append(conf.getKqmc()).append("_");
- buffer.append(reqData.getId()).append("_");
- buffer.append(reqData.getTimestamp());
- reqData.setDigst(MyMD5Util.encrypt(buffer.toString()));
+ reqData.setDigest(MyMD5Util.encrypt(jsonData));
+ //鎿嶄綔绫诲瀷
+ reqData.setOperator("insert");
- WhjlRespDto responseDto = Whjl2023HttpClientUtil.postPushData(conf.getApiUrl() + inteId, reqData, conf);
+ WhjlRespDto responseDto = whjl2023HttpClientUtil.postPushData(conf.getApiUrl() + inteId, reqData);
apiLog.setStatus(responseDto.getCode() == 200 ? 0 : responseDto.getCode());
apiLog.setResult(responseDto.getResult());
apiLogRep.save(apiLog);
@@ -128,15 +135,16 @@
}
/**
- * 璋冩暣鏁版嵁灏佽锛岃幏鍙杍son鏁版嵁
+ * 璋冩暣鏁版嵁灏佽鎴恖ist锛岃幏鍙杍son鏁版嵁
*
- * @param inteId
* @param data
* @return
* @throws Exception
*/
- private String getJsonData(String inteId, Object data) {
- return JSON.toJSONString(data);
+ private String getJsonData(Object data) {
+ List<Object> list = new ArrayList<>();
+ list.add(data);
+ return JSON.toJSONString(list);
}
private String getInteId(String inteId) {
--
Gitblit v1.9.3