// This is your Prisma schema file, // learn more about it in the docs: https://pris.ly/d/prisma-schema generator client { provider = "prisma-client-js" } datasource db { provider = "postgresql" url = env("DATABASE_URL") } model User { id String @id @default(cuid()) username String @unique nomor String @unique active Boolean @default(true) createdAt DateTime? @default(now()) updatedAt DateTime? @updatedAt MasterUserRole MasterUserRole @relation(fields: [masterUserRoleId], references: [id]) masterUserRoleId String @default("1") UserSession UserSession? Profile Profile? Investasi Investasi[] // Investor Investor[] TransaksiInvestasi TransaksiInvestasi[] } model MasterUserRole { id String @id name String active Boolean @default(true) createdAt DateTime? @default(now()) updatedAt DateTime? @updatedAt User User[] } model UserSession { id String @id @default(cuid()) token String expires DateTime active Boolean @default(true) createdAt DateTime @default(now()) updatedAt DateTime @default(now()) @updatedAt User User @relation(fields: [userId], references: [id]) userId String @unique } model Profile { id String @id @default(cuid()) name String email String @unique alamat String jenisKelamin String active Boolean @default(true) createdAt DateTime @default(now()) updatedAt DateTime @default(now()) @updatedAt User User? @relation(fields: [userId], references: [id]) userId String? @unique ImageProfile Images? @relation(fields: [imagesId], references: [id]) imagesId String? @unique Katalog Katalog[] } model Images { id String @id @default(cuid()) url String active Boolean @default(true) createdAt DateTime @default(now()) updatedAt DateTime @default(now()) @updatedAt Profile Profile? Investasi Investasi? BeritaInvestasi BeritaInvestasi[] } model Katalog { id String @id @default(cuid()) namaBisnis String alamatKantor String tlpn String deskripsi String active Boolean @default(true) createdAt DateTime @default(now()) updatedAt DateTime @default(now()) @updatedAt Profile Profile? @relation(fields: [profileId], references: [id]) profileId String? MasterBidangBisnis MasterBidangBisnis @relation(fields: [masterBidangBisnisId], references: [id]) masterBidangBisnisId String } model MasterBidangBisnis { id String @id name String active Boolean @default(true) createdAt DateTime @default(now()) updatedAt DateTime @default(now()) @updatedAt Katalog Katalog[] } // -------------------- INVESTASI --------------------- // // Table investasi / saham model Investasi { id String @id @default(cuid()) title String targetDana String hargaLembar String totalLembar String roi String active Boolean @default(true) createdAt DateTime @default(now()) updatedAt DateTime @default(now()) @updatedAt author User? @relation(fields: [authorId], references: [id]) authorId String? catatan String? sisaLembar String lembarTerbeli String? @default("0") progress String? @default("0") MasterPeriodeDeviden MasterPeriodeDeviden? @relation(fields: [masterPeriodeDevidenId], references: [id]) masterPeriodeDevidenId String? MasterPembagianDeviden MasterPembagianDeviden? @relation(fields: [masterPembagianDevidenId], references: [id]) masterPembagianDevidenId String? MasterPencarianInvestor MasterPencarianInvestor? @relation(fields: [masterPencarianInvestorId], references: [id]) masterPencarianInvestorId String? ImageInvestasi Images? @relation(fields: [imagesId], references: [id]) imagesId String? @unique ProspektusInvestasi ProspektusInvestasi? MasterStatusInvestasi MasterStatusInvestasi? @relation(fields: [masterStatusInvestasiId], references: [id]) masterStatusInvestasiId String? @default("2") BeritaInvestasi BeritaInvestasi[] DokumenInvestasi DokumenInvestasi[] // Investor Investor[] TransaksiInvestasi TransaksiInvestasi[] } model MasterPencarianInvestor { id String @id @default(cuid()) name String active Boolean @default(true) createdAt DateTime @default(now()) updatedAt DateTime @default(now()) @updatedAt investasi Investasi[] } model MasterPeriodeDeviden { id String @id @default(cuid()) name String active Boolean @default(true) createdAt DateTime @default(now()) updatedAt DateTime @default(now()) @updatedAt investasi Investasi[] } model MasterPembagianDeviden { id String @id @default(cuid()) name String active Boolean @default(true) createdAt DateTime @default(now()) updatedAt DateTime @default(now()) @updatedAt investasi Investasi[] } model MasterStatusInvestasi { id String @id @default(cuid()) name String color String active Boolean @default(true) createdAt DateTime @default(now()) updatedAt DateTime @default(now()) @updatedAt investasi Investasi[] } model ProspektusInvestasi { id String @id @default(cuid()) url String active Boolean @default(true) createdAt DateTime @default(now()) updatedAt DateTime @default(now()) @updatedAt investasi Investasi? @relation(fields: [investasiId], references: [id]) investasiId String? @unique } model DokumenInvestasi { id String @id @default(cuid()) title String url String active Boolean @default(true) createdAt DateTime @default(now()) updatedAt DateTime @default(now()) @updatedAt investasi Investasi? @relation(fields: [investasiId], references: [id]) investasiId String? } model BeritaInvestasi { id String @id @default(cuid()) title String deskripsi String active Boolean @default(true) createdAt DateTime @default(now()) updatedAt DateTime @updatedAt ImageBerita Images? @relation(fields: [imagesId], references: [id]) imagesId String? investasi Investasi @relation(fields: [investasiId], references: [id]) investasiId String } model MasterBank { id String @id @default(cuid()) name String norek String active Boolean @default(true) createdAt DateTime @default(now()) updatedAt DateTime @updatedAt } model TransaksiInvestasi { id String @id @default(cuid()) Investasi Investasi? @relation(fields: [investasiId], references: [id]) investasiId String? Author User? @relation(fields: [authorId], references: [id]) authorId String? namaBank String nomorRekening String lembarTerbeli String totalTransfer String active Boolean @default(true) createdAt DateTime @default(now()) updatedAt DateTime @updatedAt MasterStatusTransaksiInvestasi MasterStatusTransaksiInvestasi? @relation(fields: [masterStatusTransaksiInvestasiId], references: [id]) masterStatusTransaksiInvestasiId String? @default("1") } model MasterStatusTransaksiInvestasi { id String @id @default(cuid()) name String color String? active Boolean @default(true) createdAt DateTime @default(now()) updatedAt DateTime @updatedAt TransaksiInvestasi TransaksiInvestasi[] } // model Investor { // id String @id @default(cuid()) // totalBeli String // jumlahLembar String // active Boolean @default(true) // createdAt DateTime @default(now()) // updatedAt DateTime @updatedAt // Investasi Investasi? @relation(fields: [investasiId], references: [id]) // investasiId String? // User User? @relation(fields: [userId], references: [id]) // userId String? // }