diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/ruoyi/common/core/config/ThreadPoolConfig.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/ruoyi/common/core/config/ThreadPoolConfig.java index 69ab0736..24838a55 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/ruoyi/common/core/config/ThreadPoolConfig.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/ruoyi/common/core/config/ThreadPoolConfig.java @@ -1,5 +1,6 @@ package org.ruoyi.common.core.config; +import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.concurrent.BasicThreadFactory; import org.ruoyi.common.core.config.properties.ThreadPoolProperties; import org.ruoyi.common.core.utils.Threads; @@ -18,6 +19,7 @@ import java.util.concurrent.ThreadPoolExecutor; * * @author Lion Li **/ +@Slf4j @AutoConfiguration @EnableConfigurationProperties(ThreadPoolProperties.class) public class ThreadPoolConfig { @@ -43,7 +45,8 @@ public class ThreadPoolConfig { * 执行周期性或定时任务 */ @Bean(name = "scheduledExecutorService") - protected ScheduledExecutorService scheduledExecutorService() { + public ScheduledExecutorService scheduledExecutorService() { + log.info("====创建定时任务线程池===="); return new ScheduledThreadPoolExecutor(core, new BasicThreadFactory.Builder().namingPattern("schedule-pool-%d").daemon(true).build(), new ThreadPoolExecutor.CallerRunsPolicy()) { diff --git a/ruoyi-modules/ruoyi-chat/src/main/java/org/ruoyi/chat/service/chat/impl/ChatCostServiceImpl.java b/ruoyi-modules/ruoyi-chat/src/main/java/org/ruoyi/chat/service/chat/impl/ChatCostServiceImpl.java index 16507b94..8ca63b33 100644 --- a/ruoyi-modules/ruoyi-chat/src/main/java/org/ruoyi/chat/service/chat/impl/ChatCostServiceImpl.java +++ b/ruoyi-modules/ruoyi-chat/src/main/java/org/ruoyi/chat/service/chat/impl/ChatCostServiceImpl.java @@ -435,8 +435,8 @@ public class ChatCostServiceImpl implements IChatCostService { @Override public boolean checkBalanceSufficient(ChatRequest chatRequest) { if (chatRequest.getUserId() == null) { - log.warn("checkBalanceSufficient->用户ID为空,视为余额不足"); - return false; + log.warn("当前未登录"); + return true; } try { diff --git a/ruoyi-modules/ruoyi-chat/src/main/java/org/ruoyi/chat/service/chat/proxy/BillingChatServiceProxy.java b/ruoyi-modules/ruoyi-chat/src/main/java/org/ruoyi/chat/service/chat/proxy/BillingChatServiceProxy.java index b414d86a..cd18974e 100644 --- a/ruoyi-modules/ruoyi-chat/src/main/java/org/ruoyi/chat/service/chat/proxy/BillingChatServiceProxy.java +++ b/ruoyi-modules/ruoyi-chat/src/main/java/org/ruoyi/chat/service/chat/proxy/BillingChatServiceProxy.java @@ -34,7 +34,16 @@ public class BillingChatServiceProxy implements IChatService { String errorMsg = "余额不足,无法使用AI服务,请充值后再试"; log.warn("余额不足阻止AI回复,用户ID: {}, 模型: {}", chatRequest.getUserId(), chatRequest.getModel()); - throw new RuntimeException(errorMsg); + try { + emitter.send(errorMsg); + emitter.complete(); + } catch (IOException e) { + log.error("推送流异常,用户ID: {}, 模型: {}", + chatRequest.getUserId(), chatRequest.getModel()); + emitter.complete(); + throw new RuntimeException(errorMsg); + } + return emitter; } log.debug("余额检查通过,开始AI回复,用户ID: {}, 模型: {}",