feat(seed): son 6 ayın örnek işlemleri ve 003 migration

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-11-05 03:23:30 +03:00
parent dcfa2f8c8d
commit 3acd71fd59
6 changed files with 530 additions and 5 deletions
+16 -2
View File
@@ -9,6 +9,7 @@ import { HouseholdModel } from "@/models/household";
import { HouseholdMemberModel } from "@/models/household-member";
import { storedEmail } from "@/shared/account-email";
import { runMigrations } from "../migrations";
import { seedTransactions } from "./transactions";
import {
ADMIN_USERNAME,
SEED_ACCOUNTS,
@@ -40,6 +41,7 @@ export type SeedSummary = {
memberships: number;
categories: number;
accounts: number;
transactions: number;
};
accounts: SeedAccountRow[];
};
@@ -93,7 +95,14 @@ export async function runSeed({
const db = getDb();
await connectMongoose();
const summary: SeedSummary = {
created: { users: 0, households: 0, memberships: 0, categories: 0, accounts: 0 },
created: {
users: 0,
households: 0,
memberships: 0,
categories: 0,
accounts: 0,
transactions: 0,
},
accounts: [],
};
@@ -246,7 +255,12 @@ export async function runSeed({
if (summary.created.categories) log(`✓ Varsayılan kategoriler: ${summary.created.categories}`);
if (summary.created.accounts) log(`✓ Örnek hesaplar: ${summary.created.accounts}`);
// 6) Geliştirme hesapları tablosu
// 6) Son 6 ayın örnek işlemleri (faker.seed(42), idempotent)
const userIdMap = new Map([...ids.entries()]);
summary.created.transactions = await seedTransactions(householdIds, userIdMap);
if (summary.created.transactions) log(`✓ Örnek işlemler: ${summary.created.transactions}`);
// 7) Geliştirme hesapları tablosu
const all = [
{ username: ADMIN_USERNAME, name: "Yönetici", email: adminEmail, role: "admin" as const },
...SEED_USERS,