From b05a7e6ac2772439fb5dd95f4e56572423ae8b10 Mon Sep 17 00:00:00 2001 From: Guoqs <123@jsowell.com> Date: Thu, 25 Jul 2024 16:18:23 +0800 Subject: [PATCH] =?UTF-8?q?update=20=E4=B8=AA=E4=BA=BA=E6=A1=A9=E9=A2=84?= =?UTF-8?q?=E7=BA=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../uniapp/customer/PersonPileController.java | 40 +++++- .../java/com/jsowell/service/PileService.java | 63 +-------- .../jsowell/pile/dto/PileReservationDTO.java | 15 +++ .../PersonalChargingRecordService.java | 3 + .../service/PileReservationInfoService.java | 13 ++ .../PersonalChargingRecordServiceImpl.java | 50 ++++++- .../impl/PileReservationInfoServiceImpl.java | 123 ++++++++++++++++++ .../programlogic/AbstractProgramLogic.java | 5 +- .../DelayMerchantProgramLogic.java | 20 ++- 9 files changed, 255 insertions(+), 77 deletions(-) diff --git a/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/PersonPileController.java b/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/PersonPileController.java index e005c99d1..f3a006321 100644 --- a/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/PersonPileController.java +++ b/jsowell-admin/src/main/java/com/jsowell/api/uniapp/customer/PersonPileController.java @@ -13,6 +13,7 @@ import com.jsowell.common.util.StringUtils; import com.jsowell.pile.dto.*; import com.jsowell.pile.service.PileBasicInfoService; import com.jsowell.pile.service.PileMerchantInfoService; +import com.jsowell.pile.service.PileReservationInfoService; import com.jsowell.pile.vo.uniapp.customer.PersonPileConnectorSumInfoVO; import com.jsowell.pile.vo.uniapp.customer.PersonPileRealTimeVO; import com.jsowell.pile.vo.uniapp.customer.PersonalPileInfoVO; @@ -43,6 +44,9 @@ public class PersonPileController extends BaseController { @Autowired private PileBasicInfoService pileBasicInfoService; + @Autowired + private PileReservationInfoService pileReservationInfoService; + /** * 用户绑定个人桩 @@ -137,6 +141,7 @@ public class PersonPileController extends BaseController { /** * 个人桩停止充电 + * http://localhost:8080/uniapp/personalPile/personPileStopCharging * 管理员可以停自己启动的和别人启动的 * 其他人员只能停止自己启动的 */ @@ -153,7 +158,7 @@ public class PersonPileController extends BaseController { } String memberId = getMemberIdByAuthorization(request); dto.setMemberId(memberId); - pileService.personPileStopCharging(dto); + pileReservationInfoService.personPileStopCharging(dto); response = new RestApiResponse<>(); } catch (BusinessException e) { logger.error("个人桩停止充电error", e); @@ -192,7 +197,6 @@ public class PersonPileController extends BaseController { /** * 获取枪口实时数据 - *

* http://localhost:8080/uniapp/personalPile/getConnectorRealTimeInfo * * @param request @@ -316,7 +320,7 @@ public class PersonPileController extends BaseController { try { String memberId = getMemberIdByAuthorization(request); dto.setMemberId(memberId); - int reservedId = pileService.createReserved(dto); + int reservedId = pileReservationInfoService.createReservation(dto); response = new RestApiResponse<>(ImmutableMap.of("reservedId", reservedId)); } catch (BusinessException e) { logger.error("添加预约充电error, params:{}", dto, e); @@ -340,7 +344,7 @@ public class PersonPileController extends BaseController { try { String memberId = getMemberIdByAuthorization(request); dto.setMemberId(memberId); - PageResponse pageResponse = pileService.queryReservedList(dto); + PageResponse pageResponse = pileReservationInfoService.queryReservationList(dto); response = new RestApiResponse<>(pageResponse); } catch (BusinessException e) { logger.error("查询预约列表error, params:{}", dto, e); @@ -353,6 +357,30 @@ public class PersonPileController extends BaseController { return response; } + /** + * 修改预约充电 + * http://localhost:8080/uniapp/personalPile/updateReservation + */ + @PostMapping("/updateReservation") + public RestApiResponse updateReservation(HttpServletRequest request, @RequestBody PileReservationDTO dto) { + // logger.info("修改预约充电状态params:{}", dto); + RestApiResponse response = null; + try { + String memberId = getMemberIdByAuthorization(request); + dto.setMemberId(memberId); + pileReservationInfoService.updateReservation(dto); + response = new RestApiResponse<>(); + } catch (BusinessException e) { + logger.error("修改预约充电状态error, params:{}", dto, e); + response = new RestApiResponse<>(e.getCode(), e.getMessage()); + } catch (Exception e) { + logger.error("修改预约充电状态error, params:{}", dto, e); + response = new RestApiResponse<>(ReturnCodeEnum.CODE_UPDATE_RESERVED_STATUS_ERROR); + } + logger.info("修改预约充电状态params:{}, result:{}", dto, response); + return response; + } + /** * 修改预约充电状态 * http://localhost:8080/uniapp/personalPile/updateReservedStatus @@ -364,7 +392,7 @@ public class PersonPileController extends BaseController { try { String memberId = getMemberIdByAuthorization(request); dto.setMemberId(memberId); - pileService.updateReservedStatus(dto); + pileReservationInfoService.updateReservationStatus(dto); response = new RestApiResponse<>(); } catch (BusinessException e) { logger.error("修改预约充电状态error, params:{}", dto, e); @@ -388,7 +416,7 @@ public class PersonPileController extends BaseController { try { String memberId = getMemberIdByAuthorization(request); dto.setMemberId(memberId); - pileService.deleteReservation(dto); + pileReservationInfoService.deleteReservation(dto); response = new RestApiResponse<>(); } catch (BusinessException e) { logger.error("修改预约充电状态error, params:{}", dto, e); diff --git a/jsowell-admin/src/main/java/com/jsowell/service/PileService.java b/jsowell-admin/src/main/java/com/jsowell/service/PileService.java index 5ed7cfd76..bbbd4f224 100644 --- a/jsowell-admin/src/main/java/com/jsowell/service/PileService.java +++ b/jsowell-admin/src/main/java/com/jsowell/service/PileService.java @@ -390,7 +390,7 @@ public class PileService { public PersonPileRealTimeVO getConnectorRealTimeInfo(QueryPersonPileDTO dto) { // 根据memberId查出该用户 正在充电、个人桩启动(白名单支付方式)的订单号 OrderBasicInfo orderBasicInfo = OrderBasicInfo.builder() - .memberId(dto.getMemberId()) + // .memberId(dto.getMemberId()) .orderStatus(OrderStatusEnum.IN_THE_CHARGING.getValue()) .pileConnectorCode(dto.getPileConnectorCode()) .payMode(OrderPayModeEnum.PAYMENT_OF_WHITELIST.getValue()) // 3- 白名单支付 @@ -569,60 +569,6 @@ public class PileService { } } - public int createReserved(CreateReservedDTO dto) { - PileReservationInfo reservedInfo = new PileReservationInfo(); - reservedInfo.setMemberId(dto.getMemberId()); - reservedInfo.setPileSn(dto.getPileSn()); - reservedInfo.setPileConnectorCode(dto.getPileConnectorCode()); - reservedInfo.setStatus(Constants.ZERO); // 默认未生效 - // reservedInfo.setStartTime(DateUtils.parseDate(dto.getStartTime())); - reservedInfo.setStartTime(Time.valueOf(dto.getStartTime())); - // reservedInfo.setEndTime(DateUtils.parseDate(dto.getEndTime())); - if (StringUtils.isNotBlank(dto.getEndTime())) { - reservedInfo.setEndTime(Time.valueOf(dto.getEndTime())); - } - if (StringUtils.isNotBlank(dto.getFreq())) { - reservedInfo.setReservationType("recurring"); - reservedInfo.setFreq(dto.getFreq()); - } else { - reservedInfo.setReservationType("single"); - reservedInfo.setFreq(null); - } - reservedInfo.setCreateBy(dto.getMemberId()); - pileReservationInfoService.insertSelective(reservedInfo); - return reservedInfo.getId(); - } - - public PageResponse queryReservedList(PileReservationDTO dto) { - int pageNo = dto.getPageNo() == null ? Constants.one : dto.getPageNo(); - int pageSize = dto.getPageSize() == null ? 10 : dto.getPageSize(); - PageHelper.startPage(pageNo, pageSize); - List list = pileReservationInfoService.getReservationsByMemberIdAndPileSn(dto.getMemberId(), dto.getPileSn()); - PageInfo pageInfo = new PageInfo<>(list); - - PageResponse pageResponse = new PageResponse(); - pageResponse.setPageNum(pageInfo.getPageNum()); - pageResponse.setPageSize(pageInfo.getPageSize()); - pageResponse.setPages(pageInfo.getPages()); - pageResponse.setTotal(pageInfo.getTotal()); - - List resultList = Lists.newArrayList(); - for (PileReservationInfo reservedInfo : pageInfo.getList()) { - resultList.add( - PileReservedVO.builder() - .reservedId(reservedInfo.getId() + "") - .pileSn(reservedInfo.getPileSn()) - .startTime(reservedInfo.getStartTime().toString()) - .endTime(reservedInfo.getEndTime().toString()) - .freq(reservedInfo.getFreq()) - .status(reservedInfo.getStatus()) - .build() - ); - } - pageResponse.setList(resultList); - return pageResponse; - } - public void deleteReservation(PileReservationDTO dto) { pileReservationInfoService.deleteReservation(dto); } @@ -657,11 +603,4 @@ public class PileService { return String.valueOf(i); } - /** - * 个人桩停止充电 - * @param dto - */ - public void personPileStopCharging(PersonPileStopChargingDTO dto) { - - } } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/dto/PileReservationDTO.java b/jsowell-pile/src/main/java/com/jsowell/pile/dto/PileReservationDTO.java index 056097d81..2d704d182 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/dto/PileReservationDTO.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/dto/PileReservationDTO.java @@ -28,6 +28,16 @@ public class PileReservationDTO { */ private String pileSn; + /** + * 开始时间 hh:mm:ss + */ + private String startTime; + + /** + * 结束时间 hh:mm:ss + */ + private String endTime; + private Integer pageNo; private Integer pageSize; @@ -38,6 +48,11 @@ public class PileReservationDTO { .append("memberId", memberId) .append("reservedId", reservedId) .append("status", status) + .append("pileSn", pileSn) + .append("startTime", startTime) + .append("endTime", endTime) + .append("pageNo", pageNo) + .append("pageSize", pageSize) .toString(); } } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/PersonalChargingRecordService.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/PersonalChargingRecordService.java index 4d9653b0c..2c1e5a179 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/PersonalChargingRecordService.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/PersonalChargingRecordService.java @@ -3,6 +3,7 @@ package com.jsowell.pile.service; import java.util.List; import com.jsowell.common.core.domain.ykc.TransactionRecordsData; +import com.jsowell.pile.domain.OrderBasicInfo; import com.jsowell.pile.domain.PersonalChargingRecord; public interface PersonalChargingRecordService{ @@ -35,4 +36,6 @@ public interface PersonalChargingRecordService{ * @param data */ void processPersonalChargingRecord(TransactionRecordsData data); + + void processPersonalChargingRecord(OrderBasicInfo orderBasicInfo); } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/PileReservationInfoService.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/PileReservationInfoService.java index 516535ae4..2717ea9b4 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/PileReservationInfoService.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/PileReservationInfoService.java @@ -2,6 +2,9 @@ package com.jsowell.pile.service; import java.util.List; +import com.jsowell.common.core.page.PageResponse; +import com.jsowell.pile.dto.CreateReservedDTO; +import com.jsowell.pile.dto.PersonPileStopChargingDTO; import com.jsowell.pile.dto.PileReservationDTO; import com.jsowell.pile.domain.PileReservationInfo; @@ -55,5 +58,15 @@ public interface PileReservationInfoService { void cancelOneTimeReservation(String pileConnectorCode); void deleteReservation(PileReservationDTO dto); + + int createReservation(CreateReservedDTO dto); + + PageResponse queryReservationList(PileReservationDTO dto); + + void updateReservationStatus(PileReservationDTO dto); + + void updateReservation(PileReservationDTO dto); + + void personPileStopCharging(PersonPileStopChargingDTO dto); } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PersonalChargingRecordServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PersonalChargingRecordServiceImpl.java index 757b753b9..cd8a45f8f 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PersonalChargingRecordServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PersonalChargingRecordServiceImpl.java @@ -1,8 +1,9 @@ package com.jsowell.pile.service.impl; +import com.jsowell.common.constant.Constants; import com.jsowell.common.core.domain.ykc.TransactionRecordsData; -import com.jsowell.common.util.Cp56Time2a.Cp56Time2aUtil; import com.jsowell.common.util.DateUtils; +import com.jsowell.pile.domain.OrderBasicInfo; import com.jsowell.pile.domain.PileBasicInfo; import com.jsowell.pile.service.PileBasicInfoService; import org.springframework.beans.factory.annotation.Autowired; @@ -82,8 +83,7 @@ public class PersonalChargingRecordServiceImpl implements PersonalChargingRecord } /** - * 处理个人桩充电记录 - * + * 收到交易记录时, 处理个人桩充电记录 * @param data */ @Override @@ -133,4 +133,48 @@ public class PersonalChargingRecordServiceImpl implements PersonalChargingRecord personalChargingRecordMapper.insertOrUpdateSelective(chargingRecord); } + /** + * 一键启动时, 处理个人桩充电记录 + * @param orderBasicInfo + */ + @Override + public void processPersonalChargingRecord(OrderBasicInfo orderBasicInfo) { + // 根据交易流水号查询,如果数据库没有就入库 + PersonalChargingRecord chargingRecord = new PersonalChargingRecord(); + + // 处理数据 + chargingRecord.setTransactionCode(orderBasicInfo.getTransactionCode()); + chargingRecord.setStatus(Constants.ONE); + chargingRecord.setMemberId(orderBasicInfo.getMemberId()); + chargingRecord.setStationId(orderBasicInfo.getStationId()); + chargingRecord.setMerchantId(orderBasicInfo.getMerchantId()); + chargingRecord.setPileSn(orderBasicInfo.getPileSn()); + chargingRecord.setConnectorCode(orderBasicInfo.getConnectorCode()); + chargingRecord.setPileConnectorCode(orderBasicInfo.getPileConnectorCode()); + chargingRecord.setLogicCard(orderBasicInfo.getLogicCard()); + chargingRecord.setVinCode(orderBasicInfo.getVinCode()); + chargingRecord.setStartMode(orderBasicInfo.getStartMode()); + chargingRecord.setPlateNumber(orderBasicInfo.getPlateNumber()); + chargingRecord.setChargeStartTime(orderBasicInfo.getChargeStartTime()); + chargingRecord.setChargeEndTime(orderBasicInfo.getChargeEndTime()); + chargingRecord.setStartType(orderBasicInfo.getStartType()); + chargingRecord.setReservationStartTime(orderBasicInfo.getReservedStartTime()); + chargingRecord.setReservationEndTime(orderBasicInfo.getReservedEndTime()); + chargingRecord.setStartSoc(orderBasicInfo.getStartSoc()); + chargingRecord.setEndSoc(null); + // BigDecimal sharpUsedElectricity = new BigDecimal(data.getSharpUsedElectricity()); + // chargingRecord.setSharpUsedElectricity(sharpUsedElectricity); + // BigDecimal peakUsedElectricity = new BigDecimal(data.getPeakUsedElectricity()); + // chargingRecord.setPeakUsedElectricity(peakUsedElectricity); + // BigDecimal flatUsedElectricity = new BigDecimal(data.getFlatUsedElectricity()); + // chargingRecord.setFlatUsedElectricity(flatUsedElectricity); + // BigDecimal valleyUsedElectricity = new BigDecimal(data.getValleyUsedElectricity()); + // chargingRecord.setValleyUsedElectricity(valleyUsedElectricity); + // BigDecimal totalUsedElectricity = sharpUsedElectricity.add(peakUsedElectricity).add(flatUsedElectricity).add(valleyUsedElectricity); + // chargingRecord.setTotalUsedElectricity(totalUsedElectricity); + // chargingRecord.setReason(data.getStopReasonMsg()); + // 创建或更新 + personalChargingRecordMapper.insertOrUpdateSelective(chargingRecord); + } + } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PileReservationInfoServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PileReservationInfoServiceImpl.java index 0e3117c54..020699ef1 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PileReservationInfoServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PileReservationInfoServiceImpl.java @@ -1,18 +1,24 @@ package com.jsowell.pile.service.impl; +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; import com.google.common.collect.Lists; import com.jsowell.common.constant.Constants; +import com.jsowell.common.core.page.PageResponse; import com.jsowell.common.enums.DelFlagEnum; import com.jsowell.common.enums.ykc.ReturnCodeEnum; import com.jsowell.common.exception.BusinessException; import com.jsowell.common.util.DateUtils; import com.jsowell.common.util.StringUtils; import com.jsowell.pile.domain.ykcCommond.ReservationChargingCommand; +import com.jsowell.pile.dto.CreateReservedDTO; +import com.jsowell.pile.dto.PersonPileStopChargingDTO; import com.jsowell.pile.dto.PileReservationDTO; import com.jsowell.pile.dto.StartPersonPileDTO; import com.jsowell.pile.service.MemberPlateNumberRelationService; import com.jsowell.pile.service.PileBasicInfoService; import com.jsowell.pile.service.PileRemoteService; +import com.jsowell.pile.vo.PileReservedVO; import com.jsowell.pile.vo.uniapp.customer.MemberPlateNumberVO; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections4.CollectionUtils; @@ -291,5 +297,122 @@ public class PileReservationInfoServiceImpl implements PileReservationInfoServic pileReservationInfo.setDelFlag(DelFlagEnum.DELETE.getValue()); pileReservationInfoMapper.updateByPrimaryKey(pileReservationInfo); } + + @Override + public int createReservation(CreateReservedDTO dto) { + PileReservationInfo reservedInfo = new PileReservationInfo(); + reservedInfo.setMemberId(dto.getMemberId()); + reservedInfo.setPileSn(dto.getPileSn()); + reservedInfo.setPileConnectorCode(dto.getPileConnectorCode()); + reservedInfo.setStatus(Constants.ZERO); // 默认未生效 + // reservedInfo.setStartTime(DateUtils.parseDate(dto.getStartTime())); + reservedInfo.setStartTime(Time.valueOf(dto.getStartTime())); + // reservedInfo.setEndTime(DateUtils.parseDate(dto.getEndTime())); + if (StringUtils.isNotBlank(dto.getEndTime())) { + reservedInfo.setEndTime(Time.valueOf(dto.getEndTime())); + } + + // 2024年7月25日14点36分, 此段代码注释掉, 采用默认设置 + // if (StringUtils.isNotBlank(dto.getFreq())) { + // reservedInfo.setReservationType("recurring"); + // reservedInfo.setFreq(dto.getFreq()); + // } else { + // reservedInfo.setReservationType("single"); + // reservedInfo.setFreq(null); + // } + + // 默认每天 + reservedInfo.setReservationType("recurring"); + reservedInfo.setFreq("daily"); + + reservedInfo.setCreateBy(dto.getMemberId()); + this.insertSelective(reservedInfo); + return reservedInfo.getId(); + } + + @Override + public PageResponse queryReservationList(PileReservationDTO dto) { + int pageNo = dto.getPageNo() == null ? Constants.one : dto.getPageNo(); + int pageSize = dto.getPageSize() == null ? 10 : dto.getPageSize(); + PageHelper.startPage(pageNo, pageSize); + List list = this.getReservationsByMemberIdAndPileSn(dto.getMemberId(), dto.getPileSn()); + PageInfo pageInfo = new PageInfo<>(list); + + PageResponse pageResponse = new PageResponse(); + pageResponse.setPageNum(pageInfo.getPageNum()); + pageResponse.setPageSize(pageInfo.getPageSize()); + pageResponse.setPages(pageInfo.getPages()); + pageResponse.setTotal(pageInfo.getTotal()); + + List resultList = Lists.newArrayList(); + for (PileReservationInfo reservedInfo : pageInfo.getList()) { + resultList.add( + PileReservedVO.builder() + .reservedId(reservedInfo.getId() + "") + .pileSn(reservedInfo.getPileSn()) + .startTime(reservedInfo.getStartTime().toString()) + .endTime(reservedInfo.getEndTime().toString()) + .freq(reservedInfo.getFreq()) + .status(reservedInfo.getStatus()) + .build() + ); + } + pageResponse.setList(resultList); + return pageResponse; + } + + /** + * 修改预约状态 + * @param dto + */ + @Override + public void updateReservationStatus(PileReservationDTO dto) { + if (StringUtils.equals(dto.getStatus(), Constants.ZERO)) { + // 停用 + this.deactivateReserved(dto); + } else if (StringUtils.equals(dto.getStatus(), Constants.ONE)) { + // 启用 + this.activateReserved(dto); + } + } + + /** + * 修改预约充电信息 + * @param dto + */ + @Override + public void updateReservation(PileReservationDTO dto) { + PileReservationInfo pileReservationInfo = pileReservationInfoMapper.selectByPrimaryKey(Integer.valueOf(dto.getReservedId())); + if (pileReservationInfo == null) { + return; + } + if (!StringUtils.equals(dto.getMemberId(), pileReservationInfo.getMemberId())) { + return; + } + + if (StringUtils.isNotBlank(dto.getStartTime())) { + pileReservationInfo.setStartTime(Time.valueOf(dto.getStartTime())); + } + if (StringUtils.isNotBlank(dto.getEndTime())) { + pileReservationInfo.setEndTime(Time.valueOf(dto.getEndTime())); + } + if (StringUtils.isNotBlank(dto.getStatus())) { + pileReservationInfo.setStatus(dto.getStatus()); + } + this.insertOrUpdateSelective(pileReservationInfo); + } + + /** + * 个人桩停止充电 + * @param dto + */ + @Override + public void personPileStopCharging(PersonPileStopChargingDTO dto) { + // 查询个人桩信息 + + // 发送请求的用户有没有权限停止充电 + + + } } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/programlogic/AbstractProgramLogic.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/programlogic/AbstractProgramLogic.java index 2bda3f00b..a9ffca059 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/programlogic/AbstractProgramLogic.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/programlogic/AbstractProgramLogic.java @@ -105,7 +105,10 @@ public abstract class AbstractProgramLogic implements InitializingBean { protected MemberGroupService memberGroupService; @Autowired - private PileStationWhitelistService pileStationWhitelistService; + protected PileStationWhitelistService pileStationWhitelistService; + + @Autowired + protected PersonalChargingRecordService personalChargingRecordService; @Autowired protected RedisCache redisCache; diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/programlogic/DelayMerchantProgramLogic.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/programlogic/DelayMerchantProgramLogic.java index 3ab27ab0c..de933a2b3 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/programlogic/DelayMerchantProgramLogic.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/programlogic/DelayMerchantProgramLogic.java @@ -844,7 +844,7 @@ public class DelayMerchantProgramLogic extends AbstractProgramLogic { if (!b) { throw new BusinessException("00600006", "个人桩启动失败,无启动权限"); } - String orderCode; + // 生成订单 GenerateOrderDTO generateOrderDTO = new GenerateOrderDTO(); generateOrderDTO.setMemberId(dto.getMemberId()); @@ -853,18 +853,28 @@ public class DelayMerchantProgramLogic extends AbstractProgramLogic { generateOrderDTO.setStartType(dto.getStartType()); generateOrderDTO.setPileSn(pileSn); generateOrderDTO.setConnectorCode(connectorCode); + + OrderBasicInfo orderBasicInfo; try { - OrderBasicInfo orderBasicInfo = generateOrder(generateOrderDTO); - orderCode = orderBasicInfo.getOrderCode(); + orderBasicInfo = generateOrder(generateOrderDTO); } catch (ParseException e) { throw new RuntimeException(e); } // 支付订单 PayOrderDTO payOrderDTO = new PayOrderDTO(); - payOrderDTO.setOrderCode(orderCode); + payOrderDTO.setOrderCode(orderBasicInfo.getOrderCode()); payOrderDTO.setPayMode(OrderPayModeEnum.PAYMENT_OF_WHITELIST.getValue()); payOrderDTO.setMemberId(dto.getMemberId()); payOrder(payOrderDTO); - return orderCode; + + // 插入个人桩充电记录表 + try { + personalChargingRecordService.processPersonalChargingRecord(orderBasicInfo); + } catch (Exception e) { + logger.error("插入个人桩充电记录表error, orderCode:{}, transactionCode:{}", + orderBasicInfo.getOrderCode(), orderBasicInfo.getTransactionCode()); + } + + return orderBasicInfo.getOrderCode(); } }