diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/dto/PayOrderDTO.java b/jsowell-pile/src/main/java/com/jsowell/pile/dto/PayOrderDTO.java index d82957fa5..505c3a972 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/dto/PayOrderDTO.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/dto/PayOrderDTO.java @@ -38,6 +38,12 @@ public class PayOrderDTO { */ private String code; + /** + * 启动方式 + * 0-后管启动;1-用户app启动;2-卡启动;3-离线卡启动; 4-联联平台启动; 5-车辆vin码启动 + */ + private String startMode; + /** * redis锁的值 */ diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/dto/PayOrderSuccessCallbackDTO.java b/jsowell-pile/src/main/java/com/jsowell/pile/dto/PayOrderSuccessCallbackDTO.java index 8f6c2167d..8b90cfe62 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/dto/PayOrderSuccessCallbackDTO.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/dto/PayOrderSuccessCallbackDTO.java @@ -29,4 +29,10 @@ public class PayOrderSuccessCallbackDTO { * @see OrderPayModeEnum */ private String payMode; + + /** + * 启动方式 + * 0-后管启动;1-用户app启动;2-卡启动;3-离线卡启动; 4-联联平台启动; 5-车辆vin码启动 + */ + private String startMode; } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java index 6d230e142..5b7ec8fd9 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java @@ -1651,6 +1651,7 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService { payOrderDTO.setPayAmount(accountBalance); payOrderDTO.setPayMode(dto.getPayMode()); payOrderDTO.setMemberId(dto.getMemberId()); + payOrderDTO.setStartMode(dto.getStartMode()); // payOrderDTO.setCode(); // payOrderDTO.setLockValue(); payOrderDTO.setOrderBasicInfo(basicInfo); @@ -2253,20 +2254,25 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService { orderInfo.setPayTime(new Date()); this.updateOrderBasicInfo(orderInfo); - if (StringUtils.equals(orderInfo.getStartType(), StartTypeEnum.NOW.getValue())) { // 立即启动充电 - String pileSn = orderInfo.getPileSn(); - // 发送启动充电指令前,再次下发计费模板 - BillingTemplateVO billingTemplateVO = pileBillingTemplateService.selectBillingTemplateDetailByPileSn(pileSn); - if (billingTemplateVO != null) { - pileRemoteService.publishPileBillingTemplate(pileSn, billingTemplateVO); + // 如果是鉴权卡启动或者vin启动,不发启动充电指令 + if (!(StringUtils.equals(dto.getStartMode(), StartModeEnum.AUTH_CARD.getValue()) + || StringUtils.equals(dto.getStartMode(), StartModeEnum.VIN_CODE.getValue()))) { + + if (StringUtils.equals(orderInfo.getStartType(), StartTypeEnum.NOW.getValue())) { // 立即启动充电 + String pileSn = orderInfo.getPileSn(); + // 发送启动充电指令前,再次下发计费模板 + BillingTemplateVO billingTemplateVO = pileBillingTemplateService.selectBillingTemplateDetailByPileSn(pileSn); + if (billingTemplateVO != null) { + pileRemoteService.publishPileBillingTemplate(pileSn, billingTemplateVO); + } + // 发送启动指令 + pileRemoteService.remoteStartCharging(pileSn, orderInfo.getConnectorCode(), orderInfo.getTransactionCode(), orderInfo.getPayAmount()); + } else { // 预约充电 + // 修改枪口状态为 占用预约 + + // 下发修改充电桩设置指令 + } - // 发送启动指令 - pileRemoteService.remoteStartCharging(pileSn, orderInfo.getConnectorCode(), orderInfo.getTransactionCode(), orderInfo.getPayAmount()); - } else { // 预约充电 - // 修改枪口状态为 占用预约 - - // 下发修改充电桩设置指令 - } } @@ -2448,6 +2454,7 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService { .orderCode(orderCode) .payAmount(chargeAmount) .payMode(dto.getPayMode()) + .startMode(dto.getStartMode()) .build(); payOrderSuccessCallback(callbackDTO);