|
||
---|---|---|
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
.env
dan 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.php
untuk menampilkan poli baru - Update view
display/index.blade.php
untuk 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