flnxi-Wu/scripts/tools/check-user.js
WuYongJie f646b71813
Some checks failed
CI Check / check (push) Has been cancelled
chore: 初始化本地仓库并同步最近改动
2025-11-18 17:50:16 +08:00

94 lines
2.6 KiB
JavaScript

const { PrismaClient } = require('@prisma/client');
const prisma = new PrismaClient({
datasources: {
db: {
url: process.env.DATABASE_URL
}
}
});
async function main() {
try {
const email = '549727955-1@qq.com';
console.log('正在查找用户...');
console.log(`邮箱: ${email}`);
console.log('');
// 查找用户
const user = await prisma.user.findFirst({
where: {
email: email
}
});
if (!user) {
console.log('❌ 未找到该用户');
// 查找所有包含549727955的邮箱
console.log('');
console.log('查找所有包含549727955的邮箱:');
const similarUsers = await prisma.user.findMany({
where: {
email: {
contains: '549727955'
}
},
select: {
id: true,
email: true,
username: true,
role: true,
isActive: true,
department: true,
createdAt: true
}
});
if (similarUsers.length > 0) {
console.log(`找到 ${similarUsers.length} 个相关用户:`);
similarUsers.forEach((u, index) => {
console.log(`${index + 1}. 邮箱: ${u.email}, 用户名: ${u.username || '未设置'}, 角色: ${u.role}, 状态: ${u.isActive ? '激活' : '未激活'}, 部门: ${u.department || '未设置'}`);
});
} else {
console.log('未找到相关用户');
}
process.exit(1);
}
console.log('✅ 找到用户:');
console.log(` ID: ${user.id}`);
console.log(` 邮箱: ${user.email}`);
console.log(` 用户名: ${user.username || '未设置'}`);
console.log(` 角色: ${user.role}`);
console.log(` 状态: ${user.isActive ? '已激活' : '未激活'}`);
console.log(` 部门: ${user.department || '未设置'}`);
console.log(` 创建时间: ${user.createdAt}`);
console.log('');
// 检查所有用户数量
const totalUsers = await prisma.user.count();
const activeUsers = await prisma.user.count({ where: { isActive: true } });
const inactiveUsers = await prisma.user.count({ where: { isActive: false } });
console.log('数据库用户统计:');
console.log(` 总用户数: ${totalUsers}`);
console.log(` 已激活: ${activeUsers}`);
console.log(` 未激活: ${inactiveUsers}`);
} catch (error) {
console.error('❌ 操作失败:', error.message);
if (error.meta) {
console.error('详细信息:', error.meta);
}
process.exit(1);
} finally {
await prisma.$disconnect();
}
}
main();