Arsitektur & database

Modular monolith. Rancangan — tabel belum dibuat.

Status backend: belum terhubung. Backend baru khusus ART (terpisah dari aplikasi AA utama) perlu diaktifkan sebelum login, penyimpanan, dan dokumen dapat berfungsi.

Domain tabel (dibuat bertahap per modul)

Identitas & akses

profilesorganizationsorganization_membersuser_rolesrole_permissionsconsent_records

Pasar properti

property_listingsproperty_land_detailsproperty_building_detailsproperty_price_historylisting_verifications

Kawasan & wilayah

housing_estatesdevelopershousing_unitsregional_amenitiesregional_data_sourceshousing_comparisonshousing_cost_estimates

Pembangunan

land_parcelsdesignsdesign_versionsproject_budgetsbudget_itemscontractorsworkerssuppliersmaterial_products

Proyek

projectsproject_membersmilestonesprogress_reportsinspectionsproject_documents

Pembiayaan (terpisah)

financing_applicationsbank_reviewsappraisalslegal_cases

Sistem

audit_logsnotificationscomplaints

Relasi utama

  • profiles 1—n user_roles (satu akun, banyak peran; izin per peran via role_permissions)
  • organizations 1—n organization_members n—1 profiles (akses dibatasi per organisasi)
  • property_listings 1—1 land/building_details · 1—n property_price_history (sumber + tanggal wajib)
  • housing_estates n—1 developers · 1—n housing_units
  • projects (nomor unik ART-…) 1—n milestones, progress_reports, inspections, project_documents, project_members
  • projects 1—n financing_applications 1—n bank_reviews (hanya institusi berwenang)
  • Semua aksi penting → audit_logs

Prinsip keamanan

  • RBAC dengan tabel peran terpisah; Row Level Security di semua tabel data pengguna/organisasi.
  • Dokumen sensitif di storage privat, diakses via signed URL berjangka.
  • Data pribadi, proyek, dan pembiayaan dipisah; persetujuan pengguna dicatat.
  • Tidak ada akses SLIK/OJK otomatis; tidak ada keputusan kredit otomatis.