Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public function inputMesinNgePlus(Request $request)
- {
- // dd($request->all());
- $data_terinput = 0;
- $status_final = null;
- $nama_karyawan = '-';
- $group_karyawan = '-';
- $source = null;
- $source_id = null;
- try {
- if (isset($request->message)) {
- $data = $request->message;
- $row = $data;
- for ($i = 0; $i < count($row); $i++) {
- // $existing_presensi = Presensi::where('tanggal_dan_waktu_tap', '=', date("Y-m-d H:i:s", strtotime($row[$i]['DateTime'][0])))->where('karyawan_id', '=', $row[$i]['PIN'][0])->first();
- $existing_presensi = Presensi::where('tanggal_dan_waktu_tap', $row[$i]['DateTime'][0])->where('karyawan_id', $row[$i]['PIN'][0])->first();
- // dd($existing_presensi);
- if(!isset($existing_presensi)) {
- $id_karyawan = $row[$i]['PIN'][0];
- $tanggal_waktu_tap = $row[$i]['DateTime'][0];
- $tanggal_waktu_tap_static = $row[$i]['DateTime'][0];
- $karyawan = Karyawan::find($id_karyawan);
- if(isset($karyawan)) {
- $jamtap = date('H:i:s', strtotime($tanggal_waktu_tap));
- $slotjam = null;
- $poin = 0;
- $setting_poin = SettingPoin::find(2);
- $adajadwal = 0;
- $jadwal = null;
- $jadwal_terpilih = null;
- $status_izin = 0;
- $nama_karyawan = $karyawan->nama;
- if(isset($karyawan->group_id)) {
- $group_karyawan = $karyawan->group->nama.'-'.$karyawan->groupno;
- }
- //cek jadwal izin
- $jadwal_izin = JadwalIzin::where('karyawan_id', '=', $id_karyawan)->get();
- for($l = 0; $l < count($jadwal_izin); $l++) {
- $mulai_izin = Carbon::parse($jadwal_izin[$l]->tanggal_mulai)->format('Y-m-d');
- $selesai_izin = Carbon::parse($jadwal_izin[$l]->tanggal_selesai)->format('Y-m-d');
- $tanggal_sekarang = Carbon::parse($tanggal_waktu_tap)->format('Y-m-d');
- if(($tanggal_sekarang >= $mulai_izin) && ($tanggal_sekarang <= $selesai_izin)) {
- $status_izin = 1;
- }
- }
- if($status_izin == 0) {
- // mundurin tanggal
- $tanggal_waktu_tap_mundur = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap_mundur->subDay();
- $tanggal_waktu_tap_maju = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap_maju->addDay();
- $format_tanggal = strval(date("Y-m-d", strtotime($tanggal_waktu_tap)));
- $format_tanggal_mundur = strval(date("Y-m-d", strtotime($tanggal_waktu_tap_mundur)));
- $format_tanggal_maju = strval(date("Y-m-d", strtotime($tanggal_waktu_tap_maju)));
- // set tanggal
- $tanggal = Carbon::parse($tanggal_waktu_tap)->format('Y-m-d');
- $tanggal_kemarin = Carbon::parse($tanggal_waktu_tap)->subDay()->format('Y-m-d');
- $tanggal_besok = Carbon::parse($tanggal_waktu_tap)->addDay()->format('Y-m-d');
- // dapetin semua
- // $jadwal_all = JadwalNgeplus::where('karyawan_id', '=', $id_karyawan)
- // // ->whereDate('tanggal_mulai', '<=', $format_tanggal)
- // // ->whereDate('tanggal_selesai', '>=', $format_tanggal)
- // ->orderBy('tanggal_mulai', 'asc')
- // // ->orderBy('jam_pulang', 'asc')
- // ->get();
- // pseudocode fakhry ver
- $jadwal = array();
- $jadwal_ngeplus_max_date = JadwalNgeplus::where('karyawan_id', '=', $id_karyawan)->get();
- if(count($jadwal_ngeplus_max_date) > 0) {
- $max_date = $jadwal_ngeplus_max_date[0]->tanggal_selesai;
- // loop bwt ambil tanggal selesai terjauh
- for($jax = 0; $jax < count($jadwal_ngeplus_max_date); $jax++) {
- if($jadwal_ngeplus_max_date[$jax]->tanggal_selesai > $max_date) {
- $max_date = $jadwal_ngeplus_max_date[$jax]->tanggal_selesai;
- }
- }
- $batas_awal = Carbon::now()->toDateString();
- $batas_akhir = Carbon::parse($max_date)->toDateString();
- // hitung range hari
- $range_hari = CarbonPeriod::create($batas_awal, $batas_akhir)->toArray();
- if(count($range_hari) <= 2) {
- // ambil jadwal
- for($rh = 0; $rh < count($range_hari); $rh++) {
- $get_jadwal_ngeplus = JadwalNgeplus::where('karyawan_id', '=', $id_karyawan)->orderBy('tanggal_mulai', 'ASC')->get();
- for($j1 = 0; $j1 < count($get_jadwal_ngeplus); $j1++) {
- if(Carbon::parse($get_jadwal_ngeplus[$j1]->tanggal_mulai)->toDateString() <= Carbon::parse($range_hari[$rh])->toDateString() && Carbon::parse($get_jadwal_ngeplus[$j1]->tanggal_selesai)->addDay()->toDateString() > Carbon::parse($range_hari[$rh])->toDateString()) {
- array_push($jadwal, $get_jadwal_ngeplus[$j1]);
- }
- }
- }
- } else if(count($range_hari) > 2) {
- // ambil jadwal
- for($rh = 0; $rh < 2; $rh++) {
- $get_jadwal_ngeplus = JadwalNgeplus::where('karyawan_id', '=', $id_karyawan)->orderBy('tanggal_mulai', 'ASC')->get();
- for($j2 = 0; $j2 < count($get_jadwal_ngeplus); $j2++) {
- if(Carbon::parse($get_jadwal_ngeplus[$j2]->tanggal_mulai)->toDateString() <= Carbon::parse($range_hari[$rh])->toDateString() && Carbon::parse($get_jadwal_ngeplus[$j2]->tanggal_selesai)->addDay()->toDateString() > Carbon::parse($range_hari[$rh])->toDateString()) {
- array_push($jadwal, $get_jadwal_ngeplus[$j2]);
- }
- }
- }
- }
- }
- // cek jadwal ada 1
- if(count($jadwal) == 1) {
- // $existing_presensi_2 = Presensi::where('tanggal_dan_waktu_tap', $row[$i]['DateTime'][0])->
- // where('karyawan_id', $row[$i]['PIN'][0])->
- // // where('source', $jadwal[0]->source)->
- // // where('source_id', $jadwal[0]->source_id)->
- // // where('jadwal_id', $jadwal[0]->jadwal_id)->
- // first();
- // if(!isset($existing_presensi_2)) {
- $datang_awal = SettingDatangAwalKhusus::find(1);
- $setting_datang_awal = strtotime($datang_awal->datang_awal)-strtotime("00:00:00");
- $tanggal_mulai = Carbon::parse($jadwal[0]->tanggal_mulai)->format('Y-m-d');
- $tanggal_selesai = Carbon::parse($jadwal[0]->tanggal_selesai)->format('Y-m-d');
- $hariini = Carbon::now()->format('Y-m-d');
- $jam_masuk = $jadwal[0]->jam_masuk;
- $jam_istirahat_mulai = $jadwal[0]->jam_istirahat_mulai;
- $jam_istirahat_selesai = $jadwal[0]->jam_istirahat_selesai;
- $jam_pulang = $jadwal[0]->jam_pulang;
- $before_jam_masuk_previous = date("H:i:s",strtotime($jadwal[0]->jam_masuk)-$setting_datang_awal);
- $after_jam_pulang_next = date("H:i:s",strtotime("+5 hours", strtotime($jadwal[0]->jam_pulang)));
- $closing_time = ClosingTime::find(1);
- $setting_closing_time = strtotime($closing_time->jangka_waktu)-strtotime("00:00:00");
- $datang_awal = SettingDatangAwalKhusus::find(1);
- $setting_datang_awal = strtotime($datang_awal->datang_awal)-strtotime("00:00:00");
- $setting_presensi = SettingPresensi::find(1);
- if(isset($setting_presensi->toleransi_keterlambatan)) {
- $toleransi = strtotime($setting_presensi->toleransi_keterlambatan)-strtotime("00:00:00");
- // $toleransi_min = strtotime("+1 minutes",strtotime($setting_presensi->toleransi_keterlambatan))-strtotime("00:00:00");
- $max_istirahat_mulai = strtotime($jam_istirahat_selesai)-$toleransi-strtotime("00:00:00");
- $max_istirahat_selesai = strtotime($jam_pulang)-$toleransi-strtotime("00:00:00");
- // dd($max_istirahat_selesai);
- // $before_jam_masuk = date("H:i:s",strtotime($jam_masuk)-$setting_datang_awal);
- $before_jam_masuk = $before_jam_masuk_previous;
- $after_jam_masuk = date("H:i:s",strtotime($jam_masuk)+$toleransi);
- $before_jam_istirahat_mulai = date("H:i:s",strtotime($jam_istirahat_mulai)-$toleransi);
- // $after_jam_istirahat_mulai = date("H:i:s",strtotime($jam_istirahat_selesai)-$toleransi_min);
- $before_jam_istirahat_selesai = date("H:i:s",strtotime($jam_istirahat_selesai)-$toleransi);
- // $after_jam_istirahat_selesai = date("H:i:s",strtotime($jam_pulang)-$toleransi_min);
- $before_jam_pulang = date("H:i:s",strtotime($jam_pulang)-$toleransi);
- // $after_jam_pulang = date("H:i:s",strtotime($jam_pulang)+$setting_closing_time);
- $after_jam_pulang = $after_jam_pulang_next;
- if(($jamtap > $before_jam_masuk) && ($jamtap < $after_jam_masuk)) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } elseif(($jamtap == $before_jam_masuk) || ($jamtap == $after_jam_masuk)) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } elseif(($jamtap > $after_jam_masuk) && ($jamtap < $before_jam_istirahat_mulai)) {
- $slotjam = "Terlambat Masuk";
- $poin = $setting_poin->jam_masuk;
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } elseif(($jamtap > $before_jam_istirahat_mulai) && ($jamtap < $before_jam_istirahat_selesai)) {
- $slotjam = "Istirahat Mulai";
- $poin = $setting_poin->jam_mulai_istirahat;
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } elseif(($jamtap == $before_jam_istirahat_mulai)) {
- $slotjam = "Istirahat Mulai";
- $poin = $setting_poin->jam_mulai_istirahat;
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } elseif(($jamtap > $before_jam_istirahat_selesai) && ($jamtap < $before_jam_pulang)) {
- $slotjam = "Istirahat Selesai";
- $poin = $setting_poin->jam_mulai_istirahat;
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } elseif($jamtap == $before_jam_istirahat_selesai) {
- $slotjam = "Istirahat Selesai";
- $poin = $setting_poin->jam_mulai_istirahat;
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } elseif(($jamtap > $before_jam_pulang) && ($jamtap < $after_jam_pulang)) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } elseif(($jamtap == $before_jam_pulang) || ($jamtap == $after_jam_pulang)) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- //-----CASE A-----
- if(strtotime($jam_pulang) < strtotime($jam_istirahat_selesai)) {
- // dd(strtotime("00:00:00"));
- // Jika jam tap < jam 12 malam
- if((strtotime($jamtap) < strtotime("24:00:00"))) {
- //-----CASE 1-----
- if((strtotime($jamtap) > strtotime($before_jam_istirahat_selesai)) && (strtotime($jamtap) < strtotime("+24 hours", strtotime($before_jam_pulang)))) {
- $slotjam = "Istirahat Selesai";
- $poin = $setting_poin->jam_selesai_istirahat;
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } elseif(($jamtap == $before_jam_istirahat_selesai)) {
- $slotjam = "Istirahat Selesai";
- $poin = $setting_poin->jam_selesai_istirahat;
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- //-----CASE 2-----
- if(strtotime("+24 hours", strtotime($before_jam_pulang)) < strtotime("24:00:00")) {
- if(strtotime($jamtap) > strtotime("+24 hours", strtotime($before_jam_pulang)) && (strtotime($jamtap) < strtotime("+24 hours", strtotime($after_jam_pulang)))) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } elseif((strtotime($jamtap) == strtotime("+24 hours", strtotime($before_jam_pulang))) || (strtotime($jamtap) == strtotime("+24 hours", strtotime($after_jam_pulang)))) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- }
- }
- // Jika jam tap >= jam 12 malam
- if((strtotime($jamtap) >= strtotime("00:00:00"))) {
- // dd(strtotime("+24 hours", strtotime($jamtap)) > strtotime("+24 hours", strtotime($before_jam_pulang)) && strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($after_jam_pulang)));
- //-----CASE 3-----
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime($before_jam_istirahat_selesai)) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($before_jam_pulang)))) {
- $slotjam = "Istirahat Selesai";
- $poin = $setting_poin->jam_selesai_istirahat;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } elseif(($jamtap == $before_jam_istirahat_selesai)) {
- $slotjam = "Istirahat Selesai";
- $poin = $setting_poin->jam_selesai_istirahat;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- //-----CASE 4-----
- if(strtotime("+24 hours", strtotime($before_jam_pulang)) >= strtotime("00:00:00")) {
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime("+24 hours", strtotime($before_jam_pulang))) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($after_jam_pulang)))) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } elseif((strtotime("+24 hours", strtotime($jamtap)) == strtotime("+24 hours", strtotime($before_jam_pulang))) || (strtotime($jamtap) == strtotime("+24 hours", strtotime($after_jam_pulang)))) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- }
- //-----CASE 5-----
- if(strtotime("+24 hours", strtotime($before_jam_pulang)) < strtotime("24:00:00")) {
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime("+24 hours", strtotime($before_jam_pulang))) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($after_jam_pulang)))) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } elseif((strtotime($jamtap) == strtotime($before_jam_pulang)) || (strtotime($jamtap) == strtotime("+24 hours", strtotime($after_jam_pulang)))) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- }
- //-----CASE 6-----
- if(strtotime($after_jam_pulang) == strtotime("00:00:00")) {
- if((strtotime($jamtap) > strtotime($before_jam_pulang)) && (strtotime($jamtap) < strtotime("+24 hours", strtotime($after_jam_pulang)))) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } elseif((strtotime($jamtap) == strtotime($before_jam_pulang)) || (strtotime($jamtap) == strtotime("+24 hours", strtotime($after_jam_pulang)))) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- }
- }
- }
- //-----CASE B-----
- if(strtotime($jam_istirahat_selesai) < strtotime($jam_istirahat_mulai)) {
- // dd(strtotime("00:00:00"));
- // Jika jam tap < jam 12 malam
- if((strtotime($jamtap) < strtotime("24:00:00"))) {
- //-----CASE 7-----
- if((strtotime($jamtap) > strtotime($before_jam_istirahat_mulai)) && (strtotime($jamtap) < strtotime("+24 hours", strtotime($before_jam_istirahat_selesai)))) {
- $slotjam = "Istirahat Mulai";
- $poin = $setting_poin->jam_mulai_istirahat;
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } elseif(($jamtap == $before_jam_istirahat_mulai)) {
- $slotjam = "Istirahat Mulai";
- $poin = $setting_poin->jam_mulai_istirahat;
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- //-----CASE 8-----
- if(strtotime("+24 hours", strtotime($before_jam_istirahat_selesai)) < strtotime("24:00:00")) {
- if(strtotime($jamtap) > strtotime("+24 hours", strtotime($before_jam_istirahat_selesai)) && (strtotime($jamtap) < strtotime("+24 hours", strtotime($before_jam_pulang)))) {
- $slotjam = "Istirahat Selesai";
- $poin = $setting_poin->jam_selesai_istirahat;
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } elseif((strtotime($jamtap) == strtotime("+24 hours", strtotime($before_jam_istirahat_selesai)))) {
- $slotjam = "Istirahat Selesai";
- $poin = $setting_poin->jam_selesai_istirahat;
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- }
- }
- // Jika jam tap >= jam 12 malam
- if((strtotime($jamtap) >= strtotime("00:00:00"))) {
- //-----CASE 9-----
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime($before_jam_istirahat_mulai)) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($before_jam_istirahat_selesai)))) {
- $slotjam = "Istirahat Mulai";
- $poin = $setting_poin->jam_mulai_istirahat;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } elseif(($jamtap == $before_jam_istirahat_mulai)) {
- $slotjam = "Istirahat Mulai";
- $poin = $setting_poin->jam_mulai_istirahat;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- //-----CASE 10-----
- if(strtotime("+24 hours", strtotime($before_jam_istirahat_selesai)) >= strtotime("00:00:00")) {
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime("+24 hours", strtotime($before_jam_istirahat_selesai))) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($before_jam_pulang)))) {
- $slotjam = "Istirahat Selesai";
- $poin = $setting_poin->jam_selesai_istirahat;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } elseif((strtotime("+24 hours", strtotime($jamtap)) == strtotime("+24 hours", strtotime($before_jam_istirahat_selesai)))) {
- $slotjam = "Istirahat Selesai";
- $poin = $setting_poin->jam_selesai_istirahat;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- }
- //-----CASE 11-----
- if(strtotime("+24 hours", strtotime($before_jam_istirahat_selesai)) < strtotime("24:00:00")) {
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime("+24 hours", strtotime($before_jam_istirahat_selesai))) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($before_jam_pulang)))) {
- $slotjam = "Istirahat Selesai";
- $poin = $setting_poin->jam_selesai_istirahat;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } elseif((strtotime($jamtap) == strtotime($before_jam_istirahat_selesai))) {
- $slotjam = "Istirahat Selesai";
- $poin = $setting_poin->jam_selesai_istirahat;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- }
- }
- }
- //-----CASE C-----
- if(strtotime($jam_istirahat_mulai) < strtotime($jam_masuk)) {
- // dd(strtotime("00:00:00"));
- // Jika jam tap < jam 12 malam
- if((strtotime($jamtap) < strtotime("24:00:00"))) {
- //-----CASE 12-----
- if((strtotime($jamtap) > strtotime($before_jam_masuk)) && (strtotime($jamtap) < strtotime("+24 hours", strtotime($before_jam_istirahat_mulai)))) {
- if((strtotime($jamtap) > strtotime($before_jam_masuk)) && (strtotime($jamtap) < strtotime($after_jam_masuk))) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- if((strtotime($jamtap) > strtotime($before_jam_masuk)) && (strtotime($jamtap) < strtotime("+24 hours", strtotime($after_jam_masuk)))) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- if((strtotime("+24 hours", strtotime($jamtap)) == strtotime("24:00:00"))) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- if((strtotime($jamtap) < strtotime("24:00:00")) && (strtotime($jamtap) > strtotime($before_jam_masuk))) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime("24:00:00")) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($after_jam_masuk)))) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- }
- if((strtotime($jamtap) > strtotime($after_jam_masuk)) && (strtotime($jamtap) < strtotime("+24 hours", strtotime($before_jam_istirahat_mulai)))) {
- $slotjam = "Terlambat Masuk";
- $poin = $setting_poin->jam_masuk;
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- if((strtotime("+24 hours", strtotime($jamtap)) == strtotime("24:00:00"))) {
- $slotjam = "Terlambat Masuk";
- $poin = $setting_poin->jam_masuk;
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- if((strtotime($jamtap) < strtotime("24:00:00")) && (strtotime($jamtap) > strtotime($after_jam_masuk))) {
- $slotjam = "Terlambat Masuk";
- $poin = $setting_poin->jam_masuk;
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime("24:00:00")) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($before_jam_istirahat_mulai)))) {
- $slotjam = "Terlambat Masuk";
- $poin = $setting_poin->jam_masuk;
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- }
- } elseif(($jamtap == $before_jam_masuk)) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- //-----CASE 13-----
- if(strtotime("+24 hours", strtotime($before_jam_istirahat_mulai)) < strtotime("24:00:00")) {
- if(strtotime($jamtap) > strtotime("+24 hours", strtotime($before_jam_istirahat_mulai)) && (strtotime($jamtap) < strtotime("+24 hours", strtotime($after_jam_istirahat_selesai)))) {
- $slotjam = "Istirahat Mulai";
- $poin = $setting_poin->jam_mulai_istirahat;
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } elseif((strtotime($jamtap) == strtotime("+24 hours", strtotime($before_jam_istirahat_mulai)))) {
- $slotjam = "Istirahat Mulai";
- $poin = $setting_poin->jam_mulai_istirahat;
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- }
- //-----CASE 14-----
- if(strtotime($after_jam_masuk) < strtotime("24:00:00")) {
- if(strtotime($before_jam_istirahat_mulai) < strtotime("24:00:00")) {
- if((strtotime($jamtap) > strtotime($after_jam_masuk)) && (strtotime($jamtap) < strtotime($before_jam_istirahat_mulai))) {
- $slotjam = "Terlambat Masuk";
- $poin = $setting_poin->jam_masuk;
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- }
- }
- if(strtotime($jam_masuk) == strtotime("00:00:00")) {
- //-----CASE 15-----
- if(strtotime($before_jam_masuk) < strtotime("00:00:00")) {
- if((strtotime($jamtap) > strtotime("+24 hours", strtotime($before_jam_masuk))) && (strtotime($jamtap) < strtotime("+24 hours", strtotime($after_jam_masuk)))) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } elseif((strtotime($jamtap) == strtotime("+24 hours", strtotime($before_jam_masuk)))) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- }
- }
- }
- // Jika jam tap >= jam 12 malam
- if((strtotime($jamtap) >= strtotime("00:00:00"))) {
- // dd(strtotime("+24 hours", strtotime($jamtap)) > strtotime("+24 hours", strtotime($before_jam_pulang)) && strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($after_jam_pulang)));
- //-----CASE 16----
- if((strtotime("+24 hours", strtotime($jamtap)) < strtotime($after_jam_masuk)) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($before_jam_istirahat_mulai)))) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- if(($jamtap == $before_jam_masuk)) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- //-----CASE 17-----
- if(strtotime("+24 hours", strtotime($before_jam_istirahat_mulai)) >= strtotime("00:00:00")) {
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime("+24 hours", strtotime($before_jam_istirahat_mulai))) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($before_jam_istirahat_selesai)))) {
- $slotjam = "Istirahat Mulai";
- $poin = $setting_poin->jam_mulai_istirahat;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } elseif((strtotime("+24 hours", strtotime($jamtap)) == strtotime("+24 hours", strtotime($before_jam_istirahat_mulai)))) {
- $slotjam = "Istirahat Mulai";
- $poin = $setting_poin->jam_mulai_istirahat;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- }
- if(strtotime("+24 hours", strtotime($before_jam_istirahat_selesai)) >= strtotime("00:00:00")) {
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime("+24 hours", strtotime($before_jam_istirahat_selesai))) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($before_jam_pulang)))) {
- $slotjam = "Istirahat Selesai";
- $poin = $setting_poin->jam_selesai_istirahat;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } elseif((strtotime("+24 hours", strtotime($jamtap)) == strtotime("+24 hours", strtotime($before_jam_istirahat_selesai)))) {
- $slotjam = "Istirahat Selesai";
- $poin = $setting_poin->jam_selesai_istirahat;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- }
- if(strtotime("+24 hours", strtotime($before_jam_pulang)) >= strtotime("00:00:00")) {
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime("+24 hours", strtotime($before_jam_pulang))) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($after_jam_pulang)))) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } elseif((strtotime("+24 hours", strtotime($jamtap)) == strtotime("+24 hours", strtotime($before_jam_pulang)))) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- }
- //-----CASE 18-----
- if(strtotime("+24 hours", strtotime($before_jam_istirahat_mulai)) < strtotime("24:00:00")) {
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime("+24 hours", strtotime($before_jam_istirahat_mulai))) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($before_jam_istirahat_selesai)))) {
- $slotjam = "Istirahat Mulai";
- $poin = $setting_poin->jam_mulai_istirahat;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } elseif((strtotime($jamtap) == strtotime($before_jam_istirahat_mulai))) {
- $slotjam = "Istirahat Mulai";
- $poin = $setting_poin->jam_mulai_istirahat;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- }
- if(strtotime("+24 hours", strtotime($before_jam_istirahat_selesai)) < strtotime("24:00:00")) {
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime("+24 hours", strtotime($before_jam_istirahat_selesai))) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($before_jam_pulang)))) {
- $slotjam = "Istirahat Selesai";
- $poin = $setting_poin->jam_selesai_istirahat;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } elseif((strtotime($jamtap) == strtotime($before_jam_istirahat_selesai))) {
- $slotjam = "Istirahat Selesai";
- $poin = $setting_poin->jam_selesai_istirahat;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- }
- if(strtotime("+24 hours", strtotime($before_jam_pulang)) < strtotime("24:00:00")) {
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime("+24 hours", strtotime($before_jam_pulang))) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($after_jam_pulang)))) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } elseif((strtotime($jamtap) == strtotime($before_jam_pulang))) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- }
- //-----CASE 19-----
- if(strtotime($after_jam_masuk) >= strtotime("00:00:00")) {
- if(strtotime($before_jam_istirahat_mulai) >= strtotime("24:00:00")) {
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime("+24 hours", strtotime($after_jam_masuk))) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($before_jam_istirahat_mulai)))) {
- $slotjam = "Terlambat Masuk";
- $poin = $setting_poin->jam_masuk;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- }
- }
- //-----CASE 19.1-----
- if(strtotime($after_jam_masuk) < strtotime("24:00:00")) {
- if(strtotime($before_jam_istirahat_mulai) >= strtotime("24:00:00")) {
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime("+24 hours", strtotime($after_jam_masuk))) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($before_jam_istirahat_mulai)))) {
- $slotjam = "Terlambat Masuk";
- $poin = $setting_poin->jam_masuk;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime($after_jam_masuk)) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($before_jam_istirahat_mulai)))) {
- $slotjam = "Terlambat Masuk";
- $poin = $setting_poin->jam_masuk;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- } elseif(strtotime($before_jam_istirahat_mulai) < strtotime("24:00:00")) {
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime("+24 hours", strtotime($after_jam_masuk))) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($before_jam_istirahat_mulai)))) {
- $slotjam = "Terlambat Masuk";
- $poin = $setting_poin->jam_masuk;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime($after_jam_masuk)) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($before_jam_istirahat_mulai)))) {
- $slotjam = "Terlambat Masuk";
- $poin = $setting_poin->jam_masuk;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- }
- }
- //-----CASE 20-----
- if(strtotime($before_jam_masuk) == strtotime("00:00:00")) {
- if((strtotime($jamtap) > strtotime($before_jam_masuk)) && (strtotime($jamtap) < strtotime($before_jam_istirahat_mulai))) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } elseif((strtotime($jamtap) == strtotime($before_jam_masuk)) || (strtotime($jamtap) == strtotime($after_jam_pulang))) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- }
- if(strtotime($jam_masuk) == strtotime("00:00:00")) {
- //-----CASE 21-----
- if(strtotime($before_jam_masuk) < strtotime("00:00:00")) {
- if((strtotime($jamtap) > strtotime($before_jam_masuk)) && (strtotime($jamtap) < strtotime($before_jam_istirahat_mulai))) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } elseif((strtotime($jamtap) == strtotime($before_jam_istirahat_mulai))) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- }
- }
- }
- }
- //-----CASE D-----
- if(strtotime($jam_masuk) == strtotime("00:00:00")) {
- //-----CASE 22-----
- if((strtotime($jamtap) < strtotime("00:00:00")) == false) {
- if((strtotime($jamtap) > strtotime("+24 hours", strtotime($before_jam_masuk))) && (strtotime($jamtap) < strtotime("+24 hours", strtotime($after_jam_masuk)))) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } else if((strtotime("+24 hours",strtotime($jamtap)) < strtotime("+24 hours", strtotime($after_jam_masuk)))) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } else if((strtotime($jamtap) == strtotime("+24 hours", strtotime($before_jam_masuk))) || (strtotime($jamtap) == strtotime("+24 hours", strtotime($after_jam_masuk)))) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- }
- }
- //-----CASE E-----
- if(strtotime($jam_pulang) == strtotime("00:00:00")) {
- //-----CASE 23-----
- if((strtotime($jamtap) < strtotime("00:00:00")) == false) {
- if((strtotime($jamtap) > strtotime("+24 hours", strtotime($before_jam_pulang))) && (strtotime($jamtap) < strtotime("+24 hours", strtotime($after_jam_pulang)))) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } else if((strtotime("+24 hours",strtotime($jamtap)) < strtotime("+24 hours", strtotime($after_jam_pulang)))) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- } else if((strtotime($jamtap) == strtotime("+24 hours", strtotime($before_jam_pulang))) || (strtotime($jamtap) == strtotime("+24 hours", strtotime($after_jam_pulang)))) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[0]->source;
- $source_id = $jadwal[0]->source_id;
- }
- }
- }
- }
- $presensi = array(
- 'karyawan_id' => $id_karyawan,
- 'nama_karyawan' => $nama_karyawan,
- 'group_karyawan' => $group_karyawan,
- 'group_id' => $karyawan->group_id ? $karyawan->group_id : null,
- 'jadwal_id' => $karyawan->jadwal_ngeplus_id ? $karyawan->jadwal_ngeplus_id : null,
- 'setting_presensi_id' => 1,
- 'tanggal_dan_waktu_tap' => Carbon::parse($tanggal_waktu_tap)->toDateTimeString(),
- 'tanggal_dan_waktu_tap_static' => $tanggal_waktu_tap_static,
- 'poin' => $poin,
- 'status' => isset($jadwal[0]) ? $jadwal[0]->status : null,
- 'slotjam' => $slotjam,
- 'source' => $source,
- 'source_id' => $source_id
- );
- $slotjamkomparasi = $slotjam;
- if($slotjamkomparasi == 'Terlambat Masuk') {
- $slotjamkomparasi = 'Masuk';
- }
- $oldpresensi = Presensi::whereDate('tanggal_dan_waktu_tap', '=', Carbon::parse($tanggal_waktu_tap)->toDateString())
- ->where('status', $jadwal[0]->status)
- ->where('slotjam', 'like', '%'.$slotjamkomparasi)
- ->where('source', $jadwal[0]->source)
- ->where('source_id', $jadwal[0]->source_id)
- ->first();
- if(isset($oldpresensi)) {
- // $oldpresensi->update($presensi);
- $data_terinput = $data_terinput + 0;
- } else if(Carbon::parse(Carbon::parse($tanggal_waktu_tap)->toDateString())->isBetween(strval($jadwal[0]->tanggal_mulai), strval($jadwal[0]->tanggal_selesai))) {
- // cek jam masuk
- if((($slotjam == 'Masuk') || ($slotjam == 'Terlambat Masuk'))) {
- Presensi::create($presensi);
- $data_terinput = $data_terinput + 1;
- $status_final = $presensi['slotjam'];
- // input harian ngeplus
- self::inputHarianNgeplus($presensi, $presensi['source'], $presensi['source_id']);
- // input ke mingguanjam ngeplus
- self::inputMingguanJamNgeplus($presensi, $presensi['source'], $presensi['source_id']);
- // input ke kph
- self::inputPresensiToKph($presensi, 'nge-plus', $presensi['source'], $presensi['source_id']);
- }
- // cek jam istirahat mulai
- if($slotjam == 'Istirahat Mulai') {
- Presensi::create($presensi);
- $data_terinput = $data_terinput + 1;
- $status_final = $presensi['slotjam'];
- // input harian ngeplus
- self::inputHarianNgeplus($presensi, $presensi['source'], $presensi['source_id']);
- // input ke mingguanjam ngeplus
- self::inputMingguanJamNgeplus($presensi, $presensi['source'], $presensi['source_id']);
- // input ke kph
- self::inputPresensiToKph($presensi, 'nge-plus', $presensi['source'], $presensi['source_id']);
- }
- // cek jam istirahat selesai
- if($slotjam == 'Istirahat Selesai') {
- Presensi::create($presensi);
- $data_terinput = $data_terinput + 1;
- $status_final = $presensi['slotjam'];
- // input harian ngeplus
- self::inputHarianNgeplus($presensi, $presensi['source'], $presensi['source_id']);
- // input ke mingguanjam ngeplus
- self::inputMingguanJamNgeplus($presensi, $presensi['source'], $presensi['source_id']);
- // input ke kph
- self::inputPresensiToKph($presensi, 'nge-plus', $presensi['source'], $presensi['source_id']);
- }
- // cek jam pulang
- if($slotjam == 'Pulang') {
- Presensi::create($presensi);
- $data_terinput = $data_terinput + 1;
- $status_final = $presensi['slotjam'];
- // input harian ngeplus
- self::inputHarianNgeplus($presensi, $presensi['source'], $presensi['source_id']);
- // input ke mingguanjam ngeplus
- self::inputMingguanJamNgeplus($presensi, $presensi['source'], $presensi['source_id']);
- // input ke kph
- self::inputPresensiToKph($presensi, 'nge-plus', $presensi['source'], $presensi['source_id']);
- }
- }
- // }
- // cek jadwal lebih dari 1
- } else if(count($jadwal) > 1) {
- for($iz = 0; $iz < count($jadwal); $iz++) {
- // $existing_presensi_2 = Presensi::where('tanggal_dan_waktu_tap', $row[$i]['DateTime'][0])->
- // where('karyawan_id', $row[$i]['PIN'][0])->
- // // where('source', $jadwal[$iz]->source)->
- // // where('source_id', $jadwal[$iz]->source_id)->
- // // where('jadwal_id', $jadwal[$iz]->jadwal_id)->
- // first();
- // if(!isset($existing_presensi_2)) {
- $tanggal_mulai = Carbon::parse($jadwal[$iz]->tanggal_mulai)->format('Y-m-d');
- $tanggal_selesai = Carbon::parse($jadwal[$iz]->tanggal_selesai)->format('Y-m-d');
- $hariini = Carbon::now()->format('Y-m-d');
- $jam_masuk = $jadwal[$iz]->jam_masuk;
- $jam_istirahat_mulai = $jadwal[$iz]->jam_istirahat_mulai;
- $jam_istirahat_selesai = $jadwal[$iz]->jam_istirahat_selesai;
- $jam_pulang = $jadwal[$iz]->jam_pulang;
- /**
- * Cek Jadwal sebelumnya dan selanjutnya untuk menentukan jam masuk berikutnya
- */
- $after_jam_pulang_next = null;
- $before_jam_masuk_previous = null;
- if(count($jadwal) > 1) {
- if($iz == 0) {
- //ketika jadwal di awal / jadwal pertama
- $after_jam_pulang_next = date("H:i:s",strtotime($jadwal[$iz + 1]->jam_masuk)-$toleransi);
- $before_jam_masuk_previous = date("H:i:s",strtotime($jadwal[$iz]->$jam_masuk)-$setting_datang_awal);
- } else if($iz > 0) {
- $jarak_pulang = 0;
- $jarak_masuk = 0;
- // ketika jadwal di tengah tengah / bkn jadwal pertama atw jadwal terakhir
- if(isset($jadwal[$iz + 1])) {
- // ambil jarak pulang
- $jarak_pulang = abs(strtotime($jadwal[$iz]->jam_pulang) - strtotime($jadwal[$iz + 1]->jam_masuk)) / 60;
- // ambil jarak masuk
- $jarak_masuk = abs(strtotime($jadwal[$iz]->jam_masuk) - strtotime($jadwal[$iz - 1]->jam_pulang)) / 60;
- if($jarak_masuk > 150) {
- // jika jaraknya >= 2.5 jam maka pake datang awal
- $before_jam_masuk_previous = date("H:i:s",strtotime($jadwal[$iz]->jam_masuk)-$setting_datang_awal);
- } else if($jarak_masuk <= 150) {
- // jika jaraknya < 2.5 jam maka pake toleransi
- $before_jam_masuk_previous1 = date("H:i:s",strtotime($jadwal[$iz]->jam_masuk)-$toleransi);
- $before_jam_masuk_previous = date("H:i:s",strtotime("+1 second",strtotime($before_jam_masuk_previous1)));
- }
- if($jarak_pulang > 150) {
- // jika jaraknya >= 2.5 jam maka patok + 2 jam
- $after_jam_pulang_next = date("H:i:s",strtotime("+2 hours", strtotime($jadwal[$iz]->jam_pulang)));
- } else if($jarak_pulang <= 150) {
- // jika jaraknya < 2.5 jam maka pake toleransi
- $after_jam_pulang_next = date("H:i:s",strtotime($jadwal[$iz]->jam_pulang)+$toleransi);
- }
- // bwt jadwal di ujung
- } else if(!isset($jadwal[$iz + 1])) {
- // ambil jarak pulang
- $jarak_pulang = abs(strtotime($jadwal[$iz]->jam_pulang) - strtotime($jadwal[$iz + 1]->jam_masuk)) / 60;
- // ambil jarak masuk
- $jarak_masuk = abs(strtotime($jadwal[$iz]->jam_masuk) - strtotime($jadwal[$iz - 1]->jam_pulang)) / 60;
- $after_jam_pulang_next = date("H:i:s",strtotime("+5 hours", strtotime($jadwal[$iz]->jam_pulang)));
- if($jarak_masuk > 150) {
- // jika jaraknya >= 2.5 jam maka pake datang awal
- $before_jam_masuk_previous = date("H:i:s",strtotime($jadwal[$iz]->jam_masuk)-$setting_datang_awal);
- } else if($jarak_pulang <= 150) {
- // jika jaraknya < 2.5 jam maka pake toleransi
- $before_jam_masuk_previous1 = date("H:i:s",strtotime($jadwal[$iz]->jam_masuk)-$toleransi);
- $before_jam_masuk_previous = date("H:i:s",strtotime("+1 second",strtotime($before_jam_masuk_previous1)));
- }
- }
- }
- }
- $closing_time = ClosingTime::find(1);
- $setting_closing_time = strtotime($closing_time->jangka_waktu)-strtotime("00:00:00");
- $datang_awal = SettingDatangAwalKhusus::find(1);
- $setting_datang_awal = strtotime($datang_awal->datang_awal)-strtotime("00:00:00");
- $setting_presensi = SettingPresensi::find(1);
- if(isset($setting_presensi->toleransi_keterlambatan)) {
- $toleransi = strtotime($setting_presensi->toleransi_keterlambatan)-strtotime("00:00:00");
- // $toleransi_min = strtotime("+1 minutes",strtotime($setting_presensi->toleransi_keterlambatan))-strtotime("00:00:00");
- $max_istirahat_mulai = strtotime($jam_istirahat_selesai)-$toleransi-strtotime("00:00:00");
- $max_istirahat_selesai = strtotime($jam_pulang)-$toleransi-strtotime("00:00:00");
- // dd($max_istirahat_selesai);
- // $before_jam_masuk = date("H:i:s",strtotime($jam_masuk)-$setting_datang_awal);
- $before_jam_masuk = $before_jam_masuk_previous;
- $after_jam_masuk = date("H:i:s",strtotime($jam_masuk)+$toleransi);
- $before_jam_istirahat_mulai = date("H:i:s",strtotime($jam_istirahat_mulai)-$toleransi);
- // $after_jam_istirahat_mulai = date("H:i:s",strtotime($jam_istirahat_selesai)-$toleransi_min);
- $before_jam_istirahat_selesai = date("H:i:s",strtotime($jam_istirahat_selesai)-$toleransi);
- // $after_jam_istirahat_selesai = date("H:i:s",strtotime($jam_pulang)-$toleransi_min);
- $before_jam_pulang = date("H:i:s",strtotime($jam_pulang)-$toleransi);
- // $after_jam_pulang = date("H:i:s",strtotime($jam_pulang)+$setting_closing_time);
- $after_jam_pulang = $after_jam_pulang_next;
- if(($jamtap > $before_jam_masuk) && ($jamtap < $after_jam_masuk)) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } elseif(($jamtap == $before_jam_masuk) || ($jamtap == $after_jam_masuk)) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } elseif(($jamtap > $after_jam_masuk) && ($jamtap < $before_jam_istirahat_mulai)) {
- $slotjam = "Terlambat Masuk";
- $poin = $setting_poin->jam_masuk;
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } elseif(($jamtap > $before_jam_istirahat_mulai) && ($jamtap < $before_jam_istirahat_selesai)) {
- $slotjam = "Istirahat Mulai";
- $poin = $setting_poin->jam_mulai_istirahat;
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } elseif(($jamtap == $before_jam_istirahat_mulai)) {
- $slotjam = "Istirahat Mulai";
- $poin = $setting_poin->jam_mulai_istirahat;
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } elseif(($jamtap > $before_jam_istirahat_selesai) && ($jamtap < $before_jam_pulang)) {
- $slotjam = "Istirahat Selesai";
- $poin = $setting_poin->jam_mulai_istirahat;
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } elseif($jamtap == $before_jam_istirahat_selesai) {
- $slotjam = "Istirahat Selesai";
- $poin = $setting_poin->jam_mulai_istirahat;
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } elseif(($jamtap > $before_jam_pulang) && ($jamtap < $after_jam_pulang)) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } elseif(($jamtap == $before_jam_pulang) || ($jamtap == $after_jam_pulang)) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- //-----CASE A-----
- if(strtotime($jam_pulang) < strtotime($jam_istirahat_selesai)) {
- // dd(strtotime("00:00:00"));
- // Jika jam tap < jam 12 malam
- if((strtotime($jamtap) < strtotime("24:00:00"))) {
- //-----CASE 1-----
- if((strtotime($jamtap) > strtotime($before_jam_istirahat_selesai)) && (strtotime($jamtap) < strtotime("+24 hours", strtotime($before_jam_pulang)))) {
- $slotjam = "Istirahat Selesai";
- $poin = $setting_poin->jam_selesai_istirahat;
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } elseif(($jamtap == $before_jam_istirahat_selesai)) {
- $slotjam = "Istirahat Selesai";
- $poin = $setting_poin->jam_selesai_istirahat;
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- //-----CASE 2-----
- if(strtotime("+24 hours", strtotime($before_jam_pulang)) < strtotime("24:00:00")) {
- if(strtotime($jamtap) > strtotime("+24 hours", strtotime($before_jam_pulang)) && (strtotime($jamtap) < strtotime("+24 hours", strtotime($after_jam_pulang)))) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } elseif((strtotime($jamtap) == strtotime("+24 hours", strtotime($before_jam_pulang))) || (strtotime($jamtap) == strtotime("+24 hours", strtotime($after_jam_pulang)))) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- }
- }
- // Jika jam tap >= jam 12 malam
- if((strtotime($jamtap) >= strtotime("00:00:00"))) {
- // dd(strtotime("+24 hours", strtotime($jamtap)) > strtotime("+24 hours", strtotime($before_jam_pulang)) && strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($after_jam_pulang)));
- //-----CASE 3-----
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime($before_jam_istirahat_selesai)) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($before_jam_pulang)))) {
- $slotjam = "Istirahat Selesai";
- $poin = $setting_poin->jam_selesai_istirahat;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } elseif(($jamtap == $before_jam_istirahat_selesai)) {
- $slotjam = "Istirahat Selesai";
- $poin = $setting_poin->jam_selesai_istirahat;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- //-----CASE 4-----
- if(strtotime("+24 hours", strtotime($before_jam_pulang)) >= strtotime("00:00:00")) {
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime("+24 hours", strtotime($before_jam_pulang))) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($after_jam_pulang)))) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } elseif((strtotime("+24 hours", strtotime($jamtap)) == strtotime("+24 hours", strtotime($before_jam_pulang))) || (strtotime($jamtap) == strtotime("+24 hours", strtotime($after_jam_pulang)))) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- }
- //-----CASE 5-----
- if(strtotime("+24 hours", strtotime($before_jam_pulang)) < strtotime("24:00:00")) {
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime("+24 hours", strtotime($before_jam_pulang))) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($after_jam_pulang)))) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } elseif((strtotime($jamtap) == strtotime($before_jam_pulang)) || (strtotime($jamtap) == strtotime("+24 hours", strtotime($after_jam_pulang)))) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- }
- //-----CASE 6-----
- if(strtotime($after_jam_pulang) == strtotime("00:00:00")) {
- if((strtotime($jamtap) > strtotime($before_jam_pulang)) && (strtotime($jamtap) < strtotime("+24 hours", strtotime($after_jam_pulang)))) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } elseif((strtotime($jamtap) == strtotime($before_jam_pulang)) || (strtotime($jamtap) == strtotime("+24 hours", strtotime($after_jam_pulang)))) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- }
- }
- }
- //-----CASE B-----
- if(strtotime($jam_istirahat_selesai) < strtotime($jam_istirahat_mulai)) {
- // dd(strtotime("00:00:00"));
- // Jika jam tap < jam 12 malam
- if((strtotime($jamtap) < strtotime("24:00:00"))) {
- //-----CASE 7-----
- if((strtotime($jamtap) > strtotime($before_jam_istirahat_mulai)) && (strtotime($jamtap) < strtotime("+24 hours", strtotime($before_jam_istirahat_selesai)))) {
- $slotjam = "Istirahat Mulai";
- $poin = $setting_poin->jam_mulai_istirahat;
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } elseif(($jamtap == $before_jam_istirahat_mulai)) {
- $slotjam = "Istirahat Mulai";
- $poin = $setting_poin->jam_mulai_istirahat;
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- //-----CASE 8-----
- if(strtotime("+24 hours", strtotime($before_jam_istirahat_selesai)) < strtotime("24:00:00")) {
- if(strtotime($jamtap) > strtotime("+24 hours", strtotime($before_jam_istirahat_selesai)) && (strtotime($jamtap) < strtotime("+24 hours", strtotime($before_jam_pulang)))) {
- $slotjam = "Istirahat Selesai";
- $poin = $setting_poin->jam_selesai_istirahat;
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } elseif((strtotime($jamtap) == strtotime("+24 hours", strtotime($before_jam_istirahat_selesai)))) {
- $slotjam = "Istirahat Selesai";
- $poin = $setting_poin->jam_selesai_istirahat;
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- }
- }
- // Jika jam tap >= jam 12 malam
- if((strtotime($jamtap) >= strtotime("00:00:00"))) {
- //-----CASE 9-----
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime($before_jam_istirahat_mulai)) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($before_jam_istirahat_selesai)))) {
- $slotjam = "Istirahat Mulai";
- $poin = $setting_poin->jam_mulai_istirahat;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } elseif(($jamtap == $before_jam_istirahat_mulai)) {
- $slotjam = "Istirahat Mulai";
- $poin = $setting_poin->jam_mulai_istirahat;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- //-----CASE 10-----
- if(strtotime("+24 hours", strtotime($before_jam_istirahat_selesai)) >= strtotime("00:00:00")) {
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime("+24 hours", strtotime($before_jam_istirahat_selesai))) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($before_jam_pulang)))) {
- $slotjam = "Istirahat Selesai";
- $poin = $setting_poin->jam_selesai_istirahat;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } elseif((strtotime("+24 hours", strtotime($jamtap)) == strtotime("+24 hours", strtotime($before_jam_istirahat_selesai)))) {
- $slotjam = "Istirahat Selesai";
- $poin = $setting_poin->jam_selesai_istirahat;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- }
- //-----CASE 11-----
- if(strtotime("+24 hours", strtotime($before_jam_istirahat_selesai)) < strtotime("24:00:00")) {
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime("+24 hours", strtotime($before_jam_istirahat_selesai))) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($before_jam_pulang)))) {
- $slotjam = "Istirahat Selesai";
- $poin = $setting_poin->jam_selesai_istirahat;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } elseif((strtotime($jamtap) == strtotime($before_jam_istirahat_selesai))) {
- $slotjam = "Istirahat Selesai";
- $poin = $setting_poin->jam_selesai_istirahat;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- }
- }
- }
- //-----CASE C-----
- if(strtotime($jam_istirahat_mulai) < strtotime($jam_masuk)) {
- // dd(strtotime("00:00:00"));
- // Jika jam tap < jam 12 malam
- if((strtotime($jamtap) < strtotime("24:00:00"))) {
- //-----CASE 12-----
- if((strtotime($jamtap) > strtotime($before_jam_masuk)) && (strtotime($jamtap) < strtotime("+24 hours", strtotime($before_jam_istirahat_mulai)))) {
- if((strtotime($jamtap) > strtotime($before_jam_masuk)) && (strtotime($jamtap) < strtotime($after_jam_masuk))) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- if((strtotime($jamtap) > strtotime($before_jam_masuk)) && (strtotime($jamtap) < strtotime("+24 hours", strtotime($after_jam_masuk)))) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- if((strtotime("+24 hours", strtotime($jamtap)) == strtotime("24:00:00"))) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- if((strtotime($jamtap) < strtotime("24:00:00")) && (strtotime($jamtap) > strtotime($before_jam_masuk))) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime("24:00:00")) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($after_jam_masuk)))) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- }
- if((strtotime($jamtap) > strtotime($after_jam_masuk)) && (strtotime($jamtap) < strtotime("+24 hours", strtotime($before_jam_istirahat_mulai)))) {
- $slotjam = "Terlambat Masuk";
- $poin = $setting_poin->jam_masuk;
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- if((strtotime("+24 hours", strtotime($jamtap)) == strtotime("24:00:00"))) {
- $slotjam = "Terlambat Masuk";
- $poin = $setting_poin->jam_masuk;
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- if((strtotime($jamtap) < strtotime("24:00:00")) && (strtotime($jamtap) > strtotime($after_jam_masuk))) {
- $slotjam = "Terlambat Masuk";
- $poin = $setting_poin->jam_masuk;
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime("24:00:00")) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($before_jam_istirahat_mulai)))) {
- $slotjam = "Terlambat Masuk";
- $poin = $setting_poin->jam_masuk;
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- }
- } elseif(($jamtap == $before_jam_masuk)) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- //-----CASE 13-----
- if(strtotime("+24 hours", strtotime($before_jam_istirahat_mulai)) < strtotime("24:00:00")) {
- if(strtotime($jamtap) > strtotime("+24 hours", strtotime($before_jam_istirahat_mulai)) && (strtotime($jamtap) < strtotime("+24 hours", strtotime($after_jam_istirahat_selesai)))) {
- $slotjam = "Istirahat Mulai";
- $poin = $setting_poin->jam_mulai_istirahat;
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } elseif((strtotime($jamtap) == strtotime("+24 hours", strtotime($before_jam_istirahat_mulai)))) {
- $slotjam = "Istirahat Mulai";
- $poin = $setting_poin->jam_mulai_istirahat;
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- }
- //-----CASE 14-----
- if(strtotime($after_jam_masuk) < strtotime("24:00:00")) {
- if(strtotime($before_jam_istirahat_mulai) < strtotime("24:00:00")) {
- if((strtotime($jamtap) > strtotime($after_jam_masuk)) && (strtotime($jamtap) < strtotime($before_jam_istirahat_mulai))) {
- $slotjam = "Terlambat Masuk";
- $poin = $setting_poin->jam_masuk;
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- }
- }
- if(strtotime($jam_masuk) == strtotime("00:00:00")) {
- //-----CASE 15-----
- if(strtotime($before_jam_masuk) < strtotime("00:00:00")) {
- if((strtotime($jamtap) > strtotime("+24 hours", strtotime($before_jam_masuk))) && (strtotime($jamtap) < strtotime("+24 hours", strtotime($after_jam_masuk)))) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } elseif((strtotime($jamtap) == strtotime("+24 hours", strtotime($before_jam_masuk)))) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- }
- }
- }
- // Jika jam tap >= jam 12 malam
- if((strtotime($jamtap) >= strtotime("00:00:00"))) {
- // dd(strtotime("+24 hours", strtotime($jamtap)) > strtotime("+24 hours", strtotime($before_jam_pulang)) && strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($after_jam_pulang)));
- //-----CASE 16----
- if((strtotime("+24 hours", strtotime($jamtap)) < strtotime($after_jam_masuk)) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($before_jam_istirahat_mulai)))) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- if(($jamtap == $before_jam_masuk)) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- //-----CASE 17-----
- if(strtotime("+24 hours", strtotime($before_jam_istirahat_mulai)) >= strtotime("00:00:00")) {
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime("+24 hours", strtotime($before_jam_istirahat_mulai))) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($before_jam_istirahat_selesai)))) {
- $slotjam = "Istirahat Mulai";
- $poin = $setting_poin->jam_mulai_istirahat;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } elseif((strtotime("+24 hours", strtotime($jamtap)) == strtotime("+24 hours", strtotime($before_jam_istirahat_mulai)))) {
- $slotjam = "Istirahat Mulai";
- $poin = $setting_poin->jam_mulai_istirahat;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- }
- if(strtotime("+24 hours", strtotime($before_jam_istirahat_selesai)) >= strtotime("00:00:00")) {
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime("+24 hours", strtotime($before_jam_istirahat_selesai))) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($before_jam_pulang)))) {
- $slotjam = "Istirahat Selesai";
- $poin = $setting_poin->jam_selesai_istirahat;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } elseif((strtotime("+24 hours", strtotime($jamtap)) == strtotime("+24 hours", strtotime($before_jam_istirahat_selesai)))) {
- $slotjam = "Istirahat Selesai";
- $poin = $setting_poin->jam_selesai_istirahat;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- }
- if(strtotime("+24 hours", strtotime($before_jam_pulang)) >= strtotime("00:00:00")) {
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime("+24 hours", strtotime($before_jam_pulang))) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($after_jam_pulang)))) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } elseif((strtotime("+24 hours", strtotime($jamtap)) == strtotime("+24 hours", strtotime($before_jam_pulang)))) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- }
- //-----CASE 18-----
- if(strtotime("+24 hours", strtotime($before_jam_istirahat_mulai)) < strtotime("24:00:00")) {
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime("+24 hours", strtotime($before_jam_istirahat_mulai))) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($before_jam_istirahat_selesai)))) {
- $slotjam = "Istirahat Mulai";
- $poin = $setting_poin->jam_mulai_istirahat;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } elseif((strtotime($jamtap) == strtotime($before_jam_istirahat_mulai))) {
- $slotjam = "Istirahat Mulai";
- $poin = $setting_poin->jam_mulai_istirahat;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- }
- if(strtotime("+24 hours", strtotime($before_jam_istirahat_selesai)) < strtotime("24:00:00")) {
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime("+24 hours", strtotime($before_jam_istirahat_selesai))) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($before_jam_pulang)))) {
- $slotjam = "Istirahat Selesai";
- $poin = $setting_poin->jam_selesai_istirahat;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } elseif((strtotime($jamtap) == strtotime($before_jam_istirahat_selesai))) {
- $slotjam = "Istirahat Selesai";
- $poin = $setting_poin->jam_selesai_istirahat;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- }
- if(strtotime("+24 hours", strtotime($before_jam_pulang)) < strtotime("24:00:00")) {
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime("+24 hours", strtotime($before_jam_pulang))) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($after_jam_pulang)))) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } elseif((strtotime($jamtap) == strtotime($before_jam_pulang))) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- }
- //-----CASE 19-----
- if(strtotime($after_jam_masuk) >= strtotime("00:00:00")) {
- if(strtotime($before_jam_istirahat_mulai) >= strtotime("24:00:00")) {
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime("+24 hours", strtotime($after_jam_masuk))) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($before_jam_istirahat_mulai)))) {
- $slotjam = "Terlambat Masuk";
- $poin = $setting_poin->jam_masuk;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- }
- }
- //-----CASE 19.1-----
- if(strtotime($after_jam_masuk) < strtotime("24:00:00")) {
- if(strtotime($before_jam_istirahat_mulai) >= strtotime("24:00:00")) {
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime("+24 hours", strtotime($after_jam_masuk))) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($before_jam_istirahat_mulai)))) {
- $slotjam = "Terlambat Masuk";
- $poin = $setting_poin->jam_masuk;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime($after_jam_masuk)) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($before_jam_istirahat_mulai)))) {
- $slotjam = "Terlambat Masuk";
- $poin = $setting_poin->jam_masuk;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- } elseif(strtotime($before_jam_istirahat_mulai) < strtotime("24:00:00")) {
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime("+24 hours", strtotime($after_jam_masuk))) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($before_jam_istirahat_mulai)))) {
- $slotjam = "Terlambat Masuk";
- $poin = $setting_poin->jam_masuk;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- if((strtotime("+24 hours", strtotime($jamtap)) > strtotime($after_jam_masuk)) && (strtotime("+24 hours", strtotime($jamtap)) < strtotime("+24 hours", strtotime($before_jam_istirahat_mulai)))) {
- $slotjam = "Terlambat Masuk";
- $poin = $setting_poin->jam_masuk;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- }
- }
- //-----CASE 20-----
- if(strtotime($before_jam_masuk) == strtotime("00:00:00")) {
- if((strtotime($jamtap) > strtotime($before_jam_masuk)) && (strtotime($jamtap) < strtotime($before_jam_istirahat_mulai))) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } elseif((strtotime($jamtap) == strtotime($before_jam_masuk)) || (strtotime($jamtap) == strtotime($after_jam_pulang))) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- }
- if(strtotime($jam_masuk) == strtotime("00:00:00")) {
- //-----CASE 21-----
- if(strtotime($before_jam_masuk) < strtotime("00:00:00")) {
- if((strtotime($jamtap) > strtotime($before_jam_masuk)) && (strtotime($jamtap) < strtotime($before_jam_istirahat_mulai))) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } elseif((strtotime($jamtap) == strtotime($before_jam_istirahat_mulai))) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- }
- }
- }
- }
- //-----CASE D-----
- if(strtotime($jam_masuk) == strtotime("00:00:00")) {
- //-----CASE 22-----
- if((strtotime($jamtap) < strtotime("00:00:00")) == false) {
- if((strtotime($jamtap) > strtotime("+24 hours", strtotime($before_jam_masuk))) && (strtotime($jamtap) < strtotime("+24 hours", strtotime($after_jam_masuk)))) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } else if((strtotime("+24 hours",strtotime($jamtap)) < strtotime("+24 hours", strtotime($after_jam_masuk)))) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } else if((strtotime($jamtap) == strtotime("+24 hours", strtotime($before_jam_masuk))) || (strtotime($jamtap) == strtotime("+24 hours", strtotime($after_jam_masuk)))) {
- $slotjam = "Masuk";
- $poin = $setting_poin->jam_masuk;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- }
- }
- //-----CASE E-----
- if(strtotime($jam_pulang) == strtotime("00:00:00")) {
- //-----CASE 23-----
- if((strtotime($jamtap) < strtotime("00:00:00")) == false) {
- if((strtotime($jamtap) > strtotime("+24 hours", strtotime($before_jam_pulang))) && (strtotime($jamtap) < strtotime("+24 hours", strtotime($after_jam_pulang)))) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } else if((strtotime("+24 hours",strtotime($jamtap)) < strtotime("+24 hours", strtotime($after_jam_pulang)))) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- } else if((strtotime($jamtap) == strtotime("+24 hours", strtotime($before_jam_pulang))) || (strtotime($jamtap) == strtotime("+24 hours", strtotime($after_jam_pulang)))) {
- $slotjam = "Pulang";
- $poin = $setting_poin->jam_keluar;
- $tanggal_waktu_tap = Carbon::parse($tanggal_waktu_tap);
- $tanggal_waktu_tap->subDay();
- $source = $jadwal[$iz]->source;
- $source_id = $jadwal[$iz]->source_id;
- }
- }
- }
- }
- $presensi = array(
- 'karyawan_id' => $id_karyawan,
- 'nama_karyawan' => $nama_karyawan,
- 'group_karyawan' => $group_karyawan,
- 'group_id' => $karyawan->group_id ? $karyawan->group_id : null,
- 'jadwal_id' => $karyawan->jadwal_ngeplus_id ? $karyawan->jadwal_ngeplus_id : null,
- 'setting_presensi_id' => 1,
- 'tanggal_dan_waktu_tap' => Carbon::parse($tanggal_waktu_tap)->toDateTimeString(),
- 'tanggal_dan_waktu_tap_static' => $tanggal_waktu_tap_static,
- 'poin' => $poin,
- 'status' => isset($jadwal[$iz]) ? $jadwal[$iz]->status : null,
- 'slotjam' => $slotjam,
- 'source' => $source,
- 'source_id' => $source_id
- );
- $slotjamkomparasi = $slotjam;
- if($slotjamkomparasi == 'Terlambat Masuk') {
- $slotjamkomparasi = 'Masuk';
- }
- $oldpresensi = Presensi::whereDate('tanggal_dan_waktu_tap', '=', Carbon::parse($tanggal_waktu_tap)->toDateString())
- ->where('status', $jadwal[$iz]->status)
- ->where('slotjam', 'like', '%'.$slotjamkomparasi)
- ->where('source', $jadwal[$iz]->source)
- ->where('source_id', $jadwal[$iz]->source_id)
- ->first();
- if(isset($oldpresensi)) {
- // $oldpresensi->update($presensi);
- $data_terinput = $data_terinput + 0;
- } else if(Carbon::parse(Carbon::parse($tanggal_waktu_tap)->toDateString())->isBetween(strval($jadwal[$iz]->tanggal_mulai), strval($jadwal[$iz]->tanggal_selesai))) {
- // cek jam masuk
- if((($slotjam == 'Masuk') || ($slotjam == 'Terlambat Masuk'))) {
- Presensi::create($presensi);
- $data_terinput = $data_terinput + 1;
- $status_final = $presensi['slotjam'];
- // input harian ngeplus
- self::inputHarianNgeplus($presensi, $presensi['source'], $presensi['source_id']);
- // input ke mingguanjam ngeplus
- self::inputMingguanJamNgeplus($presensi, $presensi['source'], $presensi['source_id']);
- // input ke kph
- self::inputPresensiToKph($presensi, 'nge-plus', $presensi['source'], $presensi['source_id']);
- }
- // cek jam istirahat mulai
- if($slotjam == 'Istirahat Mulai') {
- Presensi::create($presensi);
- $data_terinput = $data_terinput + 1;
- $status_final = $presensi['slotjam'];
- // input harian ngeplus
- self::inputHarianNgeplus($presensi, $presensi['source'], $presensi['source_id']);
- // input ke mingguanjam ngeplus
- self::inputMingguanJamNgeplus($presensi, $presensi['source'], $presensi['source_id']);
- // input ke kph
- self::inputPresensiToKph($presensi, 'nge-plus', $presensi['source'], $presensi['source_id']);
- }
- // cek jam istirahat selesai
- if($slotjam == 'Istirahat Selesai') {
- Presensi::create($presensi);
- $data_terinput = $data_terinput + 1;
- $status_final = $presensi['slotjam'];
- // input harian ngeplus
- self::inputHarianNgeplus($presensi, $presensi['source'], $presensi['source_id']);
- // input ke mingguanjam ngeplus
- self::inputMingguanJamNgeplus($presensi, $presensi['source'], $presensi['source_id']);
- // input ke kph
- self::inputPresensiToKph($presensi, 'nge-plus', $presensi['source'], $presensi['source_id']);
- }
- // cek jam pulang
- if($slotjam == 'Pulang') {
- Presensi::create($presensi);
- $data_terinput = $data_terinput + 1;
- $status_final = $presensi['slotjam'];
- // input harian ngeplus
- self::inputHarianNgeplus($presensi, $presensi['source'], $presensi['source_id']);
- // input ke mingguanjam ngeplus
- self::inputMingguanJamNgeplus($presensi, $presensi['source'], $presensi['source_id']);
- // input ke kph
- self::inputPresensiToKph($presensi, 'nge-plus', $presensi['source'], $presensi['source_id']);
- }
- }
- }
- }
- // }
- }
- }
- }
- }
- }
- } catch (Exception $e) {
- echo $e->message;
- }
- // slotjam tidak dimasukan ke return krn tdk valid jika multijadwal hanya ambil slotjam terakhir
- // return response()->json(['status' => 200, 'message' => 'Data Terinput:' . $data_terinput, 'status_presensi' => $slotjam]);
- return response()->json(['status' => 200, 'message' => 'Data Terinput:' . $data_terinput]);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement