require('dotenv').config(); const pool = require('./db'); async function initAdminEndpoints() { try { console.log('开始为 admin 账号初始化接口...\n'); // 模块名称到分类的映射 const moduleToCategory = { '组织接口API': '组织接口', '职位职务接口API': '职位职务接口', '人事接口API': '人事接口', '假勤接口API': '假勤接口', '薪酬接口API': '薪酬接口', '绩效接口API': '绩效接口' }; // 查询所有模板接口 const [templates] = await pool.query( 'SELECT * FROM endpoint_templates ORDER BY module, id' ); console.log(`共找到 ${templates.length} 条模板接口\n`); let successCount = 0; let errorCount = 0; for (const template of templates) { try { const category = moduleToCategory[template.module] || template.module; await pool.query( `INSERT INTO endpoints (user_id, name, category, module, api_code, user_name, url, method, body, description) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`, [ 'admin', template.name, '标品PP', // 接口类型固定为标品PP category, // 使用映射后的分类 template.api_code, template.user_name, template.url, template.method, template.body, template.description ] ); successCount++; console.log(`✓ [${category}] ${template.name}`); } catch (err) { errorCount++; console.error(`✗ 导入失败: ${template.name}`, err.message); } } console.log('\n========== 初始化完成 =========='); console.log(`成功: ${successCount} 条`); console.log(`失败: ${errorCount} 条`); process.exit(0); } catch (error) { console.error('初始化失败:', error); process.exit(1); } } initAdminEndpoints();