import { PrismaClient } from '@prisma/client'; const prisma = new PrismaClient(); async function main() { console.log('🔍 检查 IIT 和 ASL 模块的数据\n'); console.log('=' .repeat(60)); // IIT 模块 console.log('\n📋 IIT 模块 (iit_schema):\n'); const iitTables = [ { name: 'projects', query: 'SELECT COUNT(*) as count FROM iit_schema.projects' }, { name: 'audit_logs', query: 'SELECT COUNT(*) as count FROM iit_schema.audit_logs' }, { name: 'pending_actions', query: 'SELECT COUNT(*) as count FROM iit_schema.pending_actions' }, { name: 'task_runs', query: 'SELECT COUNT(*) as count FROM iit_schema.task_runs' }, { name: 'user_mappings', query: 'SELECT COUNT(*) as count FROM iit_schema.user_mappings' }, ]; for (const t of iitTables) { const result: any = await prisma.$queryRawUnsafe(t.query); const count = Number(result[0].count); console.log(` ${t.name}: ${count} 条记录 ${count > 0 ? '✅' : '(空)'}`); } // 如果有数据,显示一些详情 const iitProjects: any[] = await prisma.$queryRaw`SELECT id, name, status, created_at FROM iit_schema.projects LIMIT 5`; if (iitProjects.length > 0) { console.log('\n 最近的 IIT 项目:'); iitProjects.forEach(p => console.log(` - ${p.name} (${p.status}) @ ${p.created_at}`)); } // ASL 模块(智能文献筛选) console.log('\n\n📋 ASL 模块 - 智能文献筛选 (asl_schema):\n'); const aslTables = [ { name: 'screening_projects', query: 'SELECT COUNT(*) as count FROM asl_schema.screening_projects' }, { name: 'literatures', query: 'SELECT COUNT(*) as count FROM asl_schema.literatures' }, { name: 'screening_tasks', query: 'SELECT COUNT(*) as count FROM asl_schema.screening_tasks' }, { name: 'screening_results', query: 'SELECT COUNT(*) as count FROM asl_schema.screening_results' }, { name: 'fulltext_screening_tasks', query: 'SELECT COUNT(*) as count FROM asl_schema.fulltext_screening_tasks' }, { name: 'fulltext_screening_results', query: 'SELECT COUNT(*) as count FROM asl_schema.fulltext_screening_results' }, ]; for (const t of aslTables) { const result: any = await prisma.$queryRawUnsafe(t.query); const count = Number(result[0].count); console.log(` ${t.name}: ${count} 条记录 ${count > 0 ? '✅' : '(空)'}`); } // 如果有数据,显示一些详情 const aslProjects: any[] = await prisma.$queryRaw`SELECT id, project_name, status, created_at FROM asl_schema.screening_projects LIMIT 5`; if (aslProjects.length > 0) { console.log('\n 最近的 ASL 项目:'); aslProjects.forEach(p => console.log(` - ${p.project_name} (${p.status}) @ ${p.created_at}`)); } const literatures: any[] = await prisma.$queryRaw`SELECT id, title, stage FROM asl_schema.literatures LIMIT 5`; if (literatures.length > 0) { console.log('\n 最近的文献:'); literatures.forEach(l => console.log(` - ${l.title?.substring(0, 50)}... (${l.stage})`)); } console.log('\n' + '=' .repeat(60)); } main() .catch(console.error) .finally(() => prisma.$disconnect());