diff --git a/src/views/AgentChat/neuratalk/components/Chat/MCPChat.tsx b/src/views/AgentChat/neuratalk/components/Chat/MCPChat.tsx
index a5533654..5f644e1a 100644
--- a/src/views/AgentChat/neuratalk/components/Chat/MCPChat.tsx
+++ b/src/views/AgentChat/neuratalk/components/Chat/MCPChat.tsx
@@ -159,7 +159,8 @@ export default function MCPChat() {
需要订阅才能使用 AI 助手
升级到高级版解锁所有功能
- 当前订阅等级:{user?.subscription_tier || '未知'}
+ 当前订阅等级:{user?.subscription_type || user?.subscription_tier || '未知'}
+ {user?.is_subscription_active && ' (活跃)'}
diff --git a/src/views/AgentChat/neuratalk/lib/auth.ts b/src/views/AgentChat/neuratalk/lib/auth.ts
index 13c55af1..5592f0e5 100644
--- a/src/views/AgentChat/neuratalk/lib/auth.ts
+++ b/src/views/AgentChat/neuratalk/lib/auth.ts
@@ -55,12 +55,24 @@ export async function checkAuth(): Promise {
};
}
- // 检查订阅权限 - 包括 max 用户和其他高级订阅
+ // 检查订阅权限 - 注意:后端返回的是 subscription_type 而不是 subscription_tier
+ const userType = data.user.subscription_type?.toLowerCase() || '';
const userTier = data.user.subscription_tier?.toLowerCase() || '';
- const canAccessChat = ['max', 'premium', 'pro', 'enterprise', 'vip', 'plus'].includes(userTier) ||
- userTier !== 'free' && userTier !== '' && userTier !== 'basic';
+ const subscriptionLevel = userType || userTier; // 兼容两个字段
- console.log('User subscription tier:', data.user.subscription_tier, 'Can access:', canAccessChat);
+ // 检查是否为付费用户
+ const canAccessChat =
+ ['max', 'premium', 'pro', 'enterprise', 'vip', 'plus'].includes(subscriptionLevel) ||
+ data.user.is_subscription_active === true ||
+ data.user.subscription_status === 'active';
+
+ console.log('User subscription:', {
+ type: data.user.subscription_type,
+ tier: data.user.subscription_tier,
+ active: data.user.is_subscription_active,
+ status: data.user.subscription_status,
+ canAccess: canAccessChat
+ });
return {
isAuthenticated: true,