17. Skema Basis Data & Prisma ORM
Ringkasan
Layer basis data dikelola menggunakan Prisma ORM yang terhubung ke server MySQL.
Diagram Relasi Entitas (ERD)
mermaid
erDiagram
User ||--o{ Account : "memiliki"
User ||--o{ Session : "memiliki"
User }|--|| Role : "memiliki peran"
User ||--o{ AuditLog : "mencatat"
Role ||--o{ RolePermission : "memiliki izin"
Permission ||--o{ RolePermission : "dihubungkan ke"
User {
string id PK
string name
string email UK
string passwordHash
string salt
string roleId FK
datetime createdAt
}
Role {
string id PK
string name UK
string description
string color
}
Permission {
string id PK
string name UK
string description
string module
}
AppSettings {
string id PK
string appName
string primaryColor
boolean landingPageEnabled
}
AuditLog {
string id PK
string userId FK
string action
string module
string details
string ipAddress
datetime createdAt
}Berkas Terkait
prisma/schema.prisma — Definisi skema model database Prismaprisma/seed.ts — Script seeding data awal databasesrc/server/db.ts — Pembungkus Prisma Client instance