This commit is contained in:
Lemon
2023-05-15 14:53:54 +08:00
parent dd6396e9c9
commit 77a6abf224
3 changed files with 103 additions and 50 deletions

View File

@@ -17,10 +17,7 @@ import com.jsowell.common.enums.ykc.PileConnectorDataBaseStatusEnum;
import com.jsowell.common.exception.BusinessException;
import com.jsowell.common.util.*;
import com.jsowell.common.util.http.HttpUtils;
import com.jsowell.common.util.lianlian.Cryptos;
import com.jsowell.common.util.lianlian.Encodes;
import com.jsowell.common.util.lianlian.GBSignUtils;
import com.jsowell.common.util.lianlian.LianLianUtils;
import com.jsowell.common.util.lianlian.*;
import com.jsowell.netty.command.ykc.StartChargingCommand;
import com.jsowell.netty.command.ykc.StopChargingCommand;
import com.jsowell.netty.service.yunkuaichong.YKCPushCommandService;
@@ -157,63 +154,59 @@ public class LianLianServiceImpl implements LianLianService {
// 调用联联平台接口
String url = "http://testdataexchange.evchargeonline.com:82/shevcs/v1/" + "notification_stationInfo";
// String jsonString = JSON.toJSONString(info);
// Gson gson = new Gson();
// String gsonString = gson.toJson(info);
String jsonStr = JSONUtil.toJsonStr(info);
// System.out.println("jsonString : " + jsonString);
// System.out.println("gsonString : " + gsonString);
System.out.println("jsonStr : " + jsonStr);
JSONObject data = new JSONObject();
data.put("StationInfo", jsonStr);
String jsonString = JSONObject.toJSONString(data);
System.out.println("jsonString : " + jsonString);
//加密
byte[] encryptText = Cryptos.aesEncrypt(jsonString.getBytes(),
dto.getDataSecret().getBytes(), dto.getDataSecretIV().getBytes());
String encryptData = Encodes.encodeBase64(encryptText);
System.out.println("加密数据:" + encryptData);
String result = HttpRequestUtil.sendPost(dto.getToken(), jsonString, url, dto.getDataSecret()
, dto.getDataSecretIV(), dto.getOperatorID(), dto.getSigSecret());
Map<String, String> params = Maps.newLinkedHashMap();
params.put("OperatorID", dto.getOperatorID());
params.put("Data", encryptData);
params.put("TimeStamp", "20230510145200");
params.put("Seq", "001");
String sign = GBSignUtils.sign(params, dto.getSigSecret());
params.put("Sig", sign);
System.out.println(result);
String postData = JSON.toJSONString(params);
System.out.println("最终提交数据:" + postData);
String hutoolRequest = HttpRequest.post(url).header("Authorization", "Bearer " + dto.getToken()).body(postData).execute().body();
System.out.println("接收到返回数据:" + hutoolRequest);
Map<String, String> map = (Map<String, String>) JSON.parse(hutoolRequest);
String rData = map.get("Data");
byte[] plainText = Cryptos.aesDecrypt(Encodes.decodeBase64(rData),
dto.getDataSecret().getBytes(), dto.getDataSecretIV().getBytes());
String plainData = "";
try {
plainData = new String(plainText, "UTF-8");
} catch (Exception e) {
e.printStackTrace();
}
System.out.println("解密数据:" + plainData);
// //加密
// byte[] encryptText = Cryptos.aesEncrypt(jsonString.getBytes(),
// dto.getDataSecret().getBytes(), dto.getDataSecretIV().getBytes());
// String encryptData = Encodes.encodeBase64(encryptText);
// System.out.println("加密数据:" + encryptData);
//
// Map<String, String> params = Maps.newLinkedHashMap();
// params.put("OperatorID", dto.getOperatorID());
// params.put("Data", encryptData);
// params.put("TimeStamp", DateUtils.parseDateToStr(DateUtils.YYYYMMDDHHMMSS, new Date()));
// params.put("Seq", "001");
// String sign = GBSignUtils.sign(params, dto.getSigSecret());
// params.put("Sig", sign);
//
// String postData = JSON.toJSONString(params);
// System.out.println("最终提交数据:" + postData);
//
// String hutoolRequest = HttpRequest.post(url).header("Authorization", "Bearer " + dto.getToken()).body(postData).execute().body();
//
// System.out.println("接收到返回数据:" + hutoolRequest);
//
// Map<String, String> map = (Map<String, String>) JSON.parse(hutoolRequest);
//
// String rData = map.get("Data");
//
// byte[] plainText = Cryptos.aesDecrypt(Encodes.decodeBase64(rData),
// dto.getDataSecret().getBytes(), dto.getDataSecretIV().getBytes());
// String plainData = "";
// try {
// plainData = new String(plainText, "UTF-8");
// } catch (Exception e) {
// e.printStackTrace();
// }
//
// System.out.println("解密数据:" + plainData);
}
public static void main(String[] args) throws Exception {
public static void main(String[] args){
BigDecimal bigDecimal = new BigDecimal("7").setScale(1, BigDecimal.ROUND_HALF_UP);
System.out.println(bigDecimal);
}
/**
@@ -696,7 +689,7 @@ public class LianLianServiceImpl implements LianLianService {
String pileSn = pileBasicInfo.getSn();
equipmentInfo.setEquipmentID(pileSn);
equipmentInfo.setManufacturerID(merchantInfo.getOrganizationCode());
equipmentInfo.setManufacturerID("987654321");
equipmentInfo.setConstructionTime(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, pileBasicInfo.getCreateTime()));
PileModelInfoVO modelInfo = pileModelInfoService.getPileModelInfoByPileSn(pileSn);