hospital-log/backend/api/prisma/schema.prisma
2025-10-21 17:42:59 +07:00

77 lines
3.1 KiB
Plaintext

generator client {
provider = "prisma-client-js"
output = "../dist/generated/prisma"
}
datasource db {
provider = "postgresql"
url = env("DATABASE_URL")
}
model blockchain_log_queue {
id BigInt @id @default(autoincrement())
status String @default("PENDING") @db.VarChar(20)
event String @db.VarChar(50)
user_id BigInt?
created_at DateTime? @default(now()) @db.Timestamptz(6)
payload Json?
processed_at DateTime? @db.Timestamptz(6)
users users? @relation(fields: [user_id], references: [id], onUpdate: NoAction, map: "fk_log_user")
}
model pemberian_obat {
id Int @id @default(autoincrement())
id_visit Int
obat String @db.VarChar(100)
jumlah_obat Int
aturan_pakai String?
rekam_medis rekam_medis @relation(fields: [id_visit], references: [id_visit], onDelete: Cascade, onUpdate: NoAction, map: "fk_pemberian_obat_visit")
}
model pemberian_tindakan {
id Int @id @default(autoincrement())
id_visit Int
tindakan String @db.VarChar(100)
kategori_tindakan String? @db.VarChar(50)
kelompok_tindakan String? @db.VarChar(50)
rekam_medis rekam_medis @relation(fields: [id_visit], references: [id_visit], onDelete: Cascade, onUpdate: NoAction, map: "fk_tindakan_visit")
}
model rekam_medis {
id_visit Int @id @default(autoincrement())
waktu_visit DateTime @db.Timestamp(6)
no_rm String @db.VarChar(20)
nama_pasien String @db.VarChar(100)
umur Int?
jenis_kelamin String? @db.VarChar(10)
gol_darah String? @db.VarChar(3)
pekerjaan String? @db.VarChar(100)
suku String? @db.VarChar(100)
kode_diagnosa String? @db.VarChar(20)
diagnosa String?
anamnese String?
sistolik Int?
diastolik Int?
nadi Int?
suhu Decimal? @db.Decimal(4, 1)
nafas Int?
tinggi_badan Decimal? @db.Decimal(5, 2)
berat_badan Decimal? @db.Decimal(5, 2)
jenis_kasus String? @db.VarChar(50)
tindak_lanjut String?
pemberian_obat pemberian_obat[]
pemberian_tindakan pemberian_tindakan[]
}
/// This table contains check constraints and requires additional setup for migrations. Visit https://pris.ly/d/check-constraints for more info.
model users {
id BigInt @id @default(autoincrement())
nama_lengkap String @db.VarChar(255)
username String @unique @db.VarChar(255)
password_hash String @db.VarChar(255)
role String? @default("user") @db.VarChar(50)
created_at DateTime? @default(now()) @db.Timestamptz(6)
updated_at DateTime? @default(now()) @db.Timestamptz(6)
blockchain_log_queue blockchain_log_queue[]
}