← Kembali ke Project Klinik

Klinik

Sistem Informasi Klinik Terintegrasi BPJS Kesehatan adalah aplikasi berbasis web yang dirancang untuk mendukung proses administrasi dan pelayanan klinik secara terpadu. Aplikasi ini dibangun menggunakan PHP native 8.x dengan konsep MVC sederhana, database MySQL/MariaDB, tampilan HTML5, CSS3, Bootstrap 5, serta proses dinamis menggunakan JavaScript/AJAX. Sistem ini tidak menggunakan framework besar seperti Laravel, CodeIgniter, atau Symfony, sehingga lebih ringan, mudah dipasang di hosting standar, dan mudah dikembangkan sesuai kebutuhan klinik.

Aplikasi ini terdiri dari dua bagian utama, yaitu Frontend Publik dan Backend Klinik. Frontend publik dapat diakses oleh pasien atau pengunjung untuk melihat informasi klinik, profil layanan, daftar poli, informasi dokter praktik, mengambil antrean online, mengecek status antrean, melihat live antrean, serta menampilkan antrean dalam mode TV display. Fitur live antrean diperbarui otomatis menggunakan AJAX polling sehingga informasi antrean dapat berubah tanpa perlu refresh halaman.

Backend klinik digunakan oleh petugas internal dengan sistem login dan pembagian hak akses berdasarkan role. Role yang tersedia meliputi Admin, Dokter, Perawat, Resepsionis, Apoteker, Kasir, dan Pemilik. Setiap role memiliki batasan akses sesuai tugasnya. Admin dapat mengelola seluruh modul, termasuk manajemen user, dokter, pasien, poli, antrean, obat, laporan, pengaturan aplikasi, dan pengaturan API BPJS. Dokter dapat mengelola pemeriksaan pasien, diagnosis, tindakan, resep, rujukan, dan rekam medis. Perawat dapat mencatat tanda vital dan keluhan awal pasien. Resepsionis dapat mengelola pendaftaran, data pasien, dan antrean. Apoteker dapat mengelola obat, stok, resep, dan penyerahan obat. Kasir dapat mengelola tagihan, pembayaran, invoice, dan rekap kasir. Pemilik dapat memantau laporan dan statistik klinik.

Modul utama dalam aplikasi meliputi Dashboard, Manajemen User, Master Data Pasien, Master Data Dokter, Master Data Poli, Jadwal Dokter, Pendaftaran dan Kunjungan, Antrean, Pemeriksaan Perawat, Rekam Medis Dokter, Resep, Farmasi dan Obat, Kasir dan Pembayaran, Laporan, Pengaturan Klinik, serta Pengaturan API BPJS Kesehatan. Modul obat dilengkapi fitur CRUD untuk Admin dan Apoteker, modul dokter dapat dikelola oleh Admin, dan modul user dapat dikelola oleh Admin.

Untuk kebutuhan antrean, sistem dapat membuat nomor antrean otomatis berdasarkan jenis pasien atau poli, memanggil antrean, melewati antrean, membatalkan antrean, memindahkan poli, menampilkan antrean secara real-time, serta menyediakan tampilan TV antrean dengan nomor besar, loket/poli yang sedang melayani, daftar antrean berikutnya, dan running text pengumuman klinik.

Aplikasi juga menyediakan modul Pengaturan API BPJS Kesehatan yang hanya dapat diakses oleh Admin. Modul ini digunakan untuk menyimpan konfigurasi API BPJS seperti environment, service type, base URL, cons_id, secret_key, user_key, kode PPK/faskes, status aktif, dan timeout. Sistem menggunakan pendekatan adapter melalui class BPJSClient.php, sehingga endpoint dan credential BPJS tidak di-hardcode. Secret key dan user key disimpan secara terenkripsi, ditampilkan dalam bentuk masking, dan setiap request API dicatat dalam log dengan sanitasi data sensitif.