From 38e265af32e4abc48d4625d0b3676543e6618736 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期二, 13 十月 2026 17:21:55 +0800
Subject: [PATCH] 修改bug

---
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TVinChargingOrderServiceImpl.java |   16 +++++++++++-----
 1 files changed, 11 insertions(+), 5 deletions(-)

diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TVinChargingOrderServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TVinChargingOrderServiceImpl.java
index 7e4fa97..77cd90d 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TVinChargingOrderServiceImpl.java
+++ b/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);
     }

--
Gitblit v1.7.1