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 fa32a6234..e69278da0 100644 --- a/jsowell-admin/src/main/java/com/jsowell/service/PileService.java +++ b/jsowell-admin/src/main/java/com/jsowell/service/PileService.java @@ -633,11 +633,7 @@ public class PileService { * @return */ public String startPersonalPileCharging(StartPersonPileDTO dto) { - // 获取处理逻辑 - String mode = pileMerchantInfoService.getDelayModeByAppIdAndRequestSource(dto.getAppId(), dto.getRequestSource()); - AbstractProgramLogic orderLogic = ProgramLogicFactory.getProgramLogic(mode); - String orderCode = orderLogic.startPersonalPileCharging(dto); - return orderCode; + return pileBasicInfoService.startPersonalPileCharging(dto); } /** diff --git a/jsowell-common/src/main/java/com/jsowell/common/constant/Constants.java b/jsowell-common/src/main/java/com/jsowell/common/constant/Constants.java index d91c5f456..74a7669dc 100644 --- a/jsowell-common/src/main/java/com/jsowell/common/constant/Constants.java +++ b/jsowell-common/src/main/java/com/jsowell/common/constant/Constants.java @@ -56,6 +56,11 @@ public class Constants { public static final String DEFAULT = "default"; // 默认 + /** + * 定时任务需要appId, 取默认万车充的appId + */ + public static final String DEFAULT_APP_ID = "wxbb3e0d474569481d"; // 默认微信小程序appId + public static final byte[] updateServerPort = new byte[]{port}; // FTP用户名 diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/dto/StartPersonPileDTO.java b/jsowell-pile/src/main/java/com/jsowell/pile/dto/StartPersonPileDTO.java index 4de7c06f5..456ea8309 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/dto/StartPersonPileDTO.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/dto/StartPersonPileDTO.java @@ -11,15 +11,29 @@ public class StartPersonPileDTO extends BaseDTO { */ private String pileConnectorCode; + /** + * 充电桩所属运营商id + */ + private String merchantId; + /** * 启动类型 * @see com.jsowell.common.enums.ykc.StartTypeEnum */ private String startType; + /** + * 会员id + */ private String memberId; + /** + * 启动时间 + */ private String startTime; + /** + * 结束时间 + */ private String endTime; } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/PileBasicInfoService.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/PileBasicInfoService.java index 3631263ca..9ba220989 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/PileBasicInfoService.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/PileBasicInfoService.java @@ -5,6 +5,7 @@ import com.jsowell.pile.domain.PileBasicInfo; import com.jsowell.pile.dto.IndexQueryDTO; import com.jsowell.pile.dto.QueryPileDTO; import com.jsowell.pile.dto.ReplaceMerchantStationDTO; +import com.jsowell.pile.dto.StartPersonPileDTO; import com.jsowell.pile.thirdparty.ConnectorInfo; import com.jsowell.pile.thirdparty.EquipmentInfo; import com.jsowell.pile.thirdparty.ZDLConnectorInfo; @@ -219,4 +220,6 @@ public interface PileBasicInfoService { List getPileListForZDL(String stationId); List getConnectorListForZDL(String pileSn); + + String startPersonalPileCharging(StartPersonPileDTO dto); } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PileBasicInfoServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PileBasicInfoServiceImpl.java index a5ed2fab3..73c235af6 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PileBasicInfoServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PileBasicInfoServiceImpl.java @@ -24,8 +24,11 @@ import com.jsowell.pile.domain.PileSimInfo; import com.jsowell.pile.dto.IndexQueryDTO; import com.jsowell.pile.dto.QueryPileDTO; import com.jsowell.pile.dto.ReplaceMerchantStationDTO; +import com.jsowell.pile.dto.StartPersonPileDTO; import com.jsowell.pile.mapper.PileBasicInfoMapper; import com.jsowell.pile.service.*; +import com.jsowell.pile.service.programlogic.AbstractProgramLogic; +import com.jsowell.pile.service.programlogic.ProgramLogicFactory; import com.jsowell.pile.thirdparty.ConnectorInfo; import com.jsowell.pile.thirdparty.EquipmentInfo; import com.jsowell.pile.thirdparty.ZDLConnectorInfo; @@ -1207,4 +1210,24 @@ public class PileBasicInfoServiceImpl implements PileBasicInfoService { } return resultList; } + + /** + * 个人桩启动充电 + * @param dto + * @return + */ + @Override + public String startPersonalPileCharging(StartPersonPileDTO dto) { + // 查询充电桩信息 + PileConnectorDetailVO pileConnectorDetailVO = queryPileConnectorDetail(dto.getPileConnectorCode()); + if (pileConnectorDetailVO == null) { + throw new BusinessException("", ""); + } + // 获取处理逻辑 + // String mode = pileMerchantInfoService.getDelayModeByAppIdAndRequestSource(dto.getAppId(), dto.getRequestSource()); + String mode = pileMerchantInfoService.getDelayModeByMerchantId(pileConnectorDetailVO.getMerchantId()); + AbstractProgramLogic orderLogic = ProgramLogicFactory.getProgramLogic(mode); + String orderCode = orderLogic.startPersonalPileCharging(dto); + return orderCode; + } } 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 3d98afd7f..0279ddf63 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 @@ -4,8 +4,11 @@ import com.jsowell.common.constant.Constants; 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.dto.PileReservationDTO; +import com.jsowell.pile.dto.StartPersonPileDTO; +import com.jsowell.pile.service.PileBasicInfoService; import com.jsowell.pile.service.PileRemoteService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -13,6 +16,7 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.sql.Time; +import java.time.LocalDateTime; import java.time.LocalTime; import java.util.List; import java.util.Objects; @@ -29,7 +33,7 @@ public class PileReservationInfoServiceImpl implements PileReservationInfoServic private PileReservationInfoMapper pileReservationInfoMapper; @Autowired - private PileRemoteService pileRemoteService; + private PileBasicInfoService pileBasicInfoService; @Override public int deleteByPrimaryKey(Integer id) { @@ -174,6 +178,13 @@ public class PileReservationInfoServiceImpl implements PileReservationInfoServic } // 生成个人桩订单 + StartPersonPileDTO dto = new StartPersonPileDTO(); + dto.setPileConnectorCode(pileConnectorCode); + dto.setMemberId(pileReservationInfo.getMemberId()); + LocalDateTime[] localDateTimes = DateUtils.convertStartAndEndTime(pileReservationInfo.getStartTime().toString(), pileReservationInfo.getEndTime().toString()); + dto.setStartTime(DateUtils.formatDateTime(localDateTimes[0])); + dto.setEndTime(DateUtils.formatDateTime(localDateTimes[1])); + pileBasicInfoService.startPersonalPileCharging(dto); } /** 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 8de649ec7..67bbbccbe 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 @@ -843,7 +843,7 @@ public class DelayMerchantProgramLogic extends AbstractProgramLogic { if (!b) { throw new BusinessException("00600006", "个人桩启动失败,无启动权限"); } - String orderCode = ""; + String orderCode; // 生成订单 GenerateOrderDTO generateOrderDTO = new GenerateOrderDTO(); generateOrderDTO.setMemberId(dto.getMemberId()); diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/vo/uniapp/PileConnectorDetailVO.java b/jsowell-pile/src/main/java/com/jsowell/pile/vo/uniapp/PileConnectorDetailVO.java index 9511f68b1..cf51cd15f 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/vo/uniapp/PileConnectorDetailVO.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/vo/uniapp/PileConnectorDetailVO.java @@ -19,6 +19,11 @@ public class PileConnectorDetailVO { */ private String pileSn; + /** + * 运营商id + */ + private String merchantId; + /** * 站点id */ diff --git a/jsowell-pile/src/main/resources/mapper/pile/PileBasicInfoMapper.xml b/jsowell-pile/src/main/resources/mapper/pile/PileBasicInfoMapper.xml index bf78deaf9..ca5060015 100644 --- a/jsowell-pile/src/main/resources/mapper/pile/PileBasicInfoMapper.xml +++ b/jsowell-pile/src/main/resources/mapper/pile/PileBasicInfoMapper.xml @@ -296,6 +296,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" SELECT t1.id AS pileId, t1.sn AS pileSn, + t1.merchant_id as merchantId, t1.station_id AS stationId, t2.id AS connectorId, t2.pile_connector_code AS pileConnectorCode,