|
|
||
|---|---|---|
| app | ||
| bootstrap | ||
| config | ||
| database | ||
| public | ||
| resources | ||
| routes | ||
| storage | ||
| tests | ||
| .editorconfig | ||
| .env.example | ||
| .gitattributes | ||
| .gitignore | ||
| README.md | ||
| artisan | ||
| composer.json | ||
| composer.lock | ||
| package.json | ||
| phpunit.xml | ||
| puskesmas | ||
| vite.config.js | ||
README.md
Sistem Antrian Puskesmas
Sistem antrian digital untuk Puskesmas yang dibangun dengan Laravel dan Tailwind CSS.
🚀 Fitur
- Landing Page - Halaman utama yang menarik dengan informasi layanan
- Sistem Login/Register - Autentikasi pengguna dengan validasi
- Dashboard Admin - Panel admin untuk mengelola antrian
- Display Antrian - Layar display untuk menampilkan antrian yang sedang dipanggil
- Responsive Design - Tampilan yang responsif untuk semua perangkat
🛠️ Teknologi
- Backend: Laravel 11
- Frontend: Tailwind CSS
- Database: MySQL
- Authentication: Laravel Built-in Auth
📋 Struktur Database
Tabel Users
id- Primary Keynama- Nama lengkap pasienalamat- Alamat pasienjenis_kelamin- Laki-laki/Perempuanno_hp- Nomor HPno_ktp- Nomor KTP (unique)poli_id- Foreign key ke tabel polispekerjaan- Pekerjaan pasienpassword- Password untuk loginremember_token- Token untuk remember me
Tabel Polis
id- Primary Keynama_poli- Nama poli (umum, gigi, kesehatan jiwa, kesehatan tradisional)
Tabel Lokets
id- Primary Keynama_loket- Nama loket
Tabel Antrians
id- Primary Keyuser_id- Foreign key ke usersno_antrian- Nomor antriantanggal_antrian- Tanggal antrianis_call- Status dipanggilstatus- Status antrian (menunggu, dipanggil, selesai, batal)waktu_panggil- Waktu dipanggilloket_id- Foreign key ke lokets
Tabel Riwayat Panggilan
id- Primary Keyantrian_id- Foreign key ke antrianswaktu_panggilan- Waktu panggilan
🚀 Instalasi
-
Clone repository
git clone <repository-url> cd Puskesmas -
Install dependencies
composer install npm install -
Setup environment
cp .env.example .env php artisan key:generate -
Konfigurasi database
- Edit file
.envdan sesuaikan konfigurasi database
DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=puskesmas DB_USERNAME=root DB_PASSWORD= - Edit file
-
Jalankan migrasi dan seeder
php artisan migrate:fresh --seed -
Jalankan server development
php artisan serve
📱 Halaman yang Tersedia
1. Landing Page (/)
- Halaman utama dengan informasi layanan
- Navigasi ke login dan register
- Informasi tentang cara kerja sistem
2. Login (/login)
- Form login dengan email dan password
- Remember me functionality
- Link ke halaman register
3. Register (/register)
- Form pendaftaran dengan data lengkap
- Validasi input
- Pilihan poli
4. Dashboard (/dashboard)
- Panel admin dengan statistik
- Quick actions untuk mengelola antrian
- Tabel antrian terbaru
- Logout functionality
5. Display (/display)
- Layar display untuk antrian
- Auto-refresh setiap 5 detik
- Tampilan antrian per poli
- Antrian berikutnya
👤 Akun Default
Setelah menjalankan seeder, tersedia akun default:
Admin:
- Username:
admin - Password:
password
User:
- Nama:
Budi Santoso - No KTP:
1234567890123456 - Password:
password
🎨 Customization
Warna
Sistem menggunakan warna custom yang dapat diubah di resources/views/layouts/app.blade.php:
tailwind.config = {
theme: {
extend: {
colors: {
primary: '#3B82F6', // Blue
secondary: '#1E40AF', // Dark Blue
accent: '#10B981' // Green
}
}
}
}
Layout
Layout utama dapat dimodifikasi di resources/views/layouts/app.blade.php
🔧 Development
Menambah Poli Baru
- Tambahkan data di seeder
AntrianPuskesmasSeeder.php - Update controller
DisplayController.phpuntuk menampilkan poli baru - Update view
display/index.blade.phpuntuk menampilkan poli baru
Menambah Fitur Baru
- Buat controller baru di
app/Http/Controllers/ - Buat view di
resources/views/ - Tambahkan route di
routes/web.php - Update navigasi di layout
📊 Monitoring
Sistem menyediakan monitoring real-time untuk:
- Total pasien terdaftar
- Antrian yang sedang menunggu
- Antrian yang sudah selesai
- Poli yang aktif
🔒 Security
- Password di-hash menggunakan bcrypt
- CSRF protection aktif
- Validasi input pada semua form
- Session management yang aman
📞 Support
Untuk bantuan atau pertanyaan, silakan hubungi:
- Email: support@puskesmas.com
- Phone: (021) 1234-5678
📄 License
Proyek ini dilisensikan di bawah MIT License.
Dibuat dengan ❤️ untuk Puskesmas