From 430263f4f653dc02b3d65720e218d68b4a32b33b Mon Sep 17 00:00:00 2001
From: CZT <czt18638530771@163.com>
Date: 星期四, 17 八月 2023 19:01:29 +0800
Subject: [PATCH] 调整上海市2023接口架构

---
 src/main/java/com/fzzy/push/whhpjl/WhjlApiRemoteService.java |   50 ++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 36 insertions(+), 14 deletions(-)

diff --git a/src/main/java/com/fzzy/push/whhpjl/WhjlApiRemoteService.java b/src/main/java/com/fzzy/push/whhpjl/WhjlApiRemoteService.java
index c571da6..157f664 100644
--- a/src/main/java/com/fzzy/push/whhpjl/WhjlApiRemoteService.java
+++ b/src/main/java/com/fzzy/push/whhpjl/WhjlApiRemoteService.java
@@ -8,19 +8,20 @@
 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.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;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.Map;
+import java.util.*;
 
 /**
  * 姝︽眽鍐涚伯鐪佸钩鍙�-涓婁紶鏁版嵁鏈嶅姟绫�
@@ -56,22 +57,21 @@
     public ResponseDto pushData(ApiParam param, ApiConfs conf, Object data) {
         String inteId = param.getInteId();
         String kqdm = param.getKqdm();
-        String bizId = param.getBizId();
 
         try {
             if (null == conf) {
                 conf = apiCommonService.getConf(kqdm);
             }
 
-            //娣诲姞LOGO
+            //娣诲姞鏃ュ織
             ApiLog apiLog = new ApiLog();
             apiLog.setId(ContextUtil.getUUID());
             apiLog.setInteId(inteId);
-            String jsonData = getJsonData(inteId, data, conf.getApiUrl());
-            log.info("鎶ユ枃淇℃伅=" + jsonData);
+            String jsonData = getJsonData(inteId, data);
+            log.info("鎺ュ彛鏁版嵁淇℃伅=" + jsonData);
             inteId = getInteId(inteId);
             if (StringUtils.isEmpty(inteId)) {
-                ResponseDto responseDto = new ResponseDto(99, "娌℃湁鑾峰彇鍒版帴鍙�", bizId);
+                ResponseDto responseDto = new ResponseDto(99, "娌℃湁鑾峰彇鍒版帴鍙�");
                 apiLog.setStatus(99);
                 apiLog.setResult("娌℃湁鑾峰彇鍒版帴鍙�");
                 apiLogRep.save(apiLog);
@@ -82,22 +82,44 @@
             apiLog.setUploadTime(new Date());
 
             if (conf == null) {
-                ResponseDto responseDto = new ResponseDto(99, "娌℃湁鑾峰彇鍒颁笂浼犻厤缃�", bizId);
+                ResponseDto responseDto = new ResponseDto(99, "娌℃湁鑾峰彇鍒颁笂浼犻厤缃�");
                 apiLog.setStatus(99);
                 apiLog.setResult("娌℃湁鑾峰彇鍒颁笂浼犻厤缃�");
                 apiLogRep.save(apiLog);
                 return responseDto;
             }
+            //灏佽鎺ㄩ�佹暟鎹�
+            WhjlReqDto reqData = new WhjlReqDto();
+            reqData.setId(ContextUtil.getUUID());
+            reqData.setUid(conf.getKqdm());
+            //鎸囦护ID
+            reqData.setOrderid(param.getOrderid());
+            reqData.setAppcode(conf.getUserName());
+            reqData.setTimestamp(ContextUtil.getCurTimeMillis());
+            List<Object> list  = (List<Object>)data;
+            reqData.setDatalength(list.size());
+            //鏁版嵁杩涜SM4鍔犲瘑
+            reqData.setData(AESUtils.encrypt(jsonData, conf.getPublicKey()));
+            reqData.setOperator("insert");
+            //鎽樿锛屾暟鎹富浣撶殑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()));
 
-            Map<String, Object> map = new HashMap<>();
-            WhjlRespDto responseDto = Whjl2023HttpClientUtil.postPushData(conf.getApiUrl() + inteId, jsonData, conf, null);
+            WhjlRespDto responseDto = Whjl2023HttpClientUtil.postPushData(conf.getApiUrl() + inteId, reqData, conf);
             apiLog.setStatus(responseDto.getCode() == 200 ? 0 : responseDto.getCode());
             apiLog.setResult(responseDto.getResult());
             apiLogRep.save(apiLog);
             ResponseDto resd = new ResponseDto();
             resd.setSuccess(responseDto.getCode() == 200 ? 0 : responseDto.getCode());
             resd.setMsg(responseDto.getResult());
-            //updateGD2022AuthToken(responseDto,conf, token);
+
             return resd;
         } catch (Exception e) {
             log.error(e.getMessage(), e);
@@ -113,7 +135,7 @@
      * @return
      * @throws Exception
      */
-    private String getJsonData(String inteId, Object data, String url) {
+    private String getJsonData(String inteId, Object data) {
         return JSON.toJSONString(data);
     }
 

--
Gitblit v1.9.3