mirror of
https://github.com/Wei-Shaw/claude-relay-service.git
synced 2026-01-22 16:43:35 +00:00
fix: 修复专属账号下拉框,仅显示dedicated类型账号
- 修改CreateApiKeyModal和EditApiKeyModal的过滤逻辑 - 专属账号下拉框只显示accountType='dedicated'的账号 - 移除accountType='group'的账号,这些账号通过分组调度 - 更新标签文字为'专属账号'以更准确描述
This commit is contained in:
132
scripts/test-dedicated-accounts.js
Normal file
132
scripts/test-dedicated-accounts.js
Normal file
@@ -0,0 +1,132 @@
|
||||
/**
|
||||
* 测试专属账号显示问题
|
||||
*/
|
||||
|
||||
const redis = require('../src/models/redis');
|
||||
|
||||
async function testDedicatedAccounts() {
|
||||
console.log('🔍 检查专属账号...\n');
|
||||
|
||||
try {
|
||||
// 确保 Redis 已连接
|
||||
await redis.connect();
|
||||
|
||||
// 获取所有 Claude 账号
|
||||
const claudeKeys = await redis.client.keys('claude:account:*');
|
||||
console.log(`找到 ${claudeKeys.length} 个 Claude 账号\n`);
|
||||
|
||||
const dedicatedAccounts = [];
|
||||
const groupAccounts = [];
|
||||
const sharedAccounts = [];
|
||||
|
||||
for (const key of claudeKeys) {
|
||||
const account = await redis.client.hgetall(key);
|
||||
const accountType = account.accountType || 'shared';
|
||||
|
||||
const accountInfo = {
|
||||
id: account.id,
|
||||
name: account.name,
|
||||
accountType: accountType,
|
||||
status: account.status,
|
||||
isActive: account.isActive,
|
||||
createdAt: account.createdAt
|
||||
};
|
||||
|
||||
if (accountType === 'dedicated') {
|
||||
dedicatedAccounts.push(accountInfo);
|
||||
} else if (accountType === 'group') {
|
||||
groupAccounts.push(accountInfo);
|
||||
} else {
|
||||
sharedAccounts.push(accountInfo);
|
||||
}
|
||||
}
|
||||
|
||||
console.log('📊 账号统计:');
|
||||
console.log(`- 专属账号: ${dedicatedAccounts.length} 个`);
|
||||
console.log(`- 分组账号: ${groupAccounts.length} 个`);
|
||||
console.log(`- 共享账号: ${sharedAccounts.length} 个`);
|
||||
console.log('');
|
||||
|
||||
if (dedicatedAccounts.length > 0) {
|
||||
console.log('✅ 专属账号列表:');
|
||||
dedicatedAccounts.forEach(acc => {
|
||||
console.log(` - ${acc.name} (ID: ${acc.id}, 状态: ${acc.status})`);
|
||||
});
|
||||
console.log('');
|
||||
} else {
|
||||
console.log('⚠️ 没有找到专属账号!');
|
||||
console.log('💡 提示: 请确保在账号管理页面将账号类型设置为"专属账户"');
|
||||
console.log('');
|
||||
}
|
||||
|
||||
if (groupAccounts.length > 0) {
|
||||
console.log('📁 分组账号列表:');
|
||||
groupAccounts.forEach(acc => {
|
||||
console.log(` - ${acc.name} (ID: ${acc.id}, 状态: ${acc.status})`);
|
||||
});
|
||||
console.log('');
|
||||
}
|
||||
|
||||
// 检查分组
|
||||
const groupKeys = await redis.client.keys('account_group:*');
|
||||
console.log(`\n找到 ${groupKeys.length} 个账号分组`);
|
||||
|
||||
if (groupKeys.length > 0) {
|
||||
console.log('📋 分组列表:');
|
||||
for (const key of groupKeys) {
|
||||
const group = await redis.client.hgetall(key);
|
||||
console.log(` - ${group.name} (平台: ${group.platform}, 成员数: ${group.memberCount || 0})`);
|
||||
}
|
||||
}
|
||||
|
||||
// 检查 Claude Console 账号
|
||||
const consoleKeys = await redis.client.keys('claude_console_account:*');
|
||||
console.log(`\n找到 ${consoleKeys.length} 个 Claude Console 账号`);
|
||||
|
||||
const dedicatedConsoleAccounts = [];
|
||||
const groupConsoleAccounts = [];
|
||||
|
||||
for (const key of consoleKeys) {
|
||||
const account = await redis.client.hgetall(key);
|
||||
const accountType = account.accountType || 'shared';
|
||||
|
||||
if (accountType === 'dedicated') {
|
||||
dedicatedConsoleAccounts.push({
|
||||
id: account.id,
|
||||
name: account.name,
|
||||
accountType: accountType,
|
||||
status: account.status
|
||||
});
|
||||
} else if (accountType === 'group') {
|
||||
groupConsoleAccounts.push({
|
||||
id: account.id,
|
||||
name: account.name,
|
||||
accountType: accountType,
|
||||
status: account.status
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
if (dedicatedConsoleAccounts.length > 0) {
|
||||
console.log('\n✅ Claude Console 专属账号:');
|
||||
dedicatedConsoleAccounts.forEach(acc => {
|
||||
console.log(` - ${acc.name} (ID: ${acc.id}, 状态: ${acc.status})`);
|
||||
});
|
||||
}
|
||||
|
||||
if (groupConsoleAccounts.length > 0) {
|
||||
console.log('\n📁 Claude Console 分组账号:');
|
||||
groupConsoleAccounts.forEach(acc => {
|
||||
console.log(` - ${acc.name} (ID: ${acc.id}, 状态: ${acc.status})`);
|
||||
});
|
||||
}
|
||||
|
||||
} catch (error) {
|
||||
console.error('❌ 错误:', error);
|
||||
console.error(error.stack);
|
||||
} finally {
|
||||
process.exit(0);
|
||||
}
|
||||
}
|
||||
|
||||
testDedicatedAccounts();
|
||||
Reference in New Issue
Block a user