mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-04-21 19:45:09 +08:00
电单车支付成功回调
This commit is contained in:
@@ -50,6 +50,9 @@ public class PileRemoteService {
|
||||
@Autowired
|
||||
private RedisCache redisCache;
|
||||
|
||||
@Autowired
|
||||
private EBikeSendCommandService eBikeSendCommandService;
|
||||
|
||||
@Value("${remoteUpdate.server}")
|
||||
private String serverAddress;
|
||||
|
||||
@@ -108,6 +111,25 @@ public class PileRemoteService {
|
||||
ykcPushCommandService.pushStartChargingCommand(startChargingCommand);
|
||||
}
|
||||
|
||||
/**
|
||||
* 电单车远程启动充电
|
||||
*/
|
||||
public void remoteStartChargingEBike(String pileSn, String connectorCode, String transactionCode, BigDecimal chargeAmount) {
|
||||
if (StringUtils.isEmpty(pileSn) || StringUtils.isEmpty(connectorCode)) {
|
||||
log.warn("远程启动充电, 充电桩编号和枪口号不能为空");
|
||||
return;
|
||||
}
|
||||
log.info("【=====平台下发指令=====】: 电单车远程启动充电, 桩号:{}, 枪口号:{}", pileSn, connectorCode);
|
||||
StartChargingCommand startChargingCommand = StartChargingCommand.builder()
|
||||
.pileSn(pileSn)
|
||||
.connectorCode(connectorCode)
|
||||
.transactionCode(transactionCode)
|
||||
.chargeAmount(chargeAmount)
|
||||
.build();
|
||||
// ykcPushCommandService.pushStartChargingCommand(startChargingCommand);
|
||||
eBikeSendCommandService.sendStartChargingCommand(startChargingCommand);
|
||||
}
|
||||
|
||||
/**
|
||||
* 远程停止充电
|
||||
*/
|
||||
|
||||
@@ -3,8 +3,6 @@ package com.jsowell.pile.service.impl;
|
||||
import com.jsowell.common.enums.ykc.PileChannelEntity;
|
||||
import com.jsowell.common.util.BytesUtil;
|
||||
import com.jsowell.common.util.RandomUtil;
|
||||
import com.jsowell.common.util.StringUtils;
|
||||
import com.jsowell.common.util.id.IdUtils;
|
||||
import com.jsowell.pile.domain.ebike.AbsEBikeMessage;
|
||||
import com.jsowell.pile.domain.ebike.serversend.EBikeMessageCmd82;
|
||||
import com.jsowell.pile.domain.ykcCommond.StartChargingCommand;
|
||||
@@ -35,9 +33,9 @@ public class EBikeSendCommandServiceImpl implements EBikeSendCommandService {
|
||||
String pileSn = command.getPileSn();
|
||||
String connectorCode = command.getConnectorCode();
|
||||
String transactionCode = command.getTransactionCode();
|
||||
if (StringUtils.isBlank(transactionCode)) {
|
||||
transactionCode = IdUtils.generateTransactionCode(pileSn, connectorCode);
|
||||
}
|
||||
// if (StringUtils.isBlank(transactionCode)) {
|
||||
// transactionCode = IdUtils.generateTransactionCode(pileSn, connectorCode);
|
||||
// }
|
||||
|
||||
// 组装参数
|
||||
EBikeMessageCmd82 message = new EBikeMessageCmd82();
|
||||
|
||||
@@ -121,9 +121,6 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService {
|
||||
@Autowired
|
||||
private AdapayCallbackRecordService adapayCallbackRecordService;
|
||||
|
||||
@Autowired
|
||||
private WechatPayService wechatPayService;
|
||||
|
||||
@Autowired
|
||||
private OrderAbnormalRecordService orderAbnormalRecordService;
|
||||
|
||||
@@ -181,18 +178,14 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService {
|
||||
@Autowired
|
||||
private ClearingBillInfoService clearingBillInfoService;
|
||||
|
||||
@Autowired
|
||||
private PileMsgRecordService pileMsgRecordService;
|
||||
|
||||
@Autowired
|
||||
private ClearingBillDetailService clearingBillDetailService;
|
||||
|
||||
@Autowired
|
||||
private ThirdPartyStationRelationService thirdPartyStationRelationService;
|
||||
|
||||
@Autowired
|
||||
private IThirdpartySnRelationService snRelationService;
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
public int deleteByPrimaryKey(Integer id) {
|
||||
return orderBasicInfoMapper.deleteByPrimaryKey(id);
|
||||
@@ -3128,17 +3121,6 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService {
|
||||
}
|
||||
}
|
||||
}
|
||||
// 判断该桩所在的站点是否推送了第三方站点(需要我方平台发送启动指令的,如:华为平台)
|
||||
// List<ThirdPartyStationRelationVO> relationInfoList = thirdPartyStationRelationService.getRelationInfoList(orderInfo.getStationId());
|
||||
// if (CollectionUtils.isNotEmpty(relationInfoList)) {
|
||||
// for (ThirdPartyStationRelationVO vo : relationInfoList) {
|
||||
// String startMode = vo.getStartMode();
|
||||
// if (StringUtils.equals(Constants.ONE, startMode)) {
|
||||
// // 无需发送启机指令,在汇付回调中发送
|
||||
// sendStartCharging = false;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
|
||||
// 修改订单
|
||||
orderInfo.setPayMode(dto.getPayMode());
|
||||
@@ -3152,16 +3134,29 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService {
|
||||
|
||||
if (sendStartCharging) {
|
||||
String pileSn = orderInfo.getPileSn();
|
||||
String pileConnectorCode = orderInfo.getPileConnectorCode();
|
||||
// 获取桩信息
|
||||
PileConnectorDetailVO pileConnectorDetailVO = pileBasicInfoService.queryPileConnectorDetail(pileConnectorCode);
|
||||
if (pileConnectorDetailVO == null) {
|
||||
logger.error("订单:{}支付成功, 启动充电失败, 桩信息为空, pileSn:{}", dto.getOrderCode(), pileSn);
|
||||
return;
|
||||
}
|
||||
// 发送启动充电指令前,再次下发计费模板
|
||||
BillingTemplateVO billingTemplateVO = pileBillingTemplateService.selectBillingTemplateDetailByPileSn(pileSn);
|
||||
if (billingTemplateVO != null) {
|
||||
if (billingTemplateVO != null && !StringUtils.equals(pileConnectorDetailVO.getChargePortType(), Constants.THREE)) {
|
||||
logger.info("发送启动充电指令前,再次下发计费模板, orderCode:{}, 计费模板:{}", orderInfo.getOrderCode(), JSON.toJSONString(billingTemplateVO));
|
||||
pileRemoteService.publishPileBillingTemplate(pileSn, billingTemplateVO);
|
||||
}
|
||||
// 获取启动金额
|
||||
BigDecimal chargeAmount = computeChargeAmount(orderInfo.getMerchantId(), orderInfo.getStationId(), orderInfo.getMemberId(), orderInfo.getPayAmount());
|
||||
// 发送启动指令
|
||||
pileRemoteService.remoteStartCharging(pileSn, orderInfo.getConnectorCode(), orderInfo.getTransactionCode(), chargeAmount);
|
||||
if (StringUtils.equals(pileConnectorDetailVO.getChargePortType(), Constants.THREE)) {
|
||||
// 电单车桩
|
||||
pileRemoteService.remoteStartChargingEBike(pileSn, orderInfo.getConnectorCode(), orderInfo.getTransactionCode(), chargeAmount);
|
||||
} else {
|
||||
// 电动汽车桩
|
||||
pileRemoteService.remoteStartCharging(pileSn, orderInfo.getConnectorCode(), orderInfo.getTransactionCode(), chargeAmount);
|
||||
}
|
||||
logger.info("订单:{}支付成功, 发送启动指令", dto.getOrderCode());
|
||||
}
|
||||
|
||||
|
||||
@@ -326,17 +326,6 @@ public class PileBasicInfoServiceImpl implements PileBasicInfoService {
|
||||
return pileInfoVOS;
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询充电桩信息
|
||||
* 后管使用,带权限过滤
|
||||
* @param dto 前台参数
|
||||
* @return 充电桩信息集合
|
||||
*/
|
||||
public List<PileDetailVO> queryPileInfosV2(QueryPileDTO dto) {
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询充电桩列表
|
||||
* 后管使用,带权限过滤
|
||||
|
||||
@@ -63,7 +63,7 @@ public class PileInfoVO {
|
||||
/**
|
||||
* 充电接口类型 1-快充,2-慢充,3-电单车
|
||||
*/
|
||||
private String chargePortType;
|
||||
// private String chargePortType;
|
||||
|
||||
/**
|
||||
* 枪口编号
|
||||
|
||||
Reference in New Issue
Block a user