Skip to content

Tugas Besar PWEB B13: Implementasi Sistem Informasi Pengabdian Dosen Terintegrasi - #33

Open
Shevaramadhan wants to merge 39 commits into
husnilk:mainfrom
Shevaramadhan:main
Open

Shevaramadhan wants to merge 39 commits into
husnilk:mainfrom
Shevaramadhan:main

Conversation

@Shevaramadhan

Copy link
Copy Markdown

📌 Identitas Kelompok (B13)

  • Athaya Nasywa Mahira (2411523028)
  • Sheva Ramadhan (2411523020)

🎯 Ringkasan Arsitektur & Proyek

Pull Request ini memuat kode utuh untuk modul Sistem Informasi Pengabdian Dosen yang diintegrasikan ke dalam repositori central-panel (Facultyware). Sistem ini memfasilitasi dosen untuk mengajukan, mengelola anggota tim, mengunggah laporan, hingga memfinalisasi kegiatan pengabdian masyarakat.

Kami merancang struktur database relasional (MySQL) yang solid dan menerapkannya menggunakan infrastruktur cloud dari Railway, serta memanfaatkan HTMX di sisi frontend untuk memberikan pengalaman navigasi SPA (Single Page Application) yang mulus.

✨ Fitur Utama yang Dikembangkan

Berikut adalah daftar fitur utama yang berhasil kami kembangkan:

  1. Manajemen Pengabdian (CRUD Lengkap)
    • Dosen dapat membuat pengajuan pengabdian, melihat detail, mengedit, dan menghapus pengajuan yang belum difinalisasi.
  2. Manajemen Dokumen (Multer)
    • Upload file Proposal (saat pengajuan) dan file Laporan Akhir (format .pdf).
  3. Manajemen Anggota Tim & Sistem Undangan
    • Menggunakan tabel relasi community_service_members.
    • Sistem Undangan (Invitation): Dosen yang diundang dapat Accept atau Reject undangan keanggotaan dari panel mereka sendiri.
  4. Alur Persetujuan (Workflow & Status)
    • Siklus status: Diusulkan ➡️ Berjalan (disetujui Admin) ➡️ Selesai (difinalisasi oleh Dosen).
  5. Keamanan & Role-Based Access Control (RBAC)
    • Pencegahan IDOR (Insecure Direct Object Reference). Dosen tidak dapat memodifikasi data pengajuan milik dosen lain.
    • Pengecekan akses via tabel Roles & Permissions.
  6. Export Data (Reporting)
    • Export daftar pengabdian ke format PDF dan Excel.

🧪 Validasi Kualitas Kode (Playwright E2E)

Kami telah menerapkan Automated End-to-End Testing menggunakan Playwright dengan cakupan 8 Modul pengujian utama:

  • Total Test Cases: 18 Skenario (Create, Edit, Delete, Upload, Admin Auth, IDOR Security, dll)
  • Status: ✅ 100% PASS (18 Lulus / 0 Gagal)

Dokumen Laporan Hasil Pengujian rinci (.docx) dan Playwright Report HTML (.zip) telah kami lampirkan secara terpisah.

🚀 Infrastruktur Database & Deployment

Aplikasi ini sudah di-deploy ke mode production dan dapat diakses publik melalui:

🎬 Video Demonstrasi Aplikasi:
Silakan tonton presentasi pengujian fitur kami di tautan berikut:
👉 Tonton Video Demo YouTube - Kelompok 13

Indeks Waktu (Timestamp) Penjelasan Fitur:

  • 00:00 - Pembukaan & Penjelasan Dashboard Daftar Pengabdian (Athaya)
  • 01:50 - Dosen: Tambah Pengajuan Pengabdian Baru & Upload Proposal (Athaya)
  • 05:14 - Dosen: Melihat Detail Pengabdian (Read-Only) (Athaya)
  • 06:36 - Dosen: Tambah Anggota Tim & Set Peran Anggota (Sheva)
  • 09:50 - Dosen (Penerima): Masuk ke menu Undangan Keanggotaan (Athaya login via akun Sheva)
  • 11:00 - Dosen (Penerima): Proses Menerima / Menolak Undangan (Athaya)
  • 11:32 - Dosen: Mengunduh Bukti Surat PDF Keanggotaan Tim (Athaya)
  • 12:35 - Admin: Verifikasi & Persetujuan Status menjadi "Berjalan" (Sheva)
  • 14:48 - Dosen: Mengupload Dokumen Laporan Hasil Pengabdian (Sheva)
  • 16:03 - Dosen: Melakukan Finalisasi Pengajuan (Status "Selesai") (Sheva)
  • 16:42 - Dosen: Fitur Export Daftar Pengabdian ke PDF & Excel (Sheva)
  • 17:34 - Dosen: Fitur Edit Data Pengabdian (Sheva)
  • 18:10 - Dosen: Fitur Hapus (Delete) Data Pengabdian (Sheva)

Demikian Pull Request ini kami ajukan. Kami memohon kesediaan Bapak Husnil Kamil, M.T. untuk me-review hasil kerja keras tim kami selama pengerjaan Tugas Besar Pemrograman Web ini. Terima kasih, Pak!

Shevaramadhan and others added 30 commits May 26, 2026 01:38
…or Pengabdian

- Added Pengabdian management (Create, Read, Update, Delete)
- Implemented file upload for activity reports (Laporan Pengabdian)
- Added 'Finalisasi' feature to mark Pengabdian as completed
- Implemented member management (Add, Edit Role, Delete members)
- Added incoming invitations view for members (Fitur Undangan)
- Created Ownership middleware to secure data (Dosen only edits their own data)
- Integrated Role-Based Access Control (RBAC) middleware for granular permissions
- Developed a web-based Print View template for 'Cetak PDF'
- Implemented Excel Export feature using exceljs
- Revamped UI using basecoat/Tailwind and HTMX for dynamic interactions
- Refactored controllers using proper architectural separation of concerns
- Menerapkan pengamanan (RBAC) pada kolom Status Pengabdian: hanya Admin yang bisa mengubah status secara manual (Dosen tidak bisa).

- Menambahkan desain visual Progress Stepper modern pada tabel status Pengabdian.
fix(pengabdian): perbaikan logika status dan UI Dashboard
fix(pengabdian): perbaikan logika status dan UI Dashboard
Copilot AI review requested due to automatic review settings June 22, 2026 16:44

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants