puzhibing
昨天 38e265af32e4abc48d4625d0b3676543e6618736
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TVinChargingOrderServiceImpl.java
@@ -1107,12 +1107,18 @@
        if (usable.compareTo(ZERO_AMOUNT) <= 0) {
            return VinChargeContext.fail(3, "账户可用余额为0 accountMode=" + accountMode + " companyId=" + companyId);
        }
        BigDecimal dispatch = authorization == null ? null : authorization.getDispatchAmount();
        if (dispatch == null || dispatch.compareTo(ZERO_AMOUNT) <= 0) {
            dispatch = VD_DEFAULT_DISPATCH_AMOUNT;
        }
        if (dispatch.compareTo(usable) > 0) {
        BigDecimal dispatch;
        if (accountMode == ACCOUNT_MODE_ALLOCATED) {
            // 分配模式:直接下发 VIN 账户余额,不再受公司充电下发金额限制
            dispatch = usable;
        } else {
            dispatch = authorization == null ? null : authorization.getDispatchAmount();
            if (dispatch == null || dispatch.compareTo(ZERO_AMOUNT) <= 0) {
                dispatch = VD_DEFAULT_DISPATCH_AMOUNT;
            }
            if (dispatch.compareTo(usable) > 0) {
                dispatch = usable;
            }
        }
        return VinChargeContext.ok(accountMode, dispatch, maxEndTime);
    }