| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- const { PrismaClient } = require('@prisma/client');
- const prisma = new PrismaClient();
- async function checkAudioStatus() {
- const bookId = 5;
-
- // 查找已完成内容的小节
- const subsections = await prisma.bookChapter.findMany({
- where: {
- bookId,
- level: 3,
- contentStatus: 'completed'
- },
- select: {
- id: true,
- title: true,
- wordCount: true,
- audioUrl: true,
- audioDuration: true,
- },
- orderBy: { id: 'asc' },
- take: 10
- });
-
- console.log('\n Book 5 小节音频生成状态检查:\n');
- console.log('=' .repeat(80));
-
- const withAudio = subsections.filter(s => s.audioUrl);
- const withoutAudio = subsections.filter(s => !s.audioUrl);
-
- console.log(`\n✅ 已有音频的小节:${withAudio.length}个`);
- withAudio.forEach((sub, index) => {
- console.log(` ${index + 1}. ${sub.title} (${sub.wordCount}字, ${sub.audioDuration || 0}秒)`);
- });
-
- console.log(`\n❌ 未生成音频的小节:${withoutAudio.length}个`);
- withoutAudio.slice(0, 5).forEach((sub, index) => {
- console.log(` ${index + 1}. ${sub.title} (${sub.wordCount}字)`);
- });
- if (withoutAudio.length > 5) {
- console.log(` ... 还有${withoutAudio.length - 5}个`);
- }
-
- console.log('\n' + '='.repeat(80));
-
- // 检查audio表
- const audioRecords = await prisma.audio.count({
- where: { bookId }
- });
-
- console.log(`\n📊 Audio表记录数: ${audioRecords}`);
-
- await prisma.$disconnect();
- }
- checkAudioStatus().catch(console.error);
|