Website berisi API Backend dan manajemen data pegawai untuk aplikasi SiAP. Website ini dibangun dengan Laravel, Tailwind CSS, Vue JS, dan Inertia JS. Website ini juga memiliki halaman absensi (QR Code) dan tabel untuk menampilkan data kehadiran pegawai.
Aplikasi dan website ini dibangun untuk mengatasi permasalahan pencatatan absensi pegawai di lingkungan kantor pemerintahan Kecamatan Balaesang. Pencatatan kehadiran pegawai di kantor pemerintahan Kecamatan Balaesang selama ini masih dilakukan secara manual yaitu dengan memberi paraf pada absensi.
Permasalahan timbul saat sebagian besar pegawai tidak jujur dalam mengisi absen tersebut, ada yang titip ke teman untuk diparaf namanya, ada yang langsung isi absen sampai beberapa hari ke depan, ada yang mengisi absen diluar waktunya, dsb. Dengan adanya sistem ini, diharapkan bisa membantu mengatasi permasalahan-permasalahan yang telah disebutkan.
Environment Variable
CALENDARIFIC_KEY = *Your calendarific API-KEY*
ONESIGNAL_APP_ID='Your One Signal APP-ID'
ONESIGNAL_API_KEY='Your One Signal API-KEY'
ONESIGNAL_API_URL='https://onesignal.com/api/v1/notifications'
MEDIA_URL="Your media storage url" #Required if you deploy app in shared hosting
LATITUDE_OFFSET="latitude of your office location"
LONGITUDE_OFFSET="longitude of your office location"
Calendarific Key diperlukan untuk mendapatkan data hari libur nasional dari Calendarific API.
Variabel ini diperlukan untuk mengirim push notification ke aplikasi SiAP. Untuk mendapatkan data ini, silahkan buat akun di One Signal lalu ikuti petunjuk pada dokumentasi resminya.
Data ini diperlukan untuk mengecek jarak user dari kantor saat melakukan presensi. Hal ini dilakukan untuk memastikan bahwa user melakukan presensi di kantor.
Instalasi & Konfigurasi
composer install
npm install
& npm run dev
cp .env.example .env
php artisan key:generate
php artisan migrate
php artisan voyager:install
untuk menginstall admin panel Voyagerphp artisan voyager:admin {email_anda@mail.com} --create
untuk membuat admin baru atau jalankan perintah php artisan voyager:admin {email_anda@mail.com}
untuk menjadikan user yang sudah ada sebagai admin├── database
└── csv
├── users.csv
└── departments.csv
pastikan struktur data pada csv sesuai dengan struktur tabel.
php artisan db:seed
, jika tidak ada file csv pada proses sebelumnya, comment/hilangkan UserSeeder & DepartmentSeeder dari DatabaseSeeder.php sebelum menjalankan seederphp artisan holiday:generate
tambahkan option --year
untuk menentukan tahun libur yang di-generate (default --year=2021
). Pastikan anda sudah mendapatkan API Key dari Calendarific API.php artisan absent:code
lalu buat daftar absen dengan perintah php artisan absent:attende
. Pastikan data User dan Department sudah ada saat menjalankan perintah ini. 'widgets' => [
"App\\Widgets\\UserWidget",
"App\\Widgets\\DepartmentWidget", //comment atau hapus baris ini
],
php artisan serve
lalu kunjungi url localhost:8000SIAP is open-sourced software licensed under the GPL v2.0.