This commit is contained in:
@@ -121,16 +121,29 @@ async function createRandomUsers(count = 100) {
|
||||
|
||||
const createdUsers = [];
|
||||
for (let i = 0; i < count; i++) {
|
||||
// 닉네임을 결정론적으로 생성해 재실행 시 중복 생성 방지
|
||||
const nickname = `user${String(i + 1).padStart(3, "0")}`;
|
||||
const existing = await prisma.user.findUnique({ where: { nickname } });
|
||||
// 고정 ID: user001, user002, ...
|
||||
const userId = `user${String(i + 1).padStart(3, "0")}`;
|
||||
const existing = await prisma.user.findUnique({ where: { userId } });
|
||||
let user = existing;
|
||||
if (!existing) {
|
||||
const name = generateRandomKoreanName();
|
||||
const birth = randomDate(1975, 2005);
|
||||
const phone = await findAvailablePhone(i + 2); // admin이 0001 사용하므로 겹치지 않도록 오프셋
|
||||
// 닉네임: 중복 없는 랜덤 한글 생성
|
||||
let nickname = generateRandomKoreanName();
|
||||
for (let tries = 0; tries < 10; tries++) {
|
||||
const dup = await prisma.user.findUnique({ where: { nickname } });
|
||||
if (!dup) break;
|
||||
nickname = generateRandomKoreanName();
|
||||
}
|
||||
// 그래도 중복이면 희귀 조합 한 번 더 시도
|
||||
const finalDup = await prisma.user.findUnique({ where: { nickname } });
|
||||
if (finalDup) {
|
||||
nickname = generateRandomKoreanName();
|
||||
}
|
||||
user = await prisma.user.create({
|
||||
data: {
|
||||
userId,
|
||||
nickname,
|
||||
name,
|
||||
birth,
|
||||
@@ -247,6 +260,7 @@ async function upsertAdmin() {
|
||||
level: 200,
|
||||
},
|
||||
create: {
|
||||
userId: "admin",
|
||||
nickname: "admin",
|
||||
name: "Administrator",
|
||||
birth: new Date("1990-01-01"),
|
||||
|
||||
Reference in New Issue
Block a user