Sistem-Manajemen-Absensi-Karyawan

Projek Laravel

Stars
14

Sistem-Manajemen-Absensi-Karyawan

Oleh : Muhammad Firyanul Rizky, email : [email protected], no. hp : 0895606181117

Dibuat menggunakan Framework Laravel 9

Ketentuan demo aplikasi :

  1. instalasi database pada file env dengan nama database: absensi, kemudian lakukan migrasi : php artisan migrate, lalu tambah data dengan eloquent orm, atau bisa gunakan langsung databse sql yg sudah disediakan.
  2. masuk sesi admin dengan email [email protected] dan password : 123
  3. masuk sesi karyawan dengan email [email protected] dan password :123456

Kekurangan Aplikasi : fitur register baik admin dan karyawan belum rampung sepenuhnya pada index, sementara untuk penambahan admin bisa dilakukan menggunakan eloquent orm, untuk petunjuk bisa lihat screenshot paling bawah. Sedangkan Untuk karyawan bisa dilakukan pada fitur tambah karyawan pada sesi admin atau bisa juga memakai eloquent orm dengan ketentuan :

  1. lakukan perintah php artisan tinker, lalu buat variabel baru $emp = new App\Employee
  2. selanjutnya ikuti petunjuk pada screenshot paling bawah untuk menambahkan elemen 'user_id', 'first_name', 'last_name', 'sex', 'dob', 'join_date', 'desg', 'department_id', 'salary', 'photo'

Berikut adalah ketentuan yang sudah terpenuhi :

1. Menggambarkan flow diagram / usecase diagram sederhana yang menggambarkan fitur sistem

2. Mengatur Status Absen masuk yang dilakukan karyawan sebelum jam 09.00 pagi, sedangkan absen keluar dilakukan setelah jam 17.00 akan diberikan status tidak valid pada sistem.

Operasi Logic Controller yang mengatasi permasalahan no. 2 15  Logic Controller dalam menampilkan status absensi

Operasi Logic View yang akan menampilkan masing-masing status absensi berdasarkan ketentuan. 16  Logic View dalam menampilkan status absensi

Hasil Implementasi masalah no. 2 -- Tampak Absensi Terlambat jika absensi dilakukan jam 09.00 pagi atau lebih, sedangkan sebelum jam 9 akan dinyatakan tepat waktu -- 9  Tampak Absensi Terlambat

-- Tampak Absensi Tidak Valid jika absensi dilakukan diatas jam 17:00 sampai jam 7 Pagi -- 10  Tampak Absensi Tidak Valid

2. menyediakan fitur pengajuan ketidakhadiran kerja dibagi menjadi 2 yaitu izin sakit dan izin cuti.

Ketentuan masalah no. 2 adalah :

-- 1. Apabila karyawan sedang sakit, izin sakit bisa diinputkan maksimal H+3 sejak tanggal ketidakhadiran karyawan -- -- 2. Apabila karyawan ingin mengajukan cuti, karyawan dapat menginputkan izin cuti maksimal H-1 dari rencana ketidakhadiran karyawan -- Dibawah ini adalah operasi logic yang mengatur ketentuan 1 dan 2 untuk izin sakit dan cuti.

Operasi Logic untuk mengatasi ketentuan pertama dan kedua :

Apabila melanggar ketentuan pertama, maka akan tampil alert :

Sedangkan, jika melanggar ketentuan kedua, maka akan tampil alert :

-- 3. Setelah izin cuti diinputkan, manajer/atasan karyawan dalam hal ini user dengan sesi admin harus melakukan approval terhadap izin cuti yang diajukan --

3. Semua data yang terekam dari semua fitur diatas dapat ditampilkan menjadi sebuah laporan yang berisi ketidakhadiran dan absensi karyawan.

Ketentuan Masalah No. 3 adalah :

-- 1. Laporan ditampilkan per karyawan dan hanya dapat dilihat oleh HRD dan manajer/atasan --

Mengatasi masalah 1, sistem dibuat dengan 2 user, yakni admin dan karyawan, pada sesi admin user bisa melihat laporan per karyawan :

-- 2. karyawan hanya bisa melihat rekaman data dirinya sendiri saja -- Mengatasi masalah 2, diperlukan sesi user karyawan yang hanya di autorisasi dan diizinkan untuk melihat laporannya sendiri :

4. Absen masuk dan keluar menggunakan geo-tagging dari tempat tertentu.

Berikut 2 dibawah adalah implementasinya, sistem sudah bisa menginputkan wilayah berdasarkan geo tagging lokasi.

Geo Tagging Untuk absen masuk :

Geo Tagging Untuk absen keluar :

4. Menggunakan Eloquent ORM Laravel dalam melakukan interaksi database.

Berikut adalah implementasinya : 14  Interaksi Database dengan Eloquent ORM Laravel