فهرست منبع

fix bug 预约充电启动失败

skyline 2 سال پیش
والد
کامیت
c8b7d4f5af
1فایلهای تغییر یافته به همراه6 افزوده شده و 2 حذف شده
  1. 6 2
      service/src/main/java/com/kym/service/miniapp/impl/ChargeServiceImpl.java

+ 6 - 2
service/src/main/java/com/kym/service/miniapp/impl/ChargeServiceImpl.java

@@ -196,8 +196,12 @@ public class ChargeServiceImpl implements ChargeService {
         // 当前设备是是否有正在进行中的订单
         var chargeOrder = chargeOrderService.getChargingOrderByUserId(userId);
         if (chargeOrder != null) {
-            LOGGER.error("用户:{}存在进行中的订单:{}", userId, chargeOrder.getStartChargeSeq());
-            throw new BusinessException(ResponseEnum.ORDER_IN_PROGRESS);
+            // 预约中的订单到了启动时间则直接启动,忽略校验
+            if (!(chargeOrder.getChargeStatus().equals(ChargeOrder.CHARGE_STATUS_预约中) && chargeOrder.getStartTime().isBefore(LocalDateTime.now()))) {
+                LOGGER.error("用户:{}存在进行中的订单:{}", userId, chargeOrder.getStartChargeSeq());
+                throw new BusinessException(ResponseEnum.ORDER_IN_PROGRESS);
+            }
+
         }
         // 查询用户余额
         var account = accountService.getAccountByUserId(userId);