portal-payment-fe/prisma/schema.prisma

167 lines
6.3 KiB
Plaintext

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[]
}