mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-04-21 11:35:12 +08:00
新增 华为ControllerV2
This commit is contained in:
@@ -158,7 +158,7 @@ public class CommonService {
|
||||
// result = huaWeiService.notificationOperationSystemInfo(dto);
|
||||
// }
|
||||
if(StringUtils.equals(ThirdPlatformTypeEnum.HAI_NAN.getCode(), dto.getThirdPartyType())) {
|
||||
// 华为
|
||||
// 海南
|
||||
result = haiNanChargeService.pushStationInfoV2(dto);
|
||||
}
|
||||
finalResult.append(result).append("\n");
|
||||
|
||||
@@ -56,6 +56,7 @@ import java.nio.charset.StandardCharsets;
|
||||
import java.util.*;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 华为Service
|
||||
@@ -187,26 +188,14 @@ public class HuaweiServiceV2 {
|
||||
* @param dto
|
||||
* @return
|
||||
*/
|
||||
public String notificationOperationSystemInfo(PushStationInfoDTO dto) {
|
||||
Long stationId = dto.getStationId();
|
||||
String type = dto.getThirdPartyType();
|
||||
|
||||
// 通过第三方配置类型查询相关配置信息
|
||||
ThirdPartySettingInfo settingInfo = new ThirdPartySettingInfo();
|
||||
settingInfo.setType(type);
|
||||
ThirdPartySettingInfo thirdPartySettingInfo = thirdPartySettingInfoService.selectSettingInfo(settingInfo);
|
||||
String operatorId = thirdPartySettingInfo.getOperatorId();
|
||||
String operatorSecret = thirdPartySettingInfo.getOperatorSecret();
|
||||
String signSecret = thirdPartySettingInfo.getSignSecret();
|
||||
String dataSecret = thirdPartySettingInfo.getDataSecret();
|
||||
String dataSecretIv = thirdPartySettingInfo.getDataSecretIv();
|
||||
String urlAddress = thirdPartySettingInfo.getUrlAddress();
|
||||
public String notificationOperationSystemInfo(String stationId) {
|
||||
String requestName = "notification_operation_system_info";
|
||||
|
||||
List<HWStationInfo
|
||||
.EquipmentLogicInfo> equipmentLogicInfos = new ArrayList<>();
|
||||
|
||||
// 通过站点id查询站点信息
|
||||
PileStationVO stationInfo = pileStationInfoService.getStationInfo(String.valueOf(stationId));
|
||||
PileStationVO stationInfo = pileStationInfoService.getStationInfo(stationId);
|
||||
if (stationInfo == null) {
|
||||
return null;
|
||||
}
|
||||
@@ -216,18 +205,18 @@ public class HuaweiServiceV2 {
|
||||
|
||||
.build();
|
||||
// 查询桩列表
|
||||
equipmentLogicInfos = getPileList(String.valueOf(stationId));
|
||||
equipmentLogicInfos = getPileList(stationId);
|
||||
|
||||
hwStationInfo.setEquipmentInfoNum(equipmentLogicInfos.size());
|
||||
hwStationInfo.setEquipmentLogicInfos(equipmentLogicInfos);
|
||||
|
||||
String jsonString = JSONObject.toJSONString(hwStationInfo);
|
||||
|
||||
String url = urlAddress + "notification_operation_system_info";
|
||||
// 获取令牌
|
||||
String token = getHuaWeiToken();
|
||||
// 发送请求
|
||||
String result = HttpRequestUtil.sendPost(token, jsonString, url, dataSecret, dataSecretIv, operatorId, signSecret);
|
||||
// String result = HttpRequestUtil.sendPost(token, jsonString, url, dataSecret, dataSecretIv, operatorId, signSecret);
|
||||
String result = sendMsg2HuaWei(jsonString, token, requestName);
|
||||
return result;
|
||||
}
|
||||
|
||||
@@ -498,10 +487,10 @@ public class HuaweiServiceV2 {
|
||||
String orderCode = IdUtils.getOrderCode();
|
||||
String startChargeSeq = Constants.OPERATORID_JIANG_SU + "_C" + orderCode;
|
||||
QueryStartChargeDTO startChargeDTO = new QueryStartChargeDTO();
|
||||
startChargeDTO.setOperatorId(dto.getOperatorId());
|
||||
startChargeDTO.setOperatorId(ThirdPartyOperatorIdEnum.HUA_WEI.getOperatorId());
|
||||
startChargeDTO.setStartChargeSeq(startChargeSeq);
|
||||
startChargeDTO.setConnectorID(dto.getConnectorID());
|
||||
startChargeDTO.setAccountBalance(dto.getMoneyLimit());
|
||||
startChargeDTO.setConnectorID(pileConnectorCode);
|
||||
startChargeDTO.setAccountBalance(chargeAmount);
|
||||
Map<String, Object> map = orderBasicInfoService.generateOrderForThirdParty(startChargeDTO);
|
||||
|
||||
if (map == null) {
|
||||
@@ -570,7 +559,7 @@ public class HuaweiServiceV2 {
|
||||
* @param startChargeSeq 订单号
|
||||
*/
|
||||
public QueryChargeStatusVO queryChargeStatus(String startChargeSeq) {
|
||||
String requestName = "query_equip_auth";
|
||||
String requestName = "query_equip_charge_status";
|
||||
|
||||
// 拼装参数
|
||||
JSONObject jsonObject = new JSONObject();
|
||||
@@ -821,6 +810,31 @@ public class HuaweiServiceV2 {
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 下发计费策略响应
|
||||
* @param dto
|
||||
* @return
|
||||
*/
|
||||
public Map<String, String> receiveDeliverEquipBusinessPolicyResult(DeliverBusinessPolicyResponseDTO dto) {
|
||||
List<DeliverBusinessPolicyResponseDTO.ChargePolicyInfoRet> chargePolicyInfoRets = dto.getChargePolicyInfoRets();
|
||||
// 将下发失败的进行筛选、收集
|
||||
List<DeliverBusinessPolicyResponseDTO.ChargePolicyInfoRet> failedList = chargePolicyInfoRets.stream()
|
||||
.filter(x -> x.getSuccStat() == Constants.one) // 1-失败
|
||||
.collect(Collectors.toList());
|
||||
for (DeliverBusinessPolicyResponseDTO.ChargePolicyInfoRet chargePolicyInfoRet : failedList) {
|
||||
log.error("华为下发计费策略响应, 枪口:{} 下发计费策略失败, 失败原因:{}", chargePolicyInfoRet.getConnectorID(), chargePolicyInfoRet.getFailReason());
|
||||
// TODO 重新下发
|
||||
|
||||
}
|
||||
JSONObject jsonObject = new JSONObject();
|
||||
jsonObject.put("SuccStat", 0);
|
||||
jsonObject.put("FailReason", 0);
|
||||
|
||||
Map<String, String> resultMap = getResultMap(jsonObject);
|
||||
return resultMap;
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取华为配置信息
|
||||
* @return
|
||||
|
||||
Reference in New Issue
Block a user