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[] } //========================================= 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 String 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[] LayananUnggulan LayananUnggulan[] DokterdanTenagaMedis DokterdanTenagaMedis[] FasilitasPendukung FasilitasPendukung[] ProsedurPendaftaran ProsedurPendaftaran[] TarifDanLayanan TarifDanLayanan[] } model InformasiUmum { id String @id @default(cuid()) fasilitas String alamat String jamOperasional String FasilitasKesehatan FasilitasKesehatan[] createdAt DateTime @default(now()) updatedAt DateTime @updatedAt deletedAt DateTime @default(now()) 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 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) } model DeskripsiJadwalKegiatan { id String @id @default(cuid()) deskripsi String createdAt DateTime @default(now()) updatedAt DateTime @updatedAt deletedAt DateTime @default(now()) isActive Boolean @default(true) } model LayananJadwalKegiatan { id String @id @default(cuid()) content String createdAt DateTime @default(now()) updatedAt DateTime @updatedAt deletedAt DateTime @default(now()) isActive Boolean @default(true) } model SyaratKetentuanJadwalKegiatan { id String @id @default(cuid()) content String createdAt DateTime @default(now()) updatedAt DateTime @updatedAt deletedAt DateTime @default(now()) isActive Boolean @default(true) } model DokumenJadwalKegiatan { id String @id @default(cuid()) content String createdAt DateTime @default(now()) updatedAt DateTime @updatedAt deletedAt DateTime @default(now()) isActive Boolean @default(true) } 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) } // ========================================= PERSENTASE KELAHIRAN & KEMATIAN ========================================= // model DataKematian_Kelahiran { id Int @id @default(autoincrement()) 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 Int @id @default(autoincrement()) label String jumlah String createdAt DateTime @default(now()) updatedAt DateTime @updatedAt deletedAt DateTime @default(now()) isActive Boolean @default(true) } // ========================================= ARTIKEL KESEHATAN ========================================= // model ArtikelKesehatan { id Int @id @default(autoincrement()) title String content String createdAt DateTime @default(now()) updatedAt DateTime @updatedAt deletedAt DateTime @default(now()) isActive Boolean @default(true) } model Introduction { id Int @id @default(autoincrement()) content String createdAt DateTime @default(now()) updatedAt DateTime @updatedAt deletedAt DateTime @default(now()) isActive Boolean @default(true) } model Symptom { id Int @id @default(autoincrement()) title String content String createdAt DateTime @default(now()) updatedAt DateTime @updatedAt deletedAt DateTime @default(now()) isActive Boolean @default(true) } model Prevention { id Int @id @default(autoincrement()) title String content String createdAt DateTime @default(now()) updatedAt DateTime @updatedAt deletedAt DateTime @default(now()) isActive Boolean @default(true) } model FirstAid { id Int @id @default(autoincrement()) title String content String createdAt DateTime @default(now()) updatedAt DateTime @updatedAt deletedAt DateTime @default(now()) isActive Boolean @default(true) } model MythVsFact { id Int @id @default(autoincrement()) title String mitos String fakta String createdAt DateTime @default(now()) updatedAt DateTime @updatedAt deletedAt DateTime @default(now()) isActive Boolean @default(true) } model DoctorSign { id Int @id @default(autoincrement()) content String createdAt DateTime @default(now()) updatedAt DateTime @updatedAt deletedAt DateTime @default(now()) isActive Boolean @default(true) } // ========================================= 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) }