Lewati ke isi

Domain: Governance Yayasan & Executive Analytics

SSOT untuk surface governance yayasan, dashboard eksekutif, dan analitik lintas unit yang berada di atas domain akademik, keuangan, dan SDM.

Last verified: 2026-04-01


1. Visi & Best Practice

1.1 Regulasi / Standar Acuan

Standar / kebutuhan Relevansi
Tata kelola yayasan / operator multi-unit Ringkasan kinerja lintas sekolah atau unit
Transparansi BOS/RKAS dan laporan keuangan Kebutuhan governance untuk sekolah negeri dan operator besar
Akreditasi dan evaluasi mutu internal Ringkasan akademik, attendance, dan policy dashboard
Prinsip least-privilege Role yayasan melihat agregat, bukan detail operasional yang tidak perlu

1.2 Kondisi Ideal

  • Role foundation_chairman melihat ringkasan lintas unit secara agregat, bukan detail operasional per transaksi/per pegawai.
  • Role provider-side seperti platform_operator berada di control plane /platform/*, bukan bercampur dengan role governance tenant/yayasan.
  • Governance dashboard memakai kontrak API eksplisit, bukan placeholder FE atau fallback dummy.
  • Packaging tetap enterprise-only di SC-FOUND, terpisah dari core launch wave.
  • Rollup BOS/RKAS, finance, HR, dan akademik memakai data yang sudah tervalidasi di domain sumber, bukan reimplementasi logika.

2. Arsitektur & Data Model

2.1 Backend Modules

Module Deskripsi
scola_core Role foundation_chairman, auth capability, foundation dashboard API
scola_account Sumber data laporan keuangan, budget, dan BOS untuk rollup governance
scola_hr, scola_payroll Sumber data pegawai dan biaya payroll agregat
Modul akademik / analytics Sumber statistik siswa, promotion policy, accreditation signal

2.2 Frontend Structure

src/router/foundationRoutes.js
src/views/Yayasan/
├── YayasanDashboard.vue
├── FoundationSectionPage.vue
└── foundationPageConfigs.js

src/services/foundation/foundation.service.js
src/views/AnalyticsManagement/Strategic/PromotionPolicyDashboard.vue

2.3 Kapabilitas

Capability Peran
analytics.foundation.view foundation_chairman
analytics.accreditation.view foundation_chairman
finance.budget.view Dipakai juga oleh surface budget governance yayasan

2.4 API Endpoints

Endpoint Method Deskripsi
/api/v1/foundation/dashboard POST Ringkasan dashboard yayasan
/api/v1/foundation/finance POST Ringkasan keuangan yayasan
/api/v1/foundation/performance POST Metrik performa sekolah/agregat
/api/v1/foundation/programs POST Program strategis
/api/v1/foundation/academic-governance (verify path) POST Direferensikan FE, tetapi route backend belum saya temukan via rg -n "academic-governance" ../scola-odoo-module/scola_core/controllers

3. Fitur & Status Implementasi

Fitur Status Catatan
Route dan menu yayasan terpisah ✅ Done foundationRoutes.js + menu registry foundation
Entitlement enterprise untuk governance yayasan ✅ Done scola_foundation_analytics sudah ada di FE/BE runtime gate
Visibilitas status provisioning SC-FOUND di surface tenant admin ✅ Done Halaman langganan tenant admin sekarang membedakan SKU yang sudah disetujui dari feature yang benar-benar aktif di runtime
Provider control plane terpisah dari tenant settings ✅ Done Workflow add-on/provider dipindahkan ke shell /platform/* dengan role platform_operator
Dashboard ringkasan yayasan ✅ Done /api/v1/foundation/dashboard + YayasanDashboard.vue
Ringkasan keuangan yayasan ✅ Done /api/v1/foundation/finance
Metrik performa yayasan ✅ Done /api/v1/foundation/performance
Program strategis ✅ Done /api/v1/foundation/programs
Budget governance di surface yayasan ✅ Done Route /foundation/finance/budget memakai capability finance.budget.view
Payroll/HR view agregat ✅ Done FE config menegaskan detail individu disembunyikan
Academic governance endpoint penuh ⚠️ Partial FE mereferensikan /api/v1/foundation/academic-governance, tetapi route backend belum tervalidasi
Benchmark lintas unit dan segmentasi akademik ⚠️ Partial foundationPageConfigs.js masih menyimpan warning placeholder untuk sebagian data

4. Gap Analysis & Backlog

P1 — Important

Gap Dampak Solusi
SKU SC-FOUND bisa sudah disetujui tetapi belum efektif jika module backend belum terpasang Tenant admin salah mengira feature governance sudah usable Pertahankan pemisahan status approved vs pending provisioning pada subscription workflow; jangan klaim aktif sebelum module terpasang
Endpoint academic-governance belum tervalidasi Risk 404/empty state untuk page governance akademik yayasan Verifikasi path backend; jika belum ada, implement sebagai backlog SC-FOUND pasca Phase 5
Sebagian page foundation masih placeholder/warning-driven Governance terlihat ada di FE tetapi belum sepenuhnya berbasis data kontraktual Tutup warning satu per satu setelah kontrak API disepakati
Boundary SC-FOUND masih deferred Sales dan engineering belum punya paket governance yang final Biarkan tetap deferred; finalisasi setelah Phase 4/5 launch-wave selesai

P2 — Nice to Have

Backlog Konteks Catatan
Benchmark multi-unit / multi-school Operator yayasan besar Kerjakan setelah sumber data lintas unit matang
Governance scorecard akreditasi yang lebih kaya Enterprise analytics Bergantung pada kontrak akademik dan compliance yang lebih stabil
Drill-down aman dari agregat ke summary unit Butuh analisa lintas sekolah Tetap jaga least-privilege, hindari bocor ke detail individu

5. File References

Frontend

  • src/router/foundationRoutes.js — route enterprise untuk yayasan
  • src/views/Yayasan/YayasanDashboard.vue — dashboard utama
  • src/views/Yayasan/FoundationSectionPage.vue — page shell per subdomain
  • src/views/Yayasan/foundationPageConfigs.js — config/warning per page governance
  • src/services/foundation/foundation.service.js — source API utama untuk surface yayasan

Backend

  • ../scola-odoo-module/scola_core/controllers/yayasan_dashboard_api.py — dashboard, finance, performance, programs
  • ../scola-odoo-module/scola_core/controllers/auth.py — capability/role foundation
  • ../scola-odoo-module/scola_core/models/res_company.py — entitlement scola_foundation_analytics
  • ../scola-odoo-module/scola_core/models/res_users.py — role foundation_chairman