From 23c5044c8c74668e3d54167112e9215f6677070e Mon Sep 17 00:00:00 2001 From: "YAS\\29473" <2947326429@qq.com> Date: Wed, 23 Jul 2025 11:20:41 +0800 Subject: [PATCH] =?UTF-8?q?update=E6=8E=A8=E9=80=81=E6=9E=AA=E5=8F=A3?= =?UTF-8?q?=E7=8A=B6=E6=80=81=E7=9A=84bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../enums/thirdparty/ThirdPlatformTypeEnum.java | 2 +- .../UploadRealTimeMonitorHandler.java | 6 ++++++ .../jsowell/thirdparty/common/CommonService.java | 15 ++++++++++++++- .../service/impl/HaiNanPlatformServiceImpl.java | 5 ++++- 4 files changed, 25 insertions(+), 3 deletions(-) diff --git a/jsowell-common/src/main/java/com/jsowell/common/enums/thirdparty/ThirdPlatformTypeEnum.java b/jsowell-common/src/main/java/com/jsowell/common/enums/thirdparty/ThirdPlatformTypeEnum.java index 37527af5f..72416ebac 100644 --- a/jsowell-common/src/main/java/com/jsowell/common/enums/thirdparty/ThirdPlatformTypeEnum.java +++ b/jsowell-common/src/main/java/com/jsowell/common/enums/thirdparty/ThirdPlatformTypeEnum.java @@ -37,7 +37,7 @@ public enum ThirdPlatformTypeEnum { HU_ZHOU_PLATFORM("24", "湖州市监管平台", "MA27U00HZ"), CHANG_ZHOU_PLATFORM("25", "新运常畅充", "0585PCW57"), SI_CHUAN_PLATFORM("26", "四川省平台", "MA01H3BQ2"), - JI_LIN_PLATFORM("27", "吉林省平台", ""), + JI_LIN_PLATFORM("27", "吉林省平台", "723195753"), ; private String typeCode; diff --git a/jsowell-netty/src/main/java/com/jsowell/netty/handler/yunkuaichong/UploadRealTimeMonitorHandler.java b/jsowell-netty/src/main/java/com/jsowell/netty/handler/yunkuaichong/UploadRealTimeMonitorHandler.java index 973b3b085..0448a2ff3 100644 --- a/jsowell-netty/src/main/java/com/jsowell/netty/handler/yunkuaichong/UploadRealTimeMonitorHandler.java +++ b/jsowell-netty/src/main/java/com/jsowell/netty/handler/yunkuaichong/UploadRealTimeMonitorHandler.java @@ -358,6 +358,12 @@ public class UploadRealTimeMonitorHandler extends AbstractYkcHandler { // 异步推送第三方平台实时数据V2 CompletableFuture.runAsync(() -> { try { + log.info("thirdpartyTaskExecutor状态:活跃线程数={}, 队列大小={}, 任务总数={}, 拒绝任务数={}", + thirdpartyTaskExecutor.getActiveCount(), + thirdpartyTaskExecutor.getThreadPoolExecutor().getQueue().size(), + thirdpartyTaskExecutor.getThreadPoolExecutor().getTaskCount(), + thirdpartyTaskExecutor.getThreadPoolExecutor().getRejectedExecutionHandler().toString()); + commonService.pushRealTimeInfoV2(pileSn, connectorCode, connectorStatus, realTimeMonitorData, transactionCode); // log.info("统一推送第三方平台实时数据V2 success, pileSn:{}, connectorCode:{}, connectorStatus:{}, realTimeMonitorData:{}, transactionCode:{}", pileSn, connectorCode, connectorStatus, realTimeMonitorData, transactionCode); } catch (Exception e) { diff --git a/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/common/CommonService.java b/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/common/CommonService.java index 2d6d5ebef..0cc8f9738 100644 --- a/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/common/CommonService.java +++ b/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/common/CommonService.java @@ -49,6 +49,7 @@ import com.jsowell.thirdparty.yongchengboche.service.YCBCService; import com.jsowell.thirdparty.zhongdianlian.service.ZDLService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections4.CollectionUtils; +import org.apache.logging.log4j.util.Strings; import org.bouncycastle.crypto.CryptoException; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -418,6 +419,9 @@ public class CommonService { String stationId = String.valueOf(pileBasicInfo.getStationId()); // 查询该站点是否推送第三方平台 List thirdPartySecretInfoVOS = thirdpartySecretInfoService.queryStationToPlatformList(stationId); + + log.info("推送实时数据到第三方平台 stationId:{}, thirdPartySecretInfoVOS:{}", stationId, thirdPartySecretInfoVOS); + if (CollectionUtils.isEmpty(thirdPartySecretInfoVOS)) { return; } @@ -432,10 +436,19 @@ public class CommonService { notificationService.notificationStationStatus(dto); + log.info("交易流水号transactionCode:{}", transactionCode); // 查询订单信息 OrderBasicInfo orderInfo = orderBasicInfoService.getOrderInfoByTransactionCode(transactionCode); + // 新运有三个平台,当这个transactionCode为null或orderInfo为null时,这里就不会继续推送其它两家平台,直接return了 + // 也就是说,只要这台桩没有订单,为空闲状态,就只推送一家平台循环就终止了 + + //判断transactionCode和orderInfo是否为空,为空就不推送充电状态 + if (Strings.isEmpty(transactionCode)){ +// return; + continue; + } if (Objects.isNull(orderInfo)) { - return; + continue; } dto.setOrderCode(orderInfo.getOrderCode()); notificationService.notificationConnectorChargeStatus(dto); diff --git a/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/service/impl/HaiNanPlatformServiceImpl.java b/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/service/impl/HaiNanPlatformServiceImpl.java index 0fe3fc537..d10199aaf 100644 --- a/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/service/impl/HaiNanPlatformServiceImpl.java +++ b/jsowell-thirdparty/src/main/java/com/jsowell/thirdparty/platform/service/impl/HaiNanPlatformServiceImpl.java @@ -917,8 +917,11 @@ public class HaiNanPlatformServiceImpl implements ThirdPartyPlatformService { byte[] plainText = Cryptos.aesDecrypt(Encodes.decodeBase64(data), thirdPartySecretInfoVO.getOurDataSecret().getBytes(), thirdPartySecretInfoVO.getOurDataSecretIv().getBytes()); String dataStr = new String(plainText, StandardCharsets.UTF_8); + logger.info("解密后的数据 dataStr:{}", dataStr); + JSONObject jsonObject = JSONObject.parseObject(dataStr); + // 转成对应的对象 - QueryChargingStatusVO vo = JSONObject.parseObject(dataStr, QueryChargingStatusVO.class); + QueryChargingStatusVO vo = JSONObject.parseObject(jsonObject.toJSONString(), QueryChargingStatusVO.class); String url = urlAddress + BusinessInformationExchangeEnum.NOTIFICATION_EQUIP_CHARGE_STATUS.getValue(); // 调用联联平台接口