// 测试报名API的脚本 const axios = require('axios'); const API_URL = 'http://localhost:8080/api/graphql'; // 测试获取活动列表 async function testGetActivities() { console.log('🔍 测试获取活动列表...'); try { const response = await axios.post(API_URL, { query: ` query { allActivities { id name signupDeadline state } } ` }, { headers: { 'Content-Type': 'application/json' } }); console.log('✅ 活动列表获取成功:'); console.log(JSON.stringify(response.data, null, 2)); return response.data.data.allActivities; } catch (error) { console.error('❌ 获取活动列表失败:', error.response?.data || error.message); return []; } } // 测试报名API async function testRegistration(activityId) { console.log(`🚀 测试报名API (活动ID: ${activityId})...`); try { const response = await axios.post(API_URL, { query: ` mutation { submitActivityRegistration(input: { activityId: "${activityId}", playerInfo: { name: "测试学员${Date.now()}", phone: "138${String(Date.now()).slice(-8)}", gender: 1, education: "本科", introduction: "这是一个测试报名", description: "测试描述" }, regionId: "1", description: "测试报名描述", mediaFiles: [] }) { success message registrationId } } ` }, { headers: { 'Content-Type': 'application/json' } }); console.log('✅ 报名API调用成功:'); console.log(JSON.stringify(response.data, null, 2)); return response.data.data.submitActivityRegistration; } catch (error) { console.error('❌ 报名API调用失败:', error.response?.data || error.message); return null; } } // 主测试函数 async function runTests() { console.log('🎯 开始测试报名API功能...\n'); // 1. 获取活动列表 const activities = await testGetActivities(); console.log('\n' + '='.repeat(50) + '\n'); if (activities.length === 0) { console.log('⚠️ 没有找到可用的活动,无法测试报名功能'); return; } // 2. 使用第一个活动进行报名测试 const firstActivity = activities[0]; console.log(`📝 使用活动 "${firstActivity.name}" (ID: ${firstActivity.id}) 进行报名测试`); const registrationResult = await testRegistration(firstActivity.id); console.log('\n' + '='.repeat(50) + '\n'); if (registrationResult && registrationResult.success) { console.log('🎉 报名功能测试成功!'); console.log(`📋 报名ID: ${registrationResult.registrationId}`); } else { console.log('❌ 报名功能测试失败'); if (registrationResult && registrationResult.message) { console.log(`错误信息: ${registrationResult.message}`); } } } // 运行测试 runTests().catch(console.error);