/** * 测试创建项目接口 */ const axios = require('axios'); const API_BASE_URL = 'http://localhost:5351'; async function testCreateProject() { try { console.log('🚀 开始测试创建项目接口...\n'); // 1. 先登录获取token console.log('1. 登录获取认证token...'); const loginResponse = await axios.post(`${API_BASE_URL}/api/auth/login`, { username: 'admin', password: 'Admin123456' }); if (!loginResponse.data.success) { throw new Error('登录失败: ' + loginResponse.data.message); } const token = loginResponse.data.data.token; console.log('✅ 登录成功,获取到token\n'); // 2. 测试创建项目 console.log('2. 测试创建新项目...'); const newProject = { name: '测试项目_' + new Date().getTime(), status: 'supervision', farmName: '测试养殖场', supervisionObject: '牛', supervisionQuantity: 100, supervisionPeriod: '12个月', supervisionAmount: 500000.00, startTime: '2024-01-01', endTime: '2024-12-31', earTag: 50, collar: 30, host: 20, loanOfficer: '张专员', description: '这是一个测试项目,用于验证创建接口功能' }; const createResponse = await axios.post(`${API_BASE_URL}/api/projects`, newProject, { headers: { 'Authorization': `Bearer ${token}`, 'Content-Type': 'application/json' } }); if (createResponse.data.success) { console.log('✅ 项目创建成功!'); console.log('📋 创建的项目信息:'); console.log(` - 项目ID: ${createResponse.data.data.id}`); console.log(` - 项目名称: ${createResponse.data.data.name}`); console.log(` - 养殖场: ${createResponse.data.data.farmName}`); console.log(` - 监管对象: ${createResponse.data.data.supervisionObject}`); console.log(` - 监管数量: ${createResponse.data.data.supervisionQuantity}`); console.log(` - 监管金额: ${createResponse.data.data.supervisionAmount}元`); console.log(` - 贷款专员: ${createResponse.data.data.loanOfficer}`); console.log(` - 创建时间: ${createResponse.data.data.createdAt}`); } else { console.log('❌ 项目创建失败:', createResponse.data.message); } // 3. 验证项目是否在列表中 console.log('\n3. 验证项目是否在列表中...'); const listResponse = await axios.get(`${API_BASE_URL}/api/projects`, { headers: { 'Authorization': `Bearer ${token}` } }); if (listResponse.data.success) { const projects = listResponse.data.data.projects; const createdProject = projects.find(p => p.name === newProject.name); if (createdProject) { console.log('✅ 项目已成功添加到列表中'); console.log(`📊 当前总项目数: ${projects.length}`); } else { console.log('❌ 项目未在列表中找到'); } } } catch (error) { console.error('❌ 测试失败:', error.message); if (error.response) { console.error('响应数据:', error.response.data); } } } // 运行测试 testCreateProject();