generator client { provider = "prisma-client-js" output = "./node_modules/@prisma/client" } datasource db { provider = "postgresql" url = "postgresql://postgres:gEJIfovgvDAroHhqRiKhYVvrkn2OqXfF3tw8xJmnvw7JhrZgN24pTD9iWMIUIUL6@prasi.avolut.com:8741/kig-bank" } model access { access_id String @id @default(dbgenerated("gen_random_uuid()")) @db.Uuid user_id String @db.Uuid access_type String @db.VarChar(50) access_value String is_created Boolean @default(false) is_updated Boolean @default(false) is_deleted Boolean @default(false) is_active Boolean @default(true) created_at DateTime @default(now()) @db.Timestamptz(6) updated_at DateTime @default(now()) @db.Timestamptz(6) read_only Boolean @default(true) users users @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction) @@unique([user_id, access_type]) } model activity_logs { log_id String @id @default(dbgenerated("gen_random_uuid()")) @db.Uuid user_id String @db.Uuid action String @db.VarChar(100) status String @db.VarChar(50) message String? extra_json Json? created_at DateTime @default(now()) @db.Timestamptz(6) users users @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction) } model auth_logs { log_id String @id @default(dbgenerated("gen_random_uuid()")) @db.Uuid user_id String @db.Uuid action String @db.VarChar(100) status String @db.VarChar(50) message String? extra_json Json? created_at DateTime @default(now()) @db.Timestamptz(6) users users @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction) } model banks { bank_id String @id @default(dbgenerated("gen_random_uuid()")) @db.Uuid code String @unique @db.VarChar(50) name String @db.VarChar(150) is_active Boolean @default(true) created_at DateTime @default(now()) @db.Timestamptz(6) updated_at DateTime @default(now()) @db.Timestamptz(6) users users[] } model dashboards { dashboard_id String @id @default(dbgenerated("gen_random_uuid()")) @db.Uuid user_id String @db.Uuid title String @db.VarChar(150) value Decimal @db.Decimal(20, 2) date DateTime @default(now()) @db.Timestamptz(6) is_active Boolean @default(true) created_at DateTime @default(now()) @db.Timestamptz(6) updated_at DateTime @default(now()) @db.Timestamptz(6) users users @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction) } model parameters { parameter_id String @id @default(dbgenerated("gen_random_uuid()")) @db.Uuid user_id String @db.Uuid param_key String @db.VarChar(100) param_value String is_active Boolean @default(true) created_at DateTime @default(now()) @db.Timestamptz(6) updated_at DateTime @default(now()) @db.Timestamptz(6) users users @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction) @@unique([user_id, param_key]) } model sessions { session_id String @id @default(dbgenerated("gen_random_uuid()")) @db.Uuid user_id String @db.Uuid token_hash String @db.VarChar(128) expires_at DateTime? @db.Timestamptz(6) is_revoked Boolean @default(false) created_at DateTime @default(now()) @db.Timestamptz(6) updated_at DateTime @default(now()) @db.Timestamptz(6) users users @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction) @@index([token_hash]) @@index([user_id]) } model tenants { tenant_id String @id @default(dbgenerated("gen_random_uuid()")) @db.Uuid code String @unique @db.VarChar(50) name String @db.VarChar(150) is_active Boolean @default(true) created_at DateTime @default(now()) @db.Timestamptz(6) updated_at DateTime @default(now()) @db.Timestamptz(6) users users? } model user_access { access_id String @id @default(dbgenerated("gen_random_uuid()")) @db.Uuid user_id String @db.Uuid access_type String @db.VarChar(50) access_value String is_active Boolean @default(true) created_at DateTime @default(now()) @db.Timestamptz(6) updated_at DateTime @default(now()) @db.Timestamptz(6) users users @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction) @@unique([user_id, access_type]) } model users { user_id String @id @default(dbgenerated("gen_random_uuid()")) @db.Uuid tenant_id String @unique @db.Uuid bank_id String @db.Uuid partnerserviceid String? client_id String? client_secret String? api_key String? api_secret String? username String? password String? token_access String? token_refresh String? token_expiry DateTime? @db.Timestamptz(6) extra_json Json? is_active Boolean @default(true) created_at DateTime @default(now()) @db.Timestamptz(6) db_id String? @db.Uuid last_login DateTime? @db.Timestamptz(6) updated_at DateTime @default(now()) @db.Timestamptz(6) access access[] activity_logs activity_logs[] auth_logs auth_logs[] dashboards dashboards[] parameters parameters[] sessions sessions[] user_access user_access[] banks banks @relation(fields: [bank_id], references: [bank_id], onDelete: NoAction, onUpdate: NoAction) database database? @relation(fields: [db_id], references: [db_id], onDelete: NoAction, onUpdate: NoAction) tenants tenants @relation(fields: [tenant_id], references: [tenant_id], onDelete: NoAction, onUpdate: NoAction) } model database { db_id String @id @default(dbgenerated("gen_random_uuid()")) @db.Uuid name String @unique @db.VarChar(100) host String @db.VarChar(100) port Int username String @db.VarChar(100) password String @db.VarChar(100) db_name String @db.VarChar(100) is_active Boolean @default(true) created_at DateTime @default(now()) @db.Timestamptz(6) updated_at DateTime @default(now()) @db.Timestamptz(6) users users[] }