1390 lines
49 KiB
Plaintext
1390 lines
49 KiB
Plaintext
generator client {
|
|
provider = "prisma-client-js"
|
|
}
|
|
|
|
datasource db {
|
|
provider = "postgresql"
|
|
url = env("DATABASE_URL")
|
|
}
|
|
|
|
model Layanan {
|
|
id String @id @default(cuid())
|
|
name String @unique
|
|
}
|
|
|
|
model Potensi {
|
|
id String @id @default(cuid())
|
|
name String @unique
|
|
}
|
|
|
|
model LandingPage_Layanan {
|
|
id String @id @default(cuid())
|
|
deksripsi String
|
|
}
|
|
|
|
// ========================================= APPMENU ========================================= //
|
|
model AppMenu {
|
|
id String @id @default(cuid())
|
|
name String @unique
|
|
link String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
AppMenuChild AppMenuChild[]
|
|
}
|
|
|
|
// ========================================= APPMENUCHILD ========================================= //
|
|
model AppMenuChild {
|
|
id String @id @default(cuid())
|
|
name String @unique
|
|
link String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
AppMenu AppMenu? @relation(fields: [appMenuId], references: [id])
|
|
appMenuId String?
|
|
}
|
|
|
|
// ========================================= FILE STORAGE ========================================= //
|
|
|
|
model FileStorage {
|
|
id String @id @default(cuid())
|
|
name String @unique
|
|
realName String
|
|
path String
|
|
mimeType String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime?
|
|
isActive Boolean @default(true)
|
|
link String
|
|
Berita Berita[]
|
|
PotensiDesa PotensiDesa[]
|
|
Posyandu Posyandu[]
|
|
StrukturPPID StrukturPPID[]
|
|
GalleryFoto GalleryFoto[]
|
|
PelayananSuratKeterangan PelayananSuratKeterangan[]
|
|
Penghargaan Penghargaan[]
|
|
ProfileDesaImage ProfileDesaImage[]
|
|
ProfilePPID ProfilePPID[]
|
|
ProfilPerbekel ProfilPerbekel[]
|
|
Puskesmas Puskesmas[]
|
|
ProgramKesehatan ProgramKesehatan[]
|
|
PenangananDarurat PenangananDarurat[]
|
|
KontakDarurat KontakDarurat[]
|
|
|
|
InfoWabahPenyakit InfoWabahPenyakit[]
|
|
|
|
KeamananLingkungan KeamananLingkungan[]
|
|
|
|
MenuTipsKeamanan MenuTipsKeamanan[]
|
|
|
|
Pelapor Pelapor[]
|
|
|
|
PasarDesa PasarDesa[]
|
|
|
|
KontakDaruratKeamanan KontakDaruratKeamanan[]
|
|
|
|
KontakItem KontakItem[]
|
|
|
|
Pegawai Pegawai[]
|
|
|
|
DesaDigital DesaDigital[]
|
|
|
|
KolaborasiInovasi KolaborasiInovasi[]
|
|
|
|
InfoTekno InfoTekno[]
|
|
}
|
|
|
|
//========================================= MENU PPID ========================================= //
|
|
|
|
//========================================= STRUKTUR PPID ========================================= //
|
|
model StrukturPPID {
|
|
id String @id @default(cuid())
|
|
name String @db.Text
|
|
image FileStorage? @relation(fields: [imageId], references: [id])
|
|
imageId String?
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
// ========================================= VISI MISI PPID ========================================= //
|
|
model VisiMisiPPID {
|
|
id String @id @default(cuid())
|
|
visi String @db.Text
|
|
misi String @db.Text
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
// ========================================= DASAR HUKUM PPID ========================================= //
|
|
model DasarHukumPPID {
|
|
id String @id @default(cuid())
|
|
judul String @db.Text
|
|
content String @db.Text
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
// ========================================= PROFILE PPID ========================================= //
|
|
model ProfilePPID {
|
|
id String @id @default(cuid())
|
|
name String @db.Text
|
|
biodata String @db.Text
|
|
riwayat String @db.Text
|
|
pengalaman String @db.Text
|
|
unggulan String @db.Text
|
|
imageUrl String?
|
|
image FileStorage? @relation(fields: [imageId], references: [id])
|
|
imageId String?
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
// ========================================= DAFTAR INFORMASI PUBLIK ========================================= //
|
|
model DaftarInformasiPublik {
|
|
id String @id @default(cuid())
|
|
jenisInformasi String
|
|
deskripsi String
|
|
tanggal DateTime @db.Date
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
//=========================================PERMOHONAN INFORMASI PUBLIK========================= //
|
|
model PermohonanInformasiPublik {
|
|
id String @id @default(cuid())
|
|
nomor Int @default(autoincrement())
|
|
name String
|
|
nik String
|
|
notelp String
|
|
alamat String
|
|
email String
|
|
jenisInformasiDiminta JenisInformasiDiminta? @relation(fields: [jenisInformasiDimintaId], references: [id])
|
|
jenisInformasiDimintaId String?
|
|
caraMemperolehInformasi CaraMemperolehInformasi? @relation(fields: [caraMemperolehInformasiId], references: [id])
|
|
caraMemperolehInformasiId String?
|
|
caraMemperolehSalinanInformasi CaraMemperolehSalinanInformasi? @relation(fields: [caraMemperolehSalinanInformasiId], references: [id])
|
|
caraMemperolehSalinanInformasiId String?
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
model JenisInformasiDiminta {
|
|
id String @id @default(cuid())
|
|
name String @unique
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
PermohonanInformasiPublik PermohonanInformasiPublik[]
|
|
}
|
|
|
|
model CaraMemperolehInformasi {
|
|
id String @id @default(cuid())
|
|
name String @unique
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
PermohonanInformasiPublik PermohonanInformasiPublik[]
|
|
}
|
|
|
|
model CaraMemperolehSalinanInformasi {
|
|
id String @id @default(cuid())
|
|
name String @unique
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
PermohonanInformasiPublik PermohonanInformasiPublik[]
|
|
}
|
|
|
|
//=========================================PERMOHONAN INFORMASI KEBERATAN PUBLIK========================= //
|
|
model FormulirPermohonanKeberatan {
|
|
id String @id @default(cuid())
|
|
name String
|
|
email String
|
|
notelp String
|
|
alasan String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
// ========================================= IKM ========================================= //
|
|
model IndeksKepuasanMasyarakat {
|
|
id String @id @default(cuid())
|
|
label String
|
|
kepuasan String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
model GrafikBerdasarkanJenisKelamin {
|
|
id String @id @default(cuid())
|
|
perempuan String
|
|
laki String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
model GrafikBerdasarkanResponden {
|
|
id String @id @default(cuid())
|
|
sangatbaik String
|
|
baik String
|
|
kurangbaik String
|
|
tidakbaik String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
model GrafikBerdasarkanUmur {
|
|
id String @id @default(cuid())
|
|
remaja String
|
|
dewasa String
|
|
orangtua String
|
|
lansia String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
// ========================================= MENU DESA ========================================= //
|
|
// ========================================= PROFILE DESA ========================================= //
|
|
model SejarahDesa {
|
|
id String @id @default(cuid())
|
|
judul String @db.Text
|
|
deskripsi String @db.Text
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
model VisiMisiDesa {
|
|
id String @id @default(cuid())
|
|
visi String @db.Text
|
|
misi String @db.Text
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
model LambangDesa {
|
|
id String @id @default(cuid())
|
|
judul String
|
|
deskripsi String @db.Text
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
model MaskotDesa {
|
|
id String @id @default(cuid())
|
|
judul String
|
|
deskripsi String @db.Text
|
|
images ProfileDesaImage[]
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
model ProfileDesaImage {
|
|
id String @id @default(cuid())
|
|
label String
|
|
image FileStorage @relation(fields: [imageId], references: [id])
|
|
imageId String
|
|
MaskotDesa MaskotDesa @relation(fields: [maskotDesaId], references: [id])
|
|
maskotDesaId String
|
|
}
|
|
|
|
model ProfilPerbekel {
|
|
id String @id @default(cuid())
|
|
biodata String @db.Text
|
|
pengalaman String @db.Text
|
|
pengalamanOrganisasi String @db.Text
|
|
programUnggulan String @db.Text
|
|
image FileStorage? @relation(fields: [imageId], references: [id])
|
|
imageId String?
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
// ========================================= BERITA ========================================= //
|
|
model Berita {
|
|
id String @id @default(cuid())
|
|
judul String
|
|
deskripsi String
|
|
image FileStorage @relation(fields: [imageId], references: [id])
|
|
imageId String
|
|
content String @db.Text
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
kategoriBerita KategoriBerita? @relation(fields: [kategoriBeritaId], references: [id])
|
|
kategoriBeritaId String?
|
|
}
|
|
|
|
model KategoriBerita {
|
|
id String @id @default(cuid())
|
|
name String @unique
|
|
beritas Berita[]
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
// ========================================= POTENSI DESA ========================================= //
|
|
model PotensiDesa {
|
|
id String @id @default(cuid())
|
|
name String
|
|
deskripsi String
|
|
kategori String
|
|
image FileStorage @relation(fields: [imageId], references: [id])
|
|
imageId String
|
|
content String @db.Text
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
// ========================================= PENGUMUMAN ========================================= //
|
|
model Pengumuman {
|
|
id String @id @default(cuid())
|
|
judul String
|
|
deskripsi String
|
|
content String @db.Text
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
CategoryPengumuman CategoryPengumuman? @relation(fields: [categoryPengumumanId], references: [id])
|
|
categoryPengumumanId String?
|
|
}
|
|
|
|
model CategoryPengumuman {
|
|
id String @id @default(cuid())
|
|
name String @unique
|
|
pengumumans Pengumuman[]
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
// ========================================= GALLERY ========================================= //
|
|
model GalleryFoto {
|
|
id String @id @default(cuid())
|
|
name String
|
|
deskripsi String @db.Text
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
imagesId String? @unique
|
|
imageGalleryFoto FileStorage? @relation(fields: [imagesId], references: [id])
|
|
}
|
|
|
|
model GalleryVideo {
|
|
id String @id @default(cuid())
|
|
name String
|
|
deskripsi String @db.Text
|
|
linkVideo String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
// ========================================= LAYANAN DESA ========================================= //
|
|
model PelayananSuratKeterangan {
|
|
id String @id @default(cuid())
|
|
name String
|
|
deskripsi String @db.Text
|
|
image FileStorage @relation(fields: [imageId], references: [id])
|
|
imageId String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
model PelayananTelunjukSaktiDesa {
|
|
id String @id @default(cuid())
|
|
name String
|
|
deskripsi String @db.Text
|
|
link String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
model PelayananPerizinanBerusaha {
|
|
id String @id @default(cuid())
|
|
name String
|
|
deskripsi String @db.Text
|
|
link String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
model PelayananPendudukNonPermanen {
|
|
id String @id @default(cuid())
|
|
name String
|
|
deskripsi String @db.Text
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
// ========================================= PENGHARGAAN ========================================= //
|
|
model Penghargaan {
|
|
id String @id @default(cuid())
|
|
name String
|
|
juara String
|
|
deskripsi String @db.Text
|
|
image FileStorage @relation(fields: [imageId], references: [id])
|
|
imageId String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
// ========================================= MENU KESEHATAN ========================================= //
|
|
// ========================================= DATA KESEHATAN WARGA ========================================= //
|
|
|
|
// ========================================= FASILITAS KESEHATAN ========================================= //
|
|
model FasilitasKesehatan {
|
|
id String @id @default(cuid())
|
|
name String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
informasiumum InformasiUmum @relation(fields: [informasiUmumId], references: [id])
|
|
informasiUmumId String
|
|
layananunggulan LayananUnggulan @relation(fields: [layananUnggulanId], references: [id])
|
|
layananUnggulanId String
|
|
dokterdantenagamedis DokterdanTenagaMedis @relation(fields: [dokterdanTenagaMedisId], references: [id])
|
|
dokterdanTenagaMedisId String
|
|
fasilitaspendukung FasilitasPendukung @relation(fields: [fasilitasPendukungId], references: [id])
|
|
fasilitasPendukungId String
|
|
prosedurpendaftaran ProsedurPendaftaran @relation(fields: [prosedurPendaftaranId], references: [id])
|
|
prosedurPendaftaranId String
|
|
tarifdanlayanan TarifDanLayanan @relation(fields: [tarifDanLayananId], references: [id])
|
|
tarifDanLayananId String
|
|
}
|
|
|
|
model InformasiUmum {
|
|
id String @id @default(cuid())
|
|
fasilitas String
|
|
alamat String
|
|
jamOperasional String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
FasilitasKesehatan FasilitasKesehatan[]
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
model LayananUnggulan {
|
|
id String @id @default(cuid())
|
|
content String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
FasilitasKesehatan FasilitasKesehatan[]
|
|
}
|
|
|
|
model DokterdanTenagaMedis {
|
|
id String @id @default(cuid())
|
|
name String
|
|
specialist String
|
|
jadwal String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
FasilitasKesehatan FasilitasKesehatan[]
|
|
}
|
|
|
|
model FasilitasPendukung {
|
|
id String @id @default(cuid())
|
|
content String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
FasilitasKesehatan FasilitasKesehatan[]
|
|
}
|
|
|
|
model ProsedurPendaftaran {
|
|
id String @id @default(cuid())
|
|
content String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
FasilitasKesehatan FasilitasKesehatan[]
|
|
}
|
|
|
|
model TarifDanLayanan {
|
|
id String @id @default(cuid())
|
|
layanan String
|
|
tarif String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
FasilitasKesehatan FasilitasKesehatan[]
|
|
}
|
|
|
|
// ========================================= JADWAL KEGIATAN ========================================= //
|
|
model JadwalKegiatan {
|
|
id String @id @default(cuid())
|
|
content String
|
|
informasijadwalkegiatan InformasiJadwalKegiatan @relation(fields: [informasiJadwalKegiatanId], references: [id])
|
|
informasiJadwalKegiatanId String
|
|
deskripsijadwalkegiatan DeskripsiJadwalKegiatan @relation(fields: [deskripsiJadwalKegiatanId], references: [id])
|
|
deskripsiJadwalKegiatanId String
|
|
layananjadwalkegiatan LayananJadwalKegiatan @relation(fields: [layananJadwalKegiatanId], references: [id])
|
|
layananJadwalKegiatanId String
|
|
syaratketentuanjadwalkegiatan SyaratKetentuanJadwalKegiatan @relation(fields: [syaratKetentuanJadwalKegiatanId], references: [id])
|
|
syaratKetentuanJadwalKegiatanId String
|
|
dokumenjadwalkegiatan DokumenJadwalKegiatan @relation(fields: [dokumenJadwalKegiatanId], references: [id])
|
|
dokumenJadwalKegiatanId String
|
|
pendaftaranjadwalkegiatan PendaftaranJadwalKegiatan @relation(fields: [pendaftaranJadwalKegiatanId], references: [id])
|
|
pendaftaranJadwalKegiatanId String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
model InformasiJadwalKegiatan {
|
|
id String @id @default(cuid())
|
|
name String
|
|
tanggal String
|
|
waktu String
|
|
lokasi String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
JadwalKegiatan JadwalKegiatan[]
|
|
}
|
|
|
|
model DeskripsiJadwalKegiatan {
|
|
id String @id @default(cuid())
|
|
deskripsi String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
JadwalKegiatan JadwalKegiatan[]
|
|
}
|
|
|
|
model LayananJadwalKegiatan {
|
|
id String @id @default(cuid())
|
|
content String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
|
|
JadwalKegiatan JadwalKegiatan[]
|
|
}
|
|
|
|
model SyaratKetentuanJadwalKegiatan {
|
|
id String @id @default(cuid())
|
|
content String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
|
|
JadwalKegiatan JadwalKegiatan[]
|
|
}
|
|
|
|
model DokumenJadwalKegiatan {
|
|
id String @id @default(cuid())
|
|
content String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
JadwalKegiatan JadwalKegiatan[]
|
|
}
|
|
|
|
model PendaftaranJadwalKegiatan {
|
|
id String @id @default(cuid())
|
|
name String
|
|
tanggal String
|
|
namaOrangtua String
|
|
nomor String
|
|
alamat String
|
|
catatan String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
JadwalKegiatan JadwalKegiatan[]
|
|
}
|
|
|
|
// ========================================= PERSENTASE KELAHIRAN & KEMATIAN ========================================= //
|
|
model DataKematian_Kelahiran {
|
|
id String @id @default(cuid())
|
|
tahun String
|
|
kematianKasar String
|
|
kematianBayi String
|
|
kelahiranKasar String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
// ========================================= GRAFIK KEPUASAN ========================================= //
|
|
model GrafikKepuasan {
|
|
id String @id @default(cuid())
|
|
label String
|
|
jumlah String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
// ========================================= ARTIKEL KESEHATAN ========================================= //
|
|
model ArtikelKesehatan {
|
|
id String @id @default(cuid())
|
|
title String
|
|
content String
|
|
introduction Introduction @relation(fields: [introductionId], references: [id])
|
|
introductionId String
|
|
symptom Symptom @relation(fields: [symptomId], references: [id])
|
|
symptomId String
|
|
prevention Prevention @relation(fields: [preventionId], references: [id])
|
|
preventionId String
|
|
firstaid FirstAid @relation(fields: [firstAidId], references: [id])
|
|
firstAidId String
|
|
mythvsfact MythVsFact @relation(fields: [mythVsFactId], references: [id])
|
|
mythVsFactId String
|
|
doctorsign DoctorSign @relation(fields: [doctorSignId], references: [id])
|
|
doctorSignId String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
model Introduction {
|
|
id String @id @default(cuid())
|
|
content String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
ArtikelKesehatan ArtikelKesehatan[]
|
|
}
|
|
|
|
model Symptom {
|
|
id String @id @default(cuid())
|
|
title String
|
|
content String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
ArtikelKesehatan ArtikelKesehatan[]
|
|
}
|
|
|
|
model Prevention {
|
|
id String @id @default(cuid())
|
|
title String
|
|
content String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
|
|
ArtikelKesehatan ArtikelKesehatan[]
|
|
}
|
|
|
|
model FirstAid {
|
|
id String @id @default(cuid())
|
|
title String
|
|
content String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
|
|
ArtikelKesehatan ArtikelKesehatan[]
|
|
}
|
|
|
|
model MythVsFact {
|
|
id String @id @default(cuid())
|
|
title String
|
|
mitos String
|
|
fakta String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
|
|
ArtikelKesehatan ArtikelKesehatan[]
|
|
}
|
|
|
|
model DoctorSign {
|
|
id String @id @default(cuid())
|
|
content String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
|
|
ArtikelKesehatan ArtikelKesehatan[]
|
|
}
|
|
|
|
// ========================================= POSYANDU ========================================= //
|
|
model Posyandu {
|
|
id String @id @default(cuid())
|
|
name String
|
|
nomor String
|
|
deskripsi String
|
|
image FileStorage @relation(fields: [imageId], references: [id])
|
|
imageId String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
// ========================================= PUSKESMAS ========================================= //
|
|
model Puskesmas {
|
|
id String @id @default(cuid())
|
|
name String
|
|
alamat String
|
|
jam JamOperasional @relation(fields: [jamId], references: [id])
|
|
jamId String
|
|
image FileStorage @relation(fields: [imageId], references: [id])
|
|
imageId String
|
|
kontak KontakPuskesmas @relation(fields: [kontakId], references: [id])
|
|
kontakId String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
model JamOperasional {
|
|
id String @id @default(cuid())
|
|
workDays String
|
|
weekDays String
|
|
holiday String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
Puskesmas Puskesmas[]
|
|
}
|
|
|
|
model KontakPuskesmas {
|
|
id String @id @default(cuid())
|
|
kontakPuskesmas String
|
|
email String
|
|
facebook String
|
|
kontakUGD String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
Puskesmas Puskesmas[]
|
|
}
|
|
|
|
// ========================================= PROGRAM KESSEHATAN ========================================= //
|
|
model ProgramKesehatan {
|
|
id String @id @default(cuid())
|
|
name String
|
|
deskripsiSingkat String
|
|
deskripsi String
|
|
image FileStorage @relation(fields: [imageId], references: [id])
|
|
imageId String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
// ========================================= PENANGANAN DARURAT ========================================= //
|
|
model PenangananDarurat {
|
|
id String @id @default(cuid())
|
|
name String
|
|
deskripsi String
|
|
image FileStorage @relation(fields: [imageId], references: [id])
|
|
imageId String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
// ========================================= KONTAK DARURAT ========================================= //
|
|
model KontakDarurat {
|
|
id String @id @default(cuid())
|
|
name String
|
|
deskripsi String
|
|
image FileStorage @relation(fields: [imageId], references: [id])
|
|
imageId String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
// ========================================= INFO WABAH PENYAKIT ========================================= //
|
|
model InfoWabahPenyakit {
|
|
id String @id @default(cuid())
|
|
name String
|
|
deskripsiSingkat String
|
|
deskripsiLengkap String
|
|
image FileStorage @relation(fields: [imageId], references: [id])
|
|
imageId String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
// ========================================= MENU KEAMANAN ========================================= //
|
|
// ========================================= KEAMANAN LINGKUNGAN ========================================= //
|
|
model KeamananLingkungan {
|
|
id String @id @default(cuid())
|
|
name String @db.Text
|
|
deskripsi String @db.Text
|
|
image FileStorage? @relation(fields: [imageId], references: [id])
|
|
imageId String?
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
// ========================================= POLSEK TERDEKAT ========================================= //
|
|
model PolsekTerdekat {
|
|
id String @id @default(uuid())
|
|
nama String
|
|
jarakKeDesa String
|
|
alamat String
|
|
nomorTelepon String
|
|
jamOperasional String
|
|
embedMapUrl String
|
|
namaTempatMaps String
|
|
alamatMaps String
|
|
linkPetunjukArah String
|
|
layananPolsek LayananPolsek @relation(fields: [layananPolsekId], references: [id])
|
|
layananPolsekId String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
model LayananPolsek {
|
|
id String @id @default(uuid())
|
|
nama String // contoh: "Pelayanan SKCK", "Laporan Kriminal"
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime?
|
|
isActive Boolean @default(true)
|
|
PolsekTerdekat PolsekTerdekat[]
|
|
}
|
|
|
|
// ========================================= KONTAK DARURAT ========================================= //
|
|
model KontakDaruratKeamanan {
|
|
id String @id @default(uuid())
|
|
nama String // contoh: "Layanan Darurat", "Fasilitas Kesehatan"
|
|
image FileStorage? @relation(fields: [imageId], references: [id])
|
|
imageId String?
|
|
kontakItems KontakItem[]
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
}
|
|
|
|
model KontakItem {
|
|
id String @id @default(uuid())
|
|
nama String // contoh: "Polisi", "Ambulans", "Puskesmas Darmasaba"
|
|
nomorTelepon String
|
|
image FileStorage? @relation(fields: [imageId], references: [id])
|
|
imageId String?
|
|
kategori KontakDaruratKeamanan @relation(fields: [kategoriId], references: [id])
|
|
kategoriId String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
}
|
|
|
|
// ========================================= PENCEGAHAN KRIMINALITAS ========================================= //
|
|
model PencegahanKriminalitas {
|
|
id String @id @default(cuid())
|
|
programKeamanan ProgramKeamanan @relation(fields: [programKeamananId], references: [id])
|
|
programKeamananId String
|
|
tipsKeamanan TipsKeamanan @relation(fields: [tipsKeamananId], references: [id])
|
|
tipsKeamananId String
|
|
videoKeamanan VideoKeamanan @relation(fields: [videoKeamananId], references: [id])
|
|
videoKeamananId String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
model ProgramKeamanan {
|
|
id String @id @default(cuid())
|
|
nama String // contoh: "Ronda Malam"
|
|
deskripsi String? // jika mau tambahkan info detail
|
|
slug String @unique
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
PencegahanKriminalitas PencegahanKriminalitas[]
|
|
}
|
|
|
|
model TipsKeamanan {
|
|
id String @id @default(cuid())
|
|
judul String
|
|
konten String
|
|
slug String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
PencegahanKriminalitas PencegahanKriminalitas[]
|
|
}
|
|
|
|
model VideoKeamanan {
|
|
id String @id @default(cuid())
|
|
judul String
|
|
deskripsi String?
|
|
videoUrl String // link youtube atau embed url
|
|
slug String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
PencegahanKriminalitas PencegahanKriminalitas[]
|
|
}
|
|
|
|
// ========================================= LAPORAN PUBLIK ========================================= //
|
|
model LaporanPublik {
|
|
id String @id @default(cuid())
|
|
judul String
|
|
lokasi String
|
|
tanggalWaktu DateTime
|
|
status StatusLaporan
|
|
penanganan PenangananLaporanPublik[]
|
|
kronologi String? // Optional, bisa diisi detail kronologi
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
}
|
|
|
|
model PenangananLaporanPublik {
|
|
id String @id @default(cuid())
|
|
laporanId String
|
|
deskripsi String
|
|
laporan LaporanPublik @relation(fields: [laporanId], references: [id], onDelete: Cascade)
|
|
}
|
|
|
|
enum StatusLaporan {
|
|
Selesai
|
|
Proses
|
|
Gagal
|
|
}
|
|
|
|
model Pelapor {
|
|
id String @id @default(cuid())
|
|
nama String
|
|
alamat String
|
|
nomorTelepon String
|
|
image FileStorage @relation(fields: [imageId], references: [id])
|
|
imageId String
|
|
}
|
|
|
|
// ========================================= TIPS KEAMANAN ========================================= //
|
|
model MenuTipsKeamanan {
|
|
id String @id @default(cuid())
|
|
judul String
|
|
deskripsi String
|
|
image FileStorage? @relation(fields: [imageId], references: [id])
|
|
imageId String?
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
// ========================================= MENU EKONOMI ========================================= //
|
|
// ========================================= PASAR DESA ========================================= //
|
|
model PasarDesa {
|
|
id String @id @default(uuid())
|
|
nama String
|
|
image FileStorage? @relation(fields: [imageId], references: [id])
|
|
imageId String?
|
|
harga Int
|
|
rating Float
|
|
alamatUsaha String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
kategoriProduk KategoriProduk @relation(fields: [kategoriProdukId], references: [id])
|
|
kategoriProdukId String
|
|
KategoriToPasar KategoriToPasar[]
|
|
}
|
|
|
|
model KategoriProduk {
|
|
id String @id @default(uuid())
|
|
nama String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
KategoriToPasar KategoriToPasar[]
|
|
PasarDesa PasarDesa[]
|
|
}
|
|
|
|
model KategoriToPasar {
|
|
id String @id @default(uuid())
|
|
kategori KategoriProduk @relation(fields: [kategoriId], references: [id])
|
|
kategoriId String
|
|
pasarDesa PasarDesa @relation(fields: [pasarDesaId], references: [id])
|
|
pasarDesaId String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
// ========================================= LOWONGAN KERJA LOKAL ========================================= //
|
|
model LowonganPekerjaan {
|
|
id String @id @default(uuid())
|
|
posisi String
|
|
namaPerusahaan String
|
|
lokasi String
|
|
tipePekerjaan String
|
|
gaji String
|
|
deskripsi String
|
|
kualifikasi String
|
|
tanggalPosting DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
}
|
|
|
|
// ========================================= STRUKTUR ORGANISASI ========================================= //
|
|
|
|
model PosisiOrganisasi {
|
|
id String @id @default(uuid()) @db.VarChar(50)
|
|
nama String @db.VarChar(100)
|
|
deskripsi String? @db.Text
|
|
hierarki Int
|
|
|
|
pegawai Pegawai[]
|
|
strukturOrganisasi StrukturOrganisasi[] // Relasi balik
|
|
|
|
@@map("posisi_organisasi")
|
|
}
|
|
|
|
model Pegawai {
|
|
id String @id @default(uuid()) @db.Uuid
|
|
namaLengkap String @db.VarChar(255)
|
|
gelarAkademik String? @db.VarChar(100)
|
|
image FileStorage? @relation(fields: [imageId], references: [id])
|
|
imageId String?
|
|
tanggalMasuk DateTime? @db.Date
|
|
email String? @unique @db.VarChar(255)
|
|
telepon String? @db.VarChar(20)
|
|
alamat String? @db.Text
|
|
posisiId String @db.VarChar(50)
|
|
isActive Boolean @default(true)
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
|
|
posisi PosisiOrganisasi @relation(fields: [posisiId], references: [id])
|
|
|
|
sebagaiAtasan HubunganOrganisasi[] @relation("AtasanToBawahan")
|
|
sebagaiBawahan HubunganOrganisasi[] @relation("BawahanToAtasan")
|
|
|
|
strukturOrganisasi StrukturOrganisasi[] // Relasi balik
|
|
|
|
@@map("pegawai")
|
|
}
|
|
|
|
model HubunganOrganisasi {
|
|
id String @id @default(uuid()) @db.Uuid
|
|
atasanId String @db.Uuid
|
|
bawahanId String @db.Uuid
|
|
tipe String? @db.VarChar(50)
|
|
|
|
atasan Pegawai @relation("AtasanToBawahan", fields: [atasanId], references: [id])
|
|
bawahan Pegawai @relation("BawahanToAtasan", fields: [bawahanId], references: [id])
|
|
|
|
strukturOrganisasi StrukturOrganisasi[] // Relasi balik
|
|
|
|
@@unique([atasanId, bawahanId])
|
|
@@map("hubungan_organisasi")
|
|
}
|
|
|
|
model StrukturOrganisasi {
|
|
id String @id @default(uuid())
|
|
posisiOrganisasiId String @db.VarChar(50)
|
|
pegawaiId String @db.Uuid
|
|
hubunganOrganisasiId String @db.Uuid
|
|
|
|
posisiOrganisasi PosisiOrganisasi @relation(fields: [posisiOrganisasiId], references: [id])
|
|
pegawai Pegawai @relation(fields: [pegawaiId], references: [id])
|
|
hubunganOrganisasi HubunganOrganisasi @relation(fields: [hubunganOrganisasiId], references: [id])
|
|
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime?
|
|
isActive Boolean @default(true)
|
|
|
|
@@map("struktur_organisasi")
|
|
}
|
|
|
|
// ========================================= PROGRAM KEMISKINAN ========================================= //
|
|
model ProgramKemiskinan {
|
|
id String @id @default(uuid())
|
|
nama String
|
|
deskripsi String
|
|
ikonUrl String?
|
|
isActive Boolean @default(true)
|
|
statistikId String? @unique
|
|
statistik StatistikKemiskinan? @relation(fields: [statistikId], references: [id])
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
}
|
|
|
|
model StatistikKemiskinan {
|
|
id String @id @default(uuid())
|
|
tahun Int @unique
|
|
jumlah Int
|
|
programKemiskinan ProgramKemiskinan?
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
}
|
|
|
|
// ========================================= JUMLAH PENDUDUK USIA KERJA YANG MENGANGGUR ========================================= //
|
|
model GrafikMenganggurBerdasarkanUsia {
|
|
id String @id @default(cuid())
|
|
usia18_25 String
|
|
usia26_35 String
|
|
usia36_45 String
|
|
usia46_keatas String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
model GrafikMenganggurBerdasarkanPendidikan {
|
|
id String @id @default(cuid())
|
|
SD String
|
|
SMP String
|
|
SMA String
|
|
D3 String
|
|
S1 String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
// ========================================= JUMLAH PENDUDUK MISKIN ========================================= //
|
|
model GrafikJumlahPendudukMiskin {
|
|
id String @id @default(uuid()) @db.Uuid // Menggunakan UUID sebagai primary key
|
|
year Int @unique // Tahun data (e.g., 2024, 2025)
|
|
totalPoorPopulation Int // Jumlah penduduk miskin (e.g., 4800000)
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
// ========================================= SEKTOR UNGGULAN DESA ========================================= //
|
|
model SektorUnggulanDesa {
|
|
id String @id @default(uuid()) @db.Uuid // Menggunakan UUID sebagai primary key
|
|
name String @unique @db.VarChar(100) // Nama sektor (e.g., "Sektor Pertanian", "Sektor Peternakan")
|
|
description String? @db.Text // Deskripsi lengkap tentang sektor
|
|
value Float? // Nilai kuantitatif sektor (misalnya, kontribusi PDB, jumlah produksi, dll.)
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
// ========================================= DEMOGRAFI PEKERJAAN ========================================= //
|
|
model DataDemografiPekerjaan {
|
|
id String @id @default(cuid())
|
|
pekerjaan String
|
|
lakiLaki Int
|
|
perempuan Int
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
// ========================================= JUMLAH PENGANGGURAN ========================================= //
|
|
model DetailDataPengangguran {
|
|
id String @id @default(uuid()) @db.Uuid
|
|
month String @db.VarChar(20)
|
|
year Int
|
|
totalUnemployment Int
|
|
educatedUnemployment Int
|
|
uneducatedUnemployment Int
|
|
percentageChange Float?
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
|
|
@@unique([month, year])
|
|
}
|
|
|
|
// ========================================= PADESA PENDAPATAN ASLI DESA ========================================= //
|
|
model ApbDesa {
|
|
id String @id @default(uuid())
|
|
tahun Int
|
|
pembiayaan Pembiayaan[] @relation("ApbDesaPembiayaan")
|
|
belanja Belanja[] @relation("ApbDesaBelanja")
|
|
pendapatan Pendapatan[] @relation("ApbDesaPendapatan")
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
model Pendapatan {
|
|
id String @id @default(uuid())
|
|
name String
|
|
value Int
|
|
ApbDesa ApbDesa[] @relation("ApbDesaPendapatan")
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
model Belanja {
|
|
id String @id @default(uuid())
|
|
name String
|
|
value Int
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
ApbDesa ApbDesa[] @relation("ApbDesaBelanja")
|
|
}
|
|
|
|
model Pembiayaan {
|
|
id String @id @default(uuid())
|
|
name String
|
|
value Int
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
ApbDesa ApbDesa[] @relation("ApbDesaPembiayaan")
|
|
}
|
|
|
|
// ========================================= INOVASI ========================================= //
|
|
// ========================================= DESA DIGITAL / SMART VILLAGE ========================================= //
|
|
model DesaDigital {
|
|
id String @id @default(cuid())
|
|
name String
|
|
deskripsi String @db.Text
|
|
image FileStorage @relation(fields: [imageId], references: [id])
|
|
imageId String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
// ========================================= PROGRAM KREATIF ========================================= //
|
|
model ProgramKreatif {
|
|
id String @id @default(cuid())
|
|
name String
|
|
slug String @db.Text //deskripsi singkat
|
|
deskripsi String @db.Text //deskripsi panjang
|
|
icon String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
// ========================================= KOLABORASI INOVASI ========================================= //
|
|
model KolaborasiInovasi {
|
|
id String @id @default(cuid())
|
|
name String
|
|
tahun Int
|
|
slug String @db.Text //deskripsi singkat
|
|
deskripsi String @db.Text //deskripsi panjang
|
|
kolaborator String
|
|
image FileStorage @relation(fields: [imageId], references: [id])
|
|
imageId String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|
|
|
|
// ========================================= INFO TEKHNOLOGI TEPAT GUNA ========================================= //
|
|
model InfoTekno {
|
|
id String @id @default(cuid())
|
|
name String
|
|
deskripsi String @db.Text
|
|
image FileStorage @relation(fields: [imageId], references: [id])
|
|
imageId String
|
|
createdAt DateTime @default(now())
|
|
updatedAt DateTime @updatedAt
|
|
deletedAt DateTime @default(now())
|
|
isActive Boolean @default(true)
|
|
}
|