84 lines
2.7 KiB
JavaScript
84 lines
2.7 KiB
JavaScript
// =====================================================
|
|
// 通過 API 創建虛擬應用記錄
|
|
// =====================================================
|
|
|
|
async function createVirtualAppsViaAPI() {
|
|
console.log('🔧 通過 API 創建虛擬應用記錄...\n');
|
|
|
|
try {
|
|
// 等待服務器啟動
|
|
console.log('⏳ 等待服務器啟動...');
|
|
await new Promise(resolve => setTimeout(resolve, 3000));
|
|
|
|
// 獲取團隊數據
|
|
console.log('📋 獲取團隊數據...');
|
|
const teamsResponse = await fetch('http://localhost:3000/api/competitions');
|
|
const competitionsData = await teamsResponse.json();
|
|
|
|
if (!competitionsData.success || !competitionsData.data || competitionsData.data.length === 0) {
|
|
console.log('❌ 無法獲取競賽數據');
|
|
return;
|
|
}
|
|
|
|
const competition = competitionsData.data[0];
|
|
console.log('🎯 選擇競賽:', competition.name);
|
|
|
|
// 獲取競賽的團隊數據
|
|
const teamsDataResponse = await fetch(`http://localhost:3000/api/competitions/${competition.id}/teams`);
|
|
const teamsData = await teamsDataResponse.json();
|
|
|
|
if (!teamsData.success || !teamsData.data.teams || teamsData.data.teams.length === 0) {
|
|
console.log('❌ 競賽沒有團隊數據');
|
|
return;
|
|
}
|
|
|
|
const teams = teamsData.data.teams;
|
|
console.log('✅ 獲取到', teams.length, '個團隊');
|
|
|
|
// 為每個團隊創建虛擬應用
|
|
for (const team of teams) {
|
|
const virtualAppData = {
|
|
name: `[團隊評分] ${team.name}`,
|
|
description: `團隊 ${team.name} 的評分記錄`,
|
|
creator_id: '00000000-0000-0000-0000-000000000000', // 虛擬創建者ID
|
|
category: 'team_scoring',
|
|
type: 'team',
|
|
app_url: null,
|
|
icon: 'Users',
|
|
icon_color: 'from-gray-500 to-gray-600'
|
|
};
|
|
|
|
console.log(`📝 創建虛擬應用: ${team.name}...`);
|
|
|
|
try {
|
|
const response = await fetch('http://localhost:3000/api/apps', {
|
|
method: 'POST',
|
|
headers: {
|
|
'Content-Type': 'application/json',
|
|
},
|
|
body: JSON.stringify(virtualAppData)
|
|
});
|
|
|
|
const data = await response.json();
|
|
|
|
if (data.success) {
|
|
console.log(`✅ 虛擬應用創建成功: ${data.app?.id || '未知ID'}`);
|
|
} else {
|
|
console.log(`⚠️ 虛擬應用創建失敗: ${data.message}`);
|
|
}
|
|
} catch (error) {
|
|
console.log(`❌ 創建虛擬應用時出錯: ${error.message}`);
|
|
}
|
|
}
|
|
|
|
console.log('\n✅ 虛擬應用記錄創建完成!');
|
|
|
|
} catch (error) {
|
|
console.error('❌ 創建虛擬應用失敗:', error.message);
|
|
console.log('\n💡 提示: 請確保開發服務器正在運行 (npm run dev)');
|
|
}
|
|
}
|
|
|
|
// 執行創建
|
|
createVirtualAppsViaAPI();
|