diff --git a/jsowell-admin/src/main/java/com/jsowell/api/uniapp/OrderController.java b/jsowell-admin/src/main/java/com/jsowell/api/uniapp/OrderController.java index 226c8fa8b..f5ce06ec4 100644 --- a/jsowell-admin/src/main/java/com/jsowell/api/uniapp/OrderController.java +++ b/jsowell-admin/src/main/java/com/jsowell/api/uniapp/OrderController.java @@ -63,6 +63,11 @@ public class OrderController extends BaseController { if (StringUtils.isEmpty(memberId)) { throw new BusinessException(ReturnCodeEnum.CODE_TOKEN_ERROR); } + String appId = request.getHeader("appId"); + if (StringUtils.isBlank(appId)) { + throw new BusinessException(ReturnCodeEnum.CODE_QUERY_WECHAT_APP_ID_IS_NULL); + } + dto.setAppId(appId); dto.setMemberId(memberId); // 生成订单 dto.setStartMode(Constants.ONE); // 启动方式 1-app启动 diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/dto/GenerateOrderDTO.java b/jsowell-pile/src/main/java/com/jsowell/pile/dto/GenerateOrderDTO.java index f52b51753..9abf0d9ca 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/dto/GenerateOrderDTO.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/dto/GenerateOrderDTO.java @@ -83,4 +83,9 @@ public class GenerateOrderDTO extends BasicPileDTO{ * 站点id */ private String stationId; + + /** + * 微信小程序appId + */ + private String appId; } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/IPileMerchantInfoService.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/IPileMerchantInfoService.java index 0152193c8..ace40cf95 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/IPileMerchantInfoService.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/IPileMerchantInfoService.java @@ -114,4 +114,6 @@ public interface IPileMerchantInfoService { * 通过merchantId获取一级运营商信息 */ PileMerchantInfo getFirstLevelMerchantByMerchantId(String merchantId); + + String getFirstLevelMerchantIdByMerchantId(String merchantId); } 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 0739bab51..3b32cf77a 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 @@ -3225,6 +3225,13 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService { throw new BusinessException(ReturnCodeEnum.CODE_STATION_IS_NOT_OPEN); } + // 校验启动桩使用的小程序,和充电桩所属一级运营商是否一致 + String merchantIdByAppId = pileMerchantInfoService.getFirstLevelMerchantIdByAppId(dto.getAppId()); + String merchantIdByMerchantId = pileMerchantInfoService.getFirstLevelMerchantIdByMerchantId(stationInfo.getMerchantId()); + if (!StringUtils.equals(merchantIdByAppId, merchantIdByMerchantId)) { + throw new BusinessException("", "当前桩运营商与小程序所属运营商不一致"); + } + // 如果是鉴权卡或者vin启动,不判断枪口状态 if (!(StringUtils.equals(dto.getStartMode(), StartModeEnum.AUTH_CARD.getValue()) || StringUtils.equals(dto.getStartMode(), StartModeEnum.VIN_CODE.getValue()))) { diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PileMerchantInfoServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PileMerchantInfoServiceImpl.java index eecb5812b..1d04232ff 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PileMerchantInfoServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PileMerchantInfoServiceImpl.java @@ -430,4 +430,13 @@ public class PileMerchantInfoServiceImpl implements IPileMerchantInfoService { return pileMerchantInfo; } + @Override + public String getFirstLevelMerchantIdByMerchantId(String merchantId) { + PileMerchantInfo merchantInfo = getFirstLevelMerchantByMerchantId(merchantId); + if (merchantInfo != null) { + return String.valueOf(merchantInfo.getId()); + } + return null; + } + }