Juklak & Juknis DapurHub

Versi: 1.0 Tanggal: 1 Agustus 2026 Klasifikasi: Internal

Daftar Isi

1. Latar Belakang

1.1 Konteks Permasalahan

Program penyediaan makanan bagi masyarakat melalui Dapur Mitra merupakan salah satu program strategis yang memerlukan pengawasan mutu dan kepatuhan (compliance) secara berkelanjutan. Dapur-dapur mitra yang tersebar di berbagai wilayah Indonesia harus memenuhi standar keamanan pangan, sanitasi, higienitas, dan prosedur operasional yang telah ditetapkan sesuai dengan Satuan Pelayanan Pemenuhan Gizi (SPPG).

Sebelum adanya sistem digital, proses audit kepatuhan dapur mitra dilakukan secara manual menggunakan formulir kertas, yang menimbulkan berbagai permasalahan:

NoPermasalahanDampak
1Pencatatan survei menggunakan formulir kertasData mudah hilang, sulit diarsipkan, dan rawan kesalahan input
2Tidak ada standarisasi penilaianSetiap surveyor memiliki interpretasi berbeda terhadap parameter audit
3Pelaporan memakan waktu lamaManajemen tidak dapat mengambil keputusan secara real-time
4Tindak lanjut temuan tidak terpantauTemuan ketidaksesuaian sering tidak ditindaklanjuti hingga tuntas
5Inventaris dapur tidak tercatat rapiAset dapur mitra sulit dilacak kondisi dan keberadaannya
6Logbook harian tidak terkontrolData distribusi makanan harian tidak terdokumentasi dengan baik
7Dokumen legalitas dapur sulit dipantauSertifikat BPOM, Halal, K3 yang kadaluarsa sering terlewat

1.2 Solusi yang Ditawarkan

DapurHub hadir sebagai solusi sistem informasi manajemen dan audit kepatuhan dapur mitra berbasis web yang mengintegrasikan seluruh proses pengelolaan dapur mitra ke dalam satu platform terpusat. Aplikasi ini dikembangkan untuk mendigitalisasi proses survei kesesuaian SPPG, manajemen inventaris, pencatatan logbook harian, pengelolaan dokumen legalitas, serta alur tindak lanjut temuan (Corrective Action).

1.3 Manfaat Strategis

  • Efisiensi Operasional: Mengurangi waktu audit dari hitungan hari menjadi hitungan jam melalui form survei digital dengan dukungan offline
  • Transparansi & Akuntabilitas: Setiap tindakan tercatat dalam log aktivitas yang dapat diaudit
  • Pengambilan Keputusan Berbasis Data: Dashboard analitik dengan compliance matrix, ranking, dan tren harian
  • Standardisasi Proses: Kategori survei dan parameter penilaian terstandarisasi untuk seluruh dapur mitra
  • Keamanan Data: Sistem login dan kontrol akses berdasarkan peran pengguna
  • Aksesibilitas: Mendukung akses offline dan dapat digunakan di perangkat mobile

2. Maksud dan Tujuan

2.1 Maksud

Dokumen Petunjuk Pelaksanaan (Juklak) dan Petunjuk Teknis (Juknis) ini disusun sebagai panduan resmi bagi seluruh pihak yang terlibat dalam penggunaan dan pengelolaan aplikasi DapurHub.

2.2 Tujuan

  1. Memberikan panduan komprehensif mengenai tata cara penggunaan aplikasi DapurHub bagi setiap level pengguna
  2. Menstandarisasi prosedur pelaksanaan survei, pencatatan logbook, dan manajemen inventaris
  3. Memastikan kepatuhan terhadap standar keamanan informasi dan perlindungan data
  4. Menyediakan referensi penyelesaian masalah umum yang ditemui pengguna

3. Ruang Lingkup

Dokumen ini mencakup seluruh aspek penggunaan aplikasi DapurHub oleh pengguna, meliputi:

  • Manajemen Dapur Mitra — Data Master Dapur, Tahap Progres, Foto & Layout, Koordinat GPS
  • Survei Kepatuhan SPPG — Form Survei Digital, Penilaian & Scoring, Grading Otomatis, Dukungan Offline
  • Tindak Lanjut Temuan — Corrective Action, Alur Perbaikan-Verifikasi, Upload Bukti
  • Logbook Harian — Pencatatan Distribusi, Jumlah Tray & Penerima, Menu Harian
  • Inventaris Dapur — Data Inventaris, Pencatatan Kondisi, Kategorisasi
  • Dokumen Legalitas — BPOM, Halal, K3, Pemantauan Kadaluarsa, Peringatan Otomatis
  • Pelaporan & Ekspor — Dashboard Analitik, Laporan Perbandingan, Ranking, Ekspor Excel & PDF
  • Administrasi Sistem — Manajemen Pengguna, Pengaturan Hak Akses, Backup Data, Pengaturan Kop Surat

Diagram Ruang Lingkup (Mindmap)

mindmap
  root((DapurHub))
    Manajemen Dapur Mitra
      Data Master Dapur
      Tahap Progres
      Foto & Layout
      Koordinat GPS
    Survei Kepatuhan SPPG
      Form Survei Digital
      Penilaian & Scoring
      Grading Otomatis
      Dukungan Offline
    Tindak Lanjut Temuan
      Corrective Action
      Workflow Resolve-Verify
      Evidence Upload
    Logbook Harian
      Pencatatan Distribusi
      Jumlah Tray & Penerima
      Menu Harian
    Inventaris Dapur
      Master Inventaris
      Pencatatan Kondisi
      Kategorisasi
    Dokumen Legalitas
      BPOM, Halal, K3
      Pemantauan Kadaluarsa
      Alert Otomatis
    Pelaporan & Ekspor
      Dashboard Analitik
      Comparison Report
      Ranking
      Export Excel & PDF
    Administrasi Sistem
      User Management
      Role & Permission
      Backup Database
      Pengaturan Kop Surat
                

4. Dasar Hukum & Acuan

NoDasar AcuanKeterangan
1Satuan Pelayanan Pemenuhan Gizi (SPPG)Standar utama parameter audit kepatuhan dapur mitra
2UU No. 18 Tahun 2012 tentang PanganRegulasi keamanan, mutu, dan gizi pangan
3PP No. 86 Tahun 2019 tentang Keamanan PanganPersyaratan keamanan pangan dalam produksi dan distribusi
4UU No. 27 Tahun 2022 tentang Perlindungan Data PribadiPerlindungan data pengguna dalam sistem informasi
5SOP Internal Pengelolaan Dapur MitraProsedur operasional standar organisasi

5. Definisi dan Istilah

IstilahDefinisi
DapurHubAplikasi manajemen dan audit kepatuhan dapur mitra berbasis web
Dapur MitraDapur yang dikelola oleh mitra untuk program distribusi makanan
SPPGSatuan Pelayanan Pemenuhan Gizi — satuan pelayanan yang menyelenggarakan pemenuhan gizi
Survei KesesuaianProses audit lapangan untuk menilai kepatuhan dapur mitra terhadap SPPG
Corrective Action (CA)Tindak lanjut perbaikan yang harus dilakukan terhadap temuan ketidaksesuaian
LogbookCatatan harian operasional dapur meliputi jumlah tray, penerima, dan menu
YayasanEntitas organisasi yang menaungi satu atau lebih dapur mitra
HubPusat informasi terpadu untuk satu dapur mitra (survei, inventaris, logbook, dokumen)
PIC (Person In Charge)Penanggung jawab operasional dapur mitra di lapangan
SurveyorPetugas yang melakukan survei kesesuaian
GradeTingkat kepatuhan dapur mitra: A (Sangat Baik), B (Baik), C (Cukup), D (Kurang)

6. Hak Akses Pengguna

6.1 Hierarki Peran

Sistem DapurHub mengenal 4 tingkatan peran pengguna:

LevelPeranDeskripsi Singkat
1🔴 Super AdminPengelola utama sistem dengan akses penuh ke seluruh fitur
2🟡 SupervisorPengawas wilayah yang memverifikasi temuan dan memantau kinerja tim
3🟢 Operator / SurveyorPetugas lapangan yang melakukan survei, mencatat logbook, dan mengelola inventaris
4🔵 AuditorPengawas independen dengan akses baca saja untuk review dan monitoring

6.2 Matriks Hak Akses per Modul

ModulSuper AdminSupervisorOperatorAuditor
Dashboard✅ Penuh✅ Filtered✅ Filtered✅ Baca Saja
Data Dapur Mitra✅ Kelola✅ Lihat & Edit (milik sendiri)✅ Lihat & Edit (milik sendiri)✅ Baca Saja
Survei✅ Kelola✅ Kelola (milik sendiri)✅ Kelola (milik sendiri)✅ Baca Saja
Corrective Action✅ Penuh + Verifikasi + Tutup✅ Verifikasi✅ Perbaikan (Resolve)✅ Baca Saja
Logbook✅ Kelola✅ Kelola (milik sendiri)✅ Kelola (milik sendiri)✅ Baca Saja
Inventaris✅ Kelola✅ Kelola (milik sendiri)✅ Kelola (milik sendiri)✅ Baca Saja
Dokumen Legalitas✅ Kelola✅ Kelola (milik sendiri)✅ Kelola (milik sendiri)✅ Baca Saja
Master Kategori Survei✅ Kelola
Manajemen Pengguna✅ Kelola
Jadwal Survei✅ Kelola✅ Lihat & Edit✅ Baca Saja✅ Baca Saja
Laporan & Ekspor✅ Penuh✅ Filtered✅ Filtered✅ Baca Penuh
Backup Data✅ Penuh
Pengaturan Sistem✅ Penuh

6.3 Pengaturan Akses Dapur Mitra

Setiap pengguna hanya dapat mengakses data dapur mitra yang telah di-assign oleh Admin:

  • Super Admin: Dapat melihat dan mengelola semua dapur mitra tanpa batasan
  • Supervisor: Dapat melihat dapur yang di-assign langsung, serta dapur yang ditangani oleh anggota timnya
  • Operator/Surveyor: Hanya dapat melihat dapur yang secara khusus di-assign kepadanya, atau dapur yang menjadi tanggung jawabnya sebagai PIC
  • Auditor: Sama seperti Operator, namun dengan akses baca saja

6.4 Prosedur Pembuatan Akun Pengguna

  1. Login sebagai Super Admin
  2. Buka menu Master → Pengguna
  3. Klik tombol Tambah Pengguna
  4. Isi formulir:
    • Username: Unik, tanpa spasi
    • Password: Minimal 6 karakter
    • Nama Lengkap: Nama tampilan pengguna
    • Email: Alamat email aktif
    • Role: Pilih peran (Admin / Supervisor / Operator / Auditor)
    • Atasan (Parent): Pilih supervisor atasan (untuk Operator)
  5. Klik Simpan
  6. Atur akses dapur mitra melalui menu Permission → Akses Mitra User

Diagram Relasi Hak Akses & Entitas (ER Diagram)

erDiagram
    yayasans ||--o{ mitras : "menaungi"
    users ||--o{ mitras : "PIC"
    mitras ||--o{ forms : "disurvei"
    mitras ||--o{ logbooks : "memiliki"
    mitras ||--o{ inventories : "memiliki"
    mitras ||--o{ corrective_actions : "memiliki"
    mitras ||--o{ mitra_documents : "memiliki"
    mitras ||--o{ schedules : "dijadwalkan"
    users ||--o{ forms : "mengisi"
    users ||--o{ schedules : "ditugaskan"
    users ||--o{ logbooks : "mencatat"
    forms ||--o{ form_details : "berisi"
    form_details ||--o{ survey_photos : "memiliki"
    categories ||--o{ categories : "parent-child"
    categories ||--o{ form_details : "merujuk"
    inventory_categories ||--o{ master_inventories : "mengkategorikan"
    master_inventories ||--o{ inventories : "merujuk"
    roles ||--o{ users : "memiliki"
    roles ||--o{ permissions : "memiliki"
    users ||--o{ user_mitra_access : "mengakses"
    users ||--o{ notifications : "menerima"
    users ||--o{ activity_logs : "melakukan"
                

Diagram Alur Autentikasi Pengguna

A. Autentikasi Web (Session-Based)
sequenceDiagram
    actor User
    participant Browser
    participant AuthController
    participant DB as Database

    User->>Browser: Input username & password
    Browser->>AuthController: POST /login
    AuthController->>DB: Verify credentials (bcrypt)
    alt Valid
        AuthController->>Browser: Set $_SESSION (user_id, role_level, etc.)
        Browser->>User: Redirect to /dashboard
    else Invalid
        AuthController->>Browser: Flash "Invalid credentials"
        Browser->>User: Show login page with error
    end
                
B. Autentikasi API (JWT Bearer)
sequenceDiagram
    actor Client as Mobile App
    participant API as ApiController
    participant JWT as JWT Helper
    participant MW as ApiMiddleware

    Client->>API: POST /api/auth/login (username, password)
    API->>API: Verify credentials
    API->>JWT: Encode payload (user_id, role_level, etc.)
    JWT-->>API: JWT Token (HS256, 24h expiry)
    API-->>Client: 200 OK + token

    Note over Client, MW: Subsequent Requests
    Client->>MW: GET /api/mitras (Authorization: Bearer [token])
    MW->>JWT: Decode & validate token
    MW->>MW: Check rate limit (60 req/min)
    MW->>API: Valid — proceed
    API-->>Client: 200 OK (JSON data)
                

7. Panduan Pelaksanaan Survei Kesesuaian

7.1 Persiapan Survei

  1. Admin membuat jadwal survei melalui menu Master → Jadwal
  2. Sistem mengirimkan notifikasi ke Surveyor yang ditugaskan
  3. Pada hari pelaksanaan, Surveyor login ke DapurHub
  4. Cek Dashboard → Jadwal Hari Ini untuk melihat daftar tugas
  5. Klik dapur mitra target untuk masuk ke Hub Dapur

7.2 Pelaksanaan Survei (Online)

  1. Akses Hub Dapur: Masuk ke halaman Hub Dapur mitra yang akan disurvei
  2. Pilih Kategori Survei: Klik kategori yang ingin disurvei (misal: "Sanitasi", "Kebersihan", "Keamanan Pangan")
  3. Isi Form Survei:
    • Sistem menampilkan pertanyaan secara bertahap (satu per satu)
    • Untuk setiap pertanyaan, pilih salah satu jawaban:
      • Sesuai — Item memenuhi standar
      • Tidak Sesuai — Item tidak memenuhi standar (otomatis membuat Corrective Action)
      • NA (Tidak Berlaku) — Item tidak relevan untuk dapur ini
    • Isi catatan tambahan jika kolom catatan tersedia
    • Upload foto bukti jika kolom foto tersedia
  4. Upload Foto Bukti: Unggah foto untuk setiap item yang memerlukan dokumentasi visual
  5. Kirim Survei: Setelah semua pertanyaan terisi, klik Simpan Survei
  6. Hasil Otomatis: Sistem akan langsung menghitung skor dan menentukan grade kepatuhan

7.3 Pelaksanaan Survei (Offline)

ℹ️ PENTING: Mode offline hanya tersedia jika aplikasi sudah pernah diakses saat online sehingga data tersimpan di perangkat Anda.
  1. Persiapan: Saat masih terhubung internet, buka halaman form survei offline agar data tersimpan di perangkat
  2. Saat Offline: Buka aplikasi → isi survei seperti biasa meskipun tidak ada koneksi internet
  3. Data yang diisi akan tersimpan sementara di perangkat Anda dengan status Menunggu Sinkronisasi
  4. Sinkronisasi Otomatis: Ketika koneksi internet kembali tersedia, data akan otomatis terkirim ke server

Diagram Detail Alur Data Hasil Survei

flowchart LR
    subgraph Input
        A[Surveyor pilih Mitra]
        B[Pilih Kategori Survei]
        C[Isi Form Stepper]
        D[Upload Foto Bukti]
    end
    
    subgraph Processing
        E[Hitung Skor]
        F[Generate Grade]
        G[Buat Corrective Action\nuntuk jawaban Tidak Sesuai]
    end
    
    subgraph Output
        H[Form tersimpan di DB]
        I[Notifikasi terkirim]
        J[Dashboard terupdate]
        K[Export PDF/Excel ready]
    end
    
    A --> B --> C --> D --> E --> F --> G
    F --> H --> I --> J --> K
    G --> I
                

7.4 Skema Penilaian

ParameterKeterangan
SesuaiItem memenuhi standar SPPG
Tidak SesuaiItem TIDAK memenuhi standar — otomatis membuat Corrective Action
NA (Not Applicable)Item tidak berlaku untuk dapur ini
SkorPersentase = (Jumlah Sesuai ÷ Total Item yang Berlaku) × 100
Grade ASkor ≥ 85 — Sangat Baik
Grade BSkor ≥ 70 — Baik
Grade CSkor ≥ 55 — Cukup
Grade DSkor < 55 — Kurang

8. Tindak Lanjut Temuan (Corrective Action)

8.1 Alur Corrective Action

Temuan
"Tidak Sesuai"
Status:
Open
PIC
Perbaikan
Supervisor
Verifikasi
Status:
Closed ✅

8.2 Prosedur Detail

Fase 1 — Penciptaan (Otomatis):

  • Ketika surveyor menjawab "Tidak Sesuai" pada item survei, sistem otomatis membuat Corrective Action
  • CA di-assign ke PIC dapur mitra bersangkutan
  • Notifikasi dikirim ke PIC dan Supervisor

Fase 2 — Perbaikan (oleh PIC/Operator):

  1. PIC menerima notifikasi dan melihat daftar CA di menu Tindak Lanjut
  2. PIC melakukan perbaikan di lapangan
  3. PIC mengunggah foto bukti perbaikan
  4. PIC klik tombol Resolve dengan menyertakan bukti dan catatan perbaikan

Fase 3 — Verifikasi (oleh Supervisor/Admin):

  1. Supervisor menerima notifikasi bahwa CA telah di-resolve
  2. Supervisor memeriksa bukti perbaikan
  3. Supervisor klik Verifikasi jika perbaikan diterima, atau Tolak jika belum memadai (CA kembali ke status Open)

Fase 4 — Penutupan (oleh Admin):

  1. Admin memverifikasi hasil akhir
  2. Admin menutup CA dengan status Closed

8.3 Prioritas Corrective Action

PrioritasWarnaBatas Waktu Penyelesaian
Critical🔴 Merah24 Jam
High🟠 Oranye3 Hari
Medium🟡 Kuning7 Hari
Low🟢 Hijau14 Hari

9. Pencatatan Logbook Harian

9.1 Prosedur Pencatatan

  1. Masuk ke Hub Dapur → Logbook
  2. Klik Tambah Logbook
  3. Isi data:
    • Tanggal: Tanggal operasional
    • Jumlah Tray: Total tray makanan yang diproduksi
    • Jumlah Penerima Manfaat: Total penerima makanan
    • Menu Harian: Deskripsi menu yang disajikan
    • Catatan: Catatan operasional tambahan
    • Keterangan: Status operasional (Lancar / Ada Kendala / dll)
  4. Klik Simpan

9.2 Fitur Logbook

  • Filter Rentang Tanggal: Tampilkan logbook berdasarkan periode tertentu
  • Cetak Logbook: Cetak data logbook ke format kertas
  • Ekspor Excel: Download data logbook dalam format Excel
  • Ekspor PDF: Download data logbook dalam format PDF
  • Tren Harian: Grafik tren distribusi makanan ditampilkan di Dashboard

10. Manajemen Inventaris Dapur

10.1 Setup Master Inventaris (Admin)

  1. Buka menu Master → Inventaris
  2. Buat Kategori Inventaris (misal: Peralatan Masak, Perlengkapan Kebersihan)
  3. Tambah Item Inventaris ke dalam kategori: Nama item, Merek (opsional), Tipe (opsional)
  4. Urutkan item menggunakan fitur seret dan lepas (drag-and-drop)

10.2 Pencatatan Inventaris per Dapur

  1. Masuk ke Hub Dapur → Inventaris
  2. Klik Tambah Item
  3. Pilih item dari daftar Master Inventaris
  4. Isi data:
    • Jumlah (Qty): Jumlah unit
    • Kondisi: Baik / Rusak Ringan / Rusak Berat
    • Catatan: Keterangan tambahan
  5. Klik Simpan

11. Manajemen Dokumen Legalitas

11.1 Upload Dokumen

  1. Buka menu Dokumen atau Hub Dapur → Dokumen
  2. Klik Tambah Dokumen
  3. Isi formulir:
    • Dapur Mitra: Pilih dapur
    • Jenis Dokumen: BPOM, Halal, K3, SIUP, NIB, Lainnya
    • Nama Dokumen: Nama file/sertifikat
    • File: Upload file (JPG, PNG, PDF)
    • Tanggal Terbit: Tanggal dokumen diterbitkan
    • Tanggal Kadaluarsa: Tanggal dokumen berakhir
    • Catatan: Catatan tambahan
  4. Klik Simpan

11.2 Pemantauan Kadaluarsa

Sistem secara otomatis:

  • Menandai status dokumen menjadi Segera Kadaluarsa ketika tersisa 30 hari sebelum tanggal kadaluarsa
  • Menandai status menjadi Sudah Kadaluarsa ketika sudah melewati tanggal kadaluarsa
  • Menampilkan peringatan di Dashboard untuk dokumen yang perlu diperbarui

12. Penjadwalan Survei

12.1 Membuat Jadwal

  1. Buka menu Master → Jadwal Survei
  2. Klik Tambah Jadwal
  3. Isi formulir:
    • Dapur Mitra: Target survei
    • Surveyor: Petugas yang ditugaskan
    • Tanggal: Tanggal pelaksanaan
    • Tipe Pengulangan: Sekali / Mingguan / Dua Mingguan / Bulanan
    • Tanggal Akhir Pengulangan: (untuk jadwal berulang)
    • Catatan: Instruksi khusus
  4. Klik Simpan

12.2 Kalender Survei

  • Dashboard menampilkan Jadwal Hari Ini sebagai pintasan cepat
  • Menu Jadwal menampilkan kalender visual dengan semua jadwal survei
  • Setiap jadwal dapat difilter berdasarkan bulan dan tahun

13. Panduan Pengguna Berdasarkan Peran

13.1 Super Admin

Akses: Seluruh modul tanpa batasan

Tugas Utama:

  1. Mengelola akun pengguna (tambah, edit, hapus)
  2. Mengatur konfigurasi sistem (kop surat, pengaturan aplikasi)
  3. Mengelola hak akses per peran per modul
  4. Menjalankan dan mengatur backup database
  5. Mengelola data master (kategori survei, inventaris, yayasan)
  6. Memverifikasi dan menutup Corrective Action
  7. Memantau log aktivitas dan dashboard analitik

Menu: Dashboard, Master (Mitra, Kategori, Pengguna, Inventaris, Jadwal, Permission, Pengaturan, Backup, Log), Survei, Tindak Lanjut, Dokumen, Laporan, Notifikasi.

13.2 Supervisor

Akses: Data dapur yang di-assign + dapur anggota tim

Tugas Utama:

  1. Memverifikasi Corrective Action yang telah diperbaiki oleh PIC
  2. Memantau kinerja surveyor/operator di bawahnya
  3. Melihat laporan kepatuhan dan ranking dapur di wilayahnya
  4. Mengelola jadwal survei untuk timnya

Menu: Dashboard (filtered), Mitra (assigned), Jadwal, Survei (assigned), Tindak Lanjut (verifikasi), Dokumen, Laporan, Notifikasi.

13.3 Operator / Surveyor

Akses: Hanya dapur yang di-assign

Tugas Utama:

  1. Melaksanakan survei kesesuaian di dapur mitra
  2. Mencatat logbook harian distribusi makanan
  3. Mengelola data inventaris dapur
  4. Menyelesaikan (resolve) Corrective Action dengan mengunggah bukti perbaikan
  5. Mengunggah dokumen legalitas dapur

Menu: Dashboard (filtered), Survei (assigned), Tindak Lanjut (resolve), Notifikasi.

13.4 Auditor

Akses: Baca saja untuk dapur yang di-assign

Tugas Utama:

  1. Mereview hasil survei dan skor kepatuhan
  2. Memantau status Corrective Action
  3. Melihat laporan kepatuhan dan tren

14. Alur Kerja (Workflow)

14.1 Alur Operasional Harian

  1. 📋 Admin mendaftarkan Data Dapur Mitra ke dalam sistem
  2. 📅 Admin membuat Jadwal Survei dan menugaskan Surveyor
  3. 🔔 Sistem mengirimkan Notifikasi ke Surveyor yang ditugaskan
  4. 📝 Surveyor melaksanakan Survei Kesesuaian di lapangan
  5. Apabila ditemukan ketidaksesuaian:
    • ⚠️ Sistem otomatis membuat Corrective Action
    • 🔧 PIC melakukan perbaikan dan mengunggah bukti
    • 👁️ Supervisor memverifikasi perbaikan
    • ✅ Admin menutup temuan (Closed)
  6. Apabila semua sesuai: ✅ Skor & Grade otomatis ditampilkan
  7. 📊 Seluruh data terekam di Dashboard Analitik

14.2 Aktivitas Harian PIC / Operator

Selain survei, PIC juga melakukan kegiatan harian berikut yang semuanya terekam di Dashboard:

  • 📒 Mencatat Logbook Harian (jumlah tray, penerima, menu)
  • 📦 Memperbarui data Inventaris Dapur
  • 📄 Mengunggah Dokumen Legalitas yang baru/diperbarui

15. Pelaporan & Ekspor Data

15.1 Dashboard Analitik

Dashboard menampilkan ringkasan informasi penting secara real-time:

  • Total dapur mitra yang dikelola
  • Jumlah survei yang sudah dilaksanakan
  • Status Corrective Action (Open, Resolved, Closed)
  • Tren distribusi makanan harian (dari Logbook)
  • Peringatan dokumen yang akan/sudah kadaluarsa
  • Jadwal survei hari ini

15.2 Menu Laporan

LaporanFungsi
Laporan Global MitraRingkasan kepatuhan seluruh dapur mitra
Laporan Global LogbookRekap logbook harian dari semua dapur
Laporan PerbandinganMembandingkan skor kepatuhan antar dapur atau antar periode
Ranking DapurPeringkat dapur berdasarkan skor kepatuhan

15.3 Format Ekspor

  • Cetak (Print): Cetak langsung dari browser
  • PDF: Unduh laporan dalam format PDF
  • Excel: Unduh data dalam format spreadsheet Excel untuk analisis lebih lanjut

16. Backup & Pemulihan Data

16.1 Backup Manual

  1. Login sebagai Super Admin
  2. Buka menu Master → Backup Database
  3. Klik Buat Backup Sekarang
  4. File backup akan tersimpan dan dapat di-download untuk penyimpanan eksternal

16.2 Auto-Backup

  1. Buka menu Master → Backup Database
  2. Aktifkan Auto Backup Harian
  3. Atur Retensi Backup (berapa lama backup disimpan, default: 30 hari)
  4. Sistem akan otomatis membuat backup setiap hari dan menghapus backup yang sudah melewati masa retensi

16.3 Pemulihan (Restore) Data

⚠️ PERINGATAN: Proses restore akan menimpa seluruh data yang ada saat ini. Pastikan untuk membuat backup terlebih dahulu sebelum melakukan restore.
  1. Buka menu Master → Backup Database
  2. Pilih file backup yang ingin dipulihkan dari daftar
  3. Klik Restore dan konfirmasi
  4. Atau unggah file backup dari penyimpanan eksternal melalui Upload & Restore

17. Penyelesaian Masalah Umum

NoMasalahSolusi
1Tidak bisa loginPastikan username dan password benar. Jika lupa password, hubungi Admin untuk melakukan reset password.
2Halaman kosong / putih setelah loginCoba muat ulang halaman (tekan F5). Jika masih bermasalah, bersihkan cache browser lalu coba lagi.
3Data survei tidak munculPeriksa apakah Anda memiliki hak akses ke dapur mitra tersebut. Hubungi Admin untuk mengecek pengaturan akses.
4Form survei muncul pesan "Sesi telah berakhir"Sesi login Anda telah habis waktu. Silakan muat ulang halaman dan login ulang.
5Gagal mengunggah fotoPastikan file berformat JPG, PNG, atau WEBP. Periksa ukuran file tidak terlalu besar. Coba kompres foto terlebih dahulu.
6Gagal mengekspor PDF atau ExcelHubungi Admin atau tim IT karena masalah ini memerlukan penanganan di sisi server.
7Survei offline tidak tersinkronisasiPastikan perangkat terhubung ke internet. Buka aplikasi dan tunggu hingga proses sinkronisasi selesai. Jika gagal, coba bersihkan cache browser.
8Notifikasi tidak munculPeriksa pengaturan notifikasi di profil Anda. Pastikan notifikasi untuk kategori yang diinginkan dalam keadaan aktif.
9Halaman 404 (tidak ditemukan)Periksa kembali alamat URL yang diketik. Gunakan menu navigasi aplikasi untuk berpindah halaman.
10Backup data gagalHubungi tim IT untuk memastikan konfigurasi server mendukung proses backup.

18. Daftar Menu Aplikasi & Diagram Arsitektur

NoMenuFungsi
1LoginHalaman masuk ke aplikasi
2DashboardRingkasan statistik dan informasi penting
3Master → MitraDaftar dan kelola data dapur mitra
4Hub DapurPusat informasi terpadu per dapur mitra
5Survei → Buat SurveiForm survei kesesuaian SPPG
6Survei → DetailDetail hasil survei yang sudah dikerjakan
7Survei → Cetak / PDFCetak atau unduh hasil survei
8Tindak LanjutDaftar Corrective Action (temuan dan perbaikan)
9LogbookCatatan harian operasional per dapur
10InventarisData aset dan peralatan per dapur
11DokumenKelola dokumen legalitas dapur mitra
12Master → Kategori SurveiKelola kategori dan pertanyaan survei
13Master → PenggunaKelola akun pengguna sistem
14Master → InventarisKelola master data inventaris
15Master → JadwalKelola jadwal survei
16Master → PermissionKelola hak akses pengguna
17Master → PengaturanKonfigurasi aplikasi (kop surat, dll)
18Master → BackupBackup dan restore database
19Master → Log AktivitasRiwayat aktivitas pengguna
20Laporan Global MitraLaporan kepatuhan semua dapur
21Laporan Global LogbookRekap logbook harian seluruh dapur
22Laporan PerbandinganPerbandingan skor antar dapur / periode
23Ranking DapurPeringkat dapur berdasarkan kepatuhan
24NotifikasiDaftar pemberitahuan dan peringatan
25YayasanKelola data yayasan / organisasi penaungi

Diagram Arsitektur Sistem DapurHub

graph TD
    subgraph Client_Layer["Layer Klien"]
        Browser["Web Browser / PWA"]
        Mobile["Android App (Native/Flutter)"]
    end

    subgraph Application_Layer["Layer Aplikasi (PHP Backend)"]
        Router["Bramus Router"]
        AuthMW["AuthMiddleware"]
        ApiMW["ApiMiddleware + JWT"]
        CSRF["CSRF Protection"]
        Controllers["Controllers (24 File)"]
        Helpers["Helpers (Auth, JWT, Csrf)"]
        Views["Twig Template Engine"]
    end

    subgraph Data_Layer["Layer Data"]
        MySQL["MySQL 8.x Database"]
        Uploads["File Storage (uploads/)"]
        Backups["Backup Storage (storage/backups/)"]
    end

    Browser -->|HTTP/HTTPS + Session| Router
    Mobile -->|REST API + JWT Bearer| Router
    Router --> AuthMW
    Router --> ApiMW
    Router --> CSRF
    AuthMW --> Controllers
    ApiMW --> Controllers
    Controllers --> Views
    Controllers --> MySQL
    Controllers --> Uploads
    Controllers --> Backups
                

Diagram Konteks Sistem (C4 Context)

C4Context
    title DapurHub - System Context Diagram

    Person(admin, "Super Admin", "Mengelola seluruh sistem")
    Person(supervisor, "Supervisor", "Memverifikasi dan memonitor")
    Person(surveyor, "Surveyor/PIC", "Melakukan survei dan operasional harian")

    System(dapurhub, "DapurHub", "Sistem Manajemen & Audit Kepatuhan Dapur Mitra")

    System_Ext(email, "Email Server", "Notifikasi email")
    System_Ext(mobile, "Android App", "Akses mobile via REST API")

    Rel(admin, dapurhub, "Mengelola", "HTTPS")
    Rel(supervisor, dapurhub, "Memverifikasi", "HTTPS")
    Rel(surveyor, dapurhub, "Melakukan survei", "HTTPS/Offline")
    Rel(dapurhub, email, "Mengirim notifikasi", "SMTP")
    Rel(mobile, dapurhub, "REST API", "HTTPS + JWT")
                

Dokumen ini merupakan living document yang akan diperbarui seiring perkembangan aplikasi DapurHub. Setiap perubahan signifikan pada fitur harus disertai pembaruan pada dokumen ini.

Disusun oleh: Tim Pengembangan DapurHub
Tanggal: 1 Agustus 2026
Versi: 1.0