diff --git a/jsowell-netty/src/main/java/com/jsowell/netty/handler/yunkuaichong/ConfirmStartChargingRequestHandler.java b/jsowell-netty/src/main/java/com/jsowell/netty/handler/yunkuaichong/ConfirmStartChargingRequestHandler.java index 855ce3f88..8a66600e2 100644 --- a/jsowell-netty/src/main/java/com/jsowell/netty/handler/yunkuaichong/ConfirmStartChargingRequestHandler.java +++ b/jsowell-netty/src/main/java/com/jsowell/netty/handler/yunkuaichong/ConfirmStartChargingRequestHandler.java @@ -317,7 +317,13 @@ public class ConfirmStartChargingRequestHandler extends AbstractYkcHandler { BigDecimal totalBalance = memberWalletVO.getTotalBalance() == null ? BigDecimal.ZERO : memberWalletVO.getTotalBalance(); - if (!ChargeAmountUtils.isPositive(chargeAmount) || totalBalance.compareTo(chargeAmount) < 0) { + // 账户余额小于默认充电金额时,使用全部余额 + if (totalBalance.compareTo(chargeAmount) < 0) { + log.info("余额不足默认金额,使用全部余额, memberId:{}, chargeAmount:{}, totalBalance:{}", + memberWalletVO.getMemberId(), chargeAmount, totalBalance); + chargeAmount = totalBalance; + } + if (!ChargeAmountUtils.isPositive(chargeAmount)) { log.info("余额不足, memberId:{}, chargeAmount:{}, totalBalance:{}", memberWalletVO.getMemberId(), chargeAmount, totalBalance); return buildFailureResult("03"); 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 65806e58f..0ddddbbc2 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 @@ -4730,7 +4730,13 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService { BigDecimal totalBalance = memberVO.getTotalBalance() == null ? BigDecimal.ZERO : memberVO.getTotalBalance(); + // 账户余额小于默认充电金额时,使用全部余额 if (totalBalance.compareTo(chargeAmount) < 0) { + logger.info("充电桩主动申请启动充电生成订单 余额不足默认金额,使用全部余额, memberId:{}, chargeAmount:{}, totalBalance:{}", + memberId, chargeAmount, totalBalance); + chargeAmount = totalBalance; + } + if (!ChargeAmountUtils.isPositive(chargeAmount)) { logger.info("充电桩主动申请启动充电生成订单 余额不足, memberId:{}, chargeAmount:{}, totalBalance:{}", memberId, chargeAmount, totalBalance); throw new BusinessException(ReturnCodeEnum.CODE_BALANCE_IS_INSUFFICIENT); @@ -6777,7 +6783,13 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService { BigDecimal totalBalance = memberWalletVO.getTotalBalance() == null ? BigDecimal.ZERO : memberWalletVO.getTotalBalance(); - if (!ChargeAmountUtils.isPositive(chargeAmount) || totalBalance.compareTo(chargeAmount) < 0) { + // 账户余额小于默认充电金额时,使用全部余额 + if (totalBalance.compareTo(chargeAmount) < 0) { + logger.info("并充生成订单----余额不足默认金额,使用全部余额, memberId:{}, chargeAmount:{}, totalBalance:{}", + memberWalletVO.getMemberId(), chargeAmount, totalBalance); + chargeAmount = totalBalance; + } + if (!ChargeAmountUtils.isPositive(chargeAmount)) { map.put("transactionCode", Constants.ILLEGAL_TRANSACTION_CODE); map.put("accountBalance", accountBalance); map.put("defeatReasonCode", "03");