Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public function rekapbulanan(Request $request) {
- $bulan = date('m', strtotime($request->tanggal_periode));
- $tahun = date('Y', strtotime($request->tanggal_periode));
- $period = Carbon::parse($request->tanggal_periode)->toDateTimeString();
- // delete existing dashboard
- $queryDashboard = Dashboard::where('bulan', $bulan)->where('tahun', $tahun)->delete();
- // rekap kehadiran dari rutin
- $kalkulasi_poin_harian = KalkulasiPoinHarian::whereMonth('tanggal_hari_ini', $bulan)->get();
- foreach($kalkulasi_poin_harian as $kph) {
- $karyawan = Karyawan::find($kph->karyawan_id);
- // bikin entry kpb
- $kpb = KalkulasiPoinBulanan::whereMonth('tanggal_bulan_ini', $bulan)->where('karyawan_id', $kph->karyawan_id)->first();
- if($kpb != null) {
- $kpb->karyawan_id = $karyawan->id;
- $kpb->group_id = $karyawan->group_id;
- $kpb->nama = $karyawan->nama;
- $kpb->nama_group = $karyawan->nik;
- $kpb->tanggal_bulan_ini = $period;
- $kpb->kalkulasi_poin_rutin_bulanan += $kph->kalkulasi_poin_rutin;
- $kpb->save();
- } else {
- $kpb = new KalkulasiPoinBulanan();
- $kpb->karyawan_id = $karyawan->id;
- $kpb->group_id = $karyawan->group_id;
- $kpb->nama = $karyawan->nama;
- $kpb->nama_group = $karyawan->nik;
- $kpb->tanggal_bulan_ini = $period;
- $kpb->kalkulasi_poin_rutin_bulanan = $kph->kalkulasi_poin_rutin;
- $kpb->kalkulasi_poin_ngeplus_bulanan = 0;
- $kpb->kalkulasi_poin_shift1_extuder_bulanan = 0;
- $kpb->kalkulasi_poin_shift2_extuder_bulanan = 0;
- $kpb->kalkulasi_poin_shift3_extuder_bulanan = 0;
- $kpb->kalkulasi_poin_total_extuder_bulanan = 0;
- $kpb->tidak_hadir_bulanan = 0;
- $kpb->hadir = 0;
- $kpb->izin_bulanan = 0;
- $kpb->sakit_bulanan = 0;
- $kpb->cuti_bulanan = 0;
- $kpb->save();
- }
- }
- // rekap kehadiran dari ngeplus
- $harian_ngeplus = HarianNgeplus::whereMonth('tanggal', $bulan)->get();
- foreach($harian_ngeplus as $kph_ngeplus) {
- $karyawan = Karyawan::find($kph_ngeplus->karyawan_id);
- // bikin entry kpb
- $kpb = KalkulasiPoinBulanan::whereMonth('tanggal_bulan_ini', $bulan)->where('karyawan_id', $karyawan->id)->first();
- if($kpb != null) {
- $kpb->karyawan_id = $karyawan->id;
- $kpb->group_id = $karyawan->group_id;
- $kpb->nama = $karyawan->nama;
- $kpb->nama_group = $karyawan->nik;
- $kpb->tanggal_bulan_ini = $period;
- $kpb->kalkulasi_poin_ngeplus_bulanan += $kph_ngeplus->poin;
- $kpb->save();
- } else {
- $kpb = new KalkulasiPoinBulanan();
- $kpb->karyawan_id = $karyawan->id;
- $kpb->group_id = $karyawan->group_id;
- $kpb->nama = $karyawan->nama;
- $kpb->nama_group = $karyawan->nik;
- $kpb->tanggal_bulan_ini = $period;
- $kpb->kalkulasi_poin_rutin_bulanan = 0;
- $kpb->kalkulasi_poin_ngeplus_bulanan = $kph_ngeplus->poin;
- $kpb->kalkulasi_poin_shift1_extuder_bulanan = 0;
- $kpb->kalkulasi_poin_shift2_extuder_bulanan = 0;
- $kpb->kalkulasi_poin_shift3_extuder_bulanan = 0;
- $kpb->kalkulasi_poin_total_extuder_bulanan = 0;
- $kpb->tidak_hadir_bulanan = 0;
- $kpb->hadir = 0;
- $kpb->izin_bulanan = 0;
- $kpb->sakit_bulanan = 0;
- $kpb->cuti_bulanan = 0;
- $kpb->save();
- }
- }
- // rekap kehadiran dari extuder
- $harian_extuder = HarianExtuder::whereMonth('tanggal_hari_ini', $bulan)->get();
- foreach($harian_extuder as $kph_extuder) {
- $karyawan = Karyawan::find($kph_extuder->karyawan_id);
- // bikin entry kpb
- $kpb = KalkulasiPoinBulanan::whereMonth('tanggal_bulan_ini', $bulan)->where('karyawan_id', $karyawan->id)->first();
- if($kpb != null) {
- $kpb->karyawan_id = $karyawan->id;
- $kpb->group_id = $karyawan->group_id;
- $kpb->nama = $karyawan->nama;
- $kpb->nama_group = $karyawan->nik;
- $kpb->tanggal_bulan_ini = $period;
- $kpb->kalkulasi_poin_shift1_extuder_bulanan += $kph_extuder->kalkulasi_poin_shift1_extuder;
- $kpb->kalkulasi_poin_shift2_extuder_bulanan += $kph_extuder->kalkulasi_poin_shift2_extuder;
- $kpb->kalkulasi_poin_shift3_extuder_bulanan += $kph_extuder->kalkulasi_poin_shift3_extuder;
- $kpb->save();
- } else {
- $kpb = new KalkulasiPoinBulanan();
- $kpb->karyawan_id = $karyawan->id;
- $kpb->group_id = $karyawan->group_id;
- $kpb->nama = $karyawan->nama;
- $kpb->nama_group = $karyawan->nik;
- $kpb->tanggal_bulan_ini = $period;
- $kpb->kalkulasi_poin_rutin_bulanan = 0;
- $kpb->kalkulasi_poin_ngeplus_bulanan = 0;
- $kpb->kalkulasi_poin_shift1_extuder_bulanan += $kph_extuder->kalkulasi_poin_shift1_extuder;
- $kpb->kalkulasi_poin_shift2_extuder_bulanan += $kph_extuder->kalkulasi_poin_shift2_extuder;
- $kpb->kalkulasi_poin_shift3_extuder_bulanan += $kph_extuder->kalkulasi_poin_shift3_extuder;
- $kpb->kalkulasi_poin_total_extuder_bulanan = 0;
- $kpb->tidak_hadir_bulanan = 0;
- $kpb->hadir = 0;
- $kpb->izin_bulanan = 0;
- $kpb->sakit_bulanan = 0;
- $kpb->cuti_bulanan = 0;
- $kpb->save();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement