/** * 脚本:更新课程的封面图片 * * 使用方法: * npx ts-node scripts/update-course-cover.ts */ import prisma from '../src/utils/prisma'; async function updateCourseCover() { try { console.log('🚀 开始更新课程封面...\n'); // 更新"高效沟通的艺术"课程的封面 const courseId = 'course_vertical_001'; const coverImage = 'images/a0c457c5-4a4c-4cd1-9d17-641e400ab875.PNG'; console.log(`📖 更新课程: ${courseId}`); console.log(` - 封面: ${coverImage}`); const course = await prisma.course.findUnique({ where: { id: courseId }, select: { id: true, title: true, coverImage: true }, }); if (!course) { console.error(`❌ 课程不存在: ${courseId}`); return; } console.log(` - 当前标题: ${course.title}`); console.log(` - 当前封面: ${course.coverImage || 'null'}`); // 更新封面 const updatedCourse = await prisma.course.update({ where: { id: courseId }, data: { coverImage }, select: { id: true, title: true, coverImage: true }, }); console.log(`\n✅ 更新成功!`); console.log(` - 课程: ${updatedCourse.title}`); console.log(` - 新封面: ${updatedCourse.coverImage}`); } catch (error) { console.error('❌ 更新失败:', error); throw error; } finally { await prisma.$disconnect(); } } // 执行更新 updateCourseCover() .then(() => { console.log('\n✅ 脚本执行完成'); process.exit(0); }) .catch((error) => { console.error('\n❌ 脚本执行失败:', error); process.exit(1); });