dev-admin.mjs 872 B

12345678910111213141516171819202122232425262728293031323334353637
  1. /**
  2. * DEV-ONLY: 将指定邮箱的用户提升为管理员
  3. * 用法:node scripts/dev-admin.mjs <email>
  4. * 示例:node scripts/dev-admin.mjs admin@dotouch.ai
  5. */
  6. import { PrismaClient } from '@prisma/client';
  7. async function main() {
  8. const email = process.argv[2];
  9. if (!email) {
  10. console.error('Usage: node scripts/dev-admin.mjs <email>');
  11. process.exit(1);
  12. }
  13. const prisma = new PrismaClient();
  14. try {
  15. const user = await prisma.user.findUnique({ where: { email } });
  16. if (!user) {
  17. console.error(`User not found: ${email}`);
  18. process.exit(1);
  19. }
  20. await prisma.user.update({
  21. where: { email },
  22. data: { role: 'admin' },
  23. });
  24. console.log(`✅ User ${email} promoted to admin (DEV-ONLY)`);
  25. await prisma.$disconnect();
  26. } catch (err) {
  27. console.error('Failed:', err);
  28. process.exit(1);
  29. }
  30. }
  31. main();