新增 甬城泊车相关接口、controller

This commit is contained in:
Lemon
2023-11-09 13:50:41 +08:00
parent 4e853ed592
commit 7d7a68a9ad
10 changed files with 256 additions and 104 deletions

View File

@@ -682,7 +682,7 @@ public class TransactionRecordsRequestHandler extends AbstractHandler {
if (Objects.isNull(relationInfo)) {
return;
}
String thirdPartyType = relation.getThirdPartyType();
String thirdPartyType = relationInfo.getThirdPartyType();
if (StringUtils.equals(ThirdPlatformTypeEnum.LIAN_LIAN_PLATFORM.getCode(), thirdPartyType)) {
// 联联平台
// 推送订单信息
@@ -701,6 +701,7 @@ public class TransactionRecordsRequestHandler extends AbstractHandler {
}
if (StringUtils.equals(ThirdPlatformTypeEnum.YONG_CHENG_BO_CHE.getCode(), thirdPartyType)) {
// 甬城泊车
log.info("甬城泊车平台 推送充电订单信息 param:{}", orderBasicInfo.getOrderCode());
String result = ycbcService.pushChargeOrderInfo(orderBasicInfo.getOrderCode());
log.info("甬城泊车平台 推送充电订单信息 result:{}", result);
}

View File

@@ -4,18 +4,22 @@ import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONObject;
import com.google.common.collect.Lists;
import com.jsowell.common.constant.CacheConstants;
import com.jsowell.common.constant.Constants;
import com.jsowell.common.core.domain.ykc.RealTimeMonitorData;
import com.jsowell.common.core.domain.ykc.YKCDataProtocol;
import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode;
import com.jsowell.common.core.redis.RedisCache;
import com.jsowell.common.enums.thirdparty.ThirdPlatformTypeEnum;
import com.jsowell.common.enums.ykc.OrderStatusEnum;
import com.jsowell.common.enums.ykc.StartModeEnum;
import com.jsowell.common.enums.ykc.StartTypeEnum;
import com.jsowell.common.enums.ykc.YKCPileFaultReasonEnum;
import com.jsowell.common.util.BytesUtil;
import com.jsowell.common.util.StringUtils;
import com.jsowell.common.util.YKCUtils;
import com.jsowell.netty.factory.YKCOperateFactory;
import com.jsowell.pile.domain.OrderBasicInfo;
import com.jsowell.pile.domain.PileBasicInfo;
import com.jsowell.pile.domain.ThirdPartyStationRelation;
import com.jsowell.pile.service.*;
import com.jsowell.pile.vo.base.ThirdPartyStationRelationVO;
@@ -305,11 +309,9 @@ public class UploadRealTimeMonitorHandler extends AbstractHandler {
}
try {
// 推送第三方平台
OrderBasicInfo orderInfo = orderBasicInfoService.getOrderInfoByTransactionCode(transactionCode);
if (orderInfo == null) {
return null;
}
// 推送第三方平台,先通过桩编号查出站点信息
PileBasicInfo pileBasicInfo = pileBasicInfoService.selectPileBasicInfoBySN(pileSn);
Map<String, String> pileStatusMap = pileConnectorInfoService.getPileStatus(Lists.newArrayList(pileSn));
String pileStatus = pileStatusMap.get(pileSn);
if (StringUtils.equals(connectorStatus, pileStatus)) {
@@ -318,10 +320,10 @@ public class UploadRealTimeMonitorHandler extends AbstractHandler {
// 状态不一样,传给第三方平台
// 查询该站点是否推送第三方平台
ThirdPartyStationRelation relation = new ThirdPartyStationRelation();
if (StringUtils.isBlank(orderInfo.getStationId())) {
if (StringUtils.isBlank(String.valueOf(pileBasicInfo.getStationId()))) {
return null;
}
relation.setStationId(Long.parseLong(orderInfo.getStationId()));
relation.setStationId(pileBasicInfo.getStationId());
ThirdPartyStationRelationVO relationInfo = thirdPartyStationRelationService.selectRelationInfo(relation);
if (Objects.isNull(relationInfo)) {
return null;
@@ -329,6 +331,10 @@ public class UploadRealTimeMonitorHandler extends AbstractHandler {
String pileConnectorCode = pileSn + connectorCode;
if (StringUtils.equals(ThirdPlatformTypeEnum.LIAN_LIAN_PLATFORM.getCode(), relationInfo.getThirdPartyType())) {
// 联联
OrderBasicInfo orderInfo = orderBasicInfoService.getOrderInfoByTransactionCode(transactionCode);
if (orderInfo == null) {
return null;
}
log.info("推送联联平台实时数据 params: orderBasicInfo:{}", JSON.toJSONString(orderInfo));
// 设备状态变化推送 notification_stationStatus
lianLianService.pushConnectorStatus(pileConnectorCode, connectorStatus);
@@ -341,7 +347,7 @@ public class UploadRealTimeMonitorHandler extends AbstractHandler {
}
if (StringUtils.equals(ThirdPlatformTypeEnum.ZHONG_DIAN_LIAN_PLATFORM.getCode(), relationInfo.getThirdPartyType())) {
// 中电联
log.info("推送中电联平台实时数据 params: orderBasicInfo:{}", JSON.toJSONString(orderInfo));
log.info("推送中电联平台实时数据 pileConnectorCode:{}, connectorStatus:{}", pileConnectorCode, connectorStatus);
zdlService.notificationStationStatus(pileConnectorCode, connectorStatus);
}
if (StringUtils.equals(ThirdPlatformTypeEnum.JIANG_SU_PLATFORM.getCode(), relation.getThirdPartyType())) {
@@ -351,12 +357,20 @@ public class UploadRealTimeMonitorHandler extends AbstractHandler {
}
if (StringUtils.equals(ThirdPlatformTypeEnum.YONG_CHENG_BO_CHE.getCode(), relationInfo.getThirdPartyType())) {
// 甬城泊车
log.info("推送甬城泊车平台实时数据 params: orderBasicInfo:{}", JSON.toJSONString(orderInfo));
log.info("推送甬城泊车平台设备状态变化推送 pileConnectorCode:{}, connectorStatus:{}", pileConnectorCode, connectorStatus);
// 设备状态变化推送 notification_stationStatus
String result1 = ycbcService.notificationStationStatus(pileConnectorCode, connectorStatus);
log.info("推送甬城泊车平台设备状态变化推送 result:{}", result1);
// 推送充电状态
String result2 = ycbcService.pushChargeStatus(orderInfo.getOrderCode());
log.info("推送甬城泊车平台实时数据 result1:{}\n result2:{}", result1, result2);
OrderBasicInfo orderInfo = orderBasicInfoService.getOrderInfoByTransactionCode(transactionCode);
if (orderInfo == null) {
return null;
}
if (StringUtils.equals(orderInfo.getStartMode(), StartModeEnum.THIRD_PARTY_PLATFORM.getValue())) {
log.info("推送甬城泊车充电订单状态 param:{}", orderInfo);
String result2 = ycbcService.pushChargeStatus(orderInfo.getOrderCode());
log.info("推送甬城泊车充电订单状态 result:{}", result2);
}
}
} catch (Exception e) {
log.error("推送第三方平台 实时数据 异常", e);

View File

@@ -211,7 +211,7 @@ public class NettyServerHandler extends ChannelInboundHandlerAdapter {
// 删除桩编号和channel的关系
if (StringUtils.isNotBlank(pileSn)) {
PileChannelEntity.removeByPileSn(pileSn);
// PileChannelEntity.removeByPileSn(pileSn);
}
// 删除连接
CHANNEL_MAP.remove(channelId);