Advertisement
vitareinforce

kotretan export

Feb 14th, 2024
13
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.26 KB | None | 0 0
  1. // pertama tambah handler bwt wajib pilih group
  2. if($group_id == '-') {
  3. alert()->warning('Peringatan', "Group wajib dipilih!")->persistent(true, false)->showConfirmButton('Okay', '#064a25');
  4. return redirect()->route('dashboard.index');
  5. }
  6.  
  7. // kemudian pecah dulu query nya di dalam subFuncPrepareDataKehadiranBulanan jadi ada 4 if dengan parameter tambahan id karyawan
  8. function subFuncPrepareDataKehadiranBulanan($bulan, $tahun, $id_group, $id_karyawan) {
  9. $data = null;
  10. $data_query = KalkulasiPoinBulanan::whereMonth('tanggal_bulan_ini', $bulan)->where('group_id', null)->whereYear('tanggal_bulan_ini', $tahun)->orderBy('nama_group', 'asc');
  11. if($id_group == "-" || $id_group == null) {
  12. $data = KalkulasiPoinBulanan::whereMonth('tanggal_bulan_ini', $bulan)->where('group_id', null)->whereYear('tanggal_bulan_ini', $tahun)->get();
  13. } else {
  14. $data = KalkulasiPoinBulanan::whereMonth('tanggal_bulan_ini', $bulan)->where('group_id', $id_group)->whereYear('tanggal_bulan_ini', $tahun)->get();
  15. }
  16.  
  17. if($group_id == "-" && $karyawan_id == '-'){
  18. $data = $data_query->get()
  19. } else if($group_id != "-" && $karyawan_id == '-') {
  20. $data = $data_query->where('group_id', $group_id)->get()
  21. } else if($group_id == "-" && $karyawan_id != '-') {
  22. $data = $data_query->where('karyawan_id', $karyawan_id)->get()
  23. } else if($group_id != "-" && $karyawan_id != '-') {
  24. $data = $data_query->where('group_id', $group_id)->where('karyawan_id', $karyawan_id)->get()
  25. }
  26.  
  27. foreach($data as $i) {
  28. $i->periode = $tahun."-".$bulan;
  29. $i->kalkulasi_poin_total_extuder_bulanan = $i->kalkulasi_poin_shift1_extuder_bulanan + $i->kalkulasi_poin_shift2_extuder_bulanan + $i->kalkulasi_poin_shift3_extuder_bulanan;
  30. $i->persentase = $i->hadir > 0 ? number_format(($i->hadir / (($i->hadir + ($i->tidak_hadir_bulanan - $i->cuti_bulanan - $i->izin_bulanan - $i->sakit_bulanan)))) * 100, 2) : 0;
  31. }
  32. return $data;
  33. }
  34.  
  35. // untuk tahunan juga berlaku hal yang sama
  36. function SubFuncPrepareDataKehadiranTahunan($tahun, $id_group, $id_karyawan) {
  37. $data = null;
  38. $data_query = KalkulasiPoinTahunan::whereYear('tanggal_tahun_ini', $tahun)->orderBy('nama_group', 'asc');
  39.  
  40. if($group_id == "-" && $karyawan_id == '-'){
  41. $data = $data_query->get()
  42. } else if($group_id != "-" && $karyawan_id == '-') {
  43. $data = $data_query->where('group_id', $group_id)->get()
  44. } else if($group_id == "-" && $karyawan_id != '-') {
  45. $data = $data_query->where('karyawan_id', $karyawan_id)->get()
  46. } else if($group_id != "-" && $karyawan_id != '-') {
  47. $data = $data_query->where('group_id', $group_id)->where('karyawan_id', $karyawan_id)->get()
  48. }
  49.  
  50. foreach($data as $i) {
  51. $i->tahun_hadir = $tahun;
  52. $i->kalkulasi_poin_total_extuder_tahunan = $i->kalkulasi_poin_shift1_extuder_tahunan + $i->kalkulasi_poin_shift2_extuder_tahunan + $i->kalkulasi_poin_shift3_extuder_tahunan;
  53. $i->persentase = $i->hadir > 0 ? number_format(($i->hadir / (($i->hadir + ($i->tidak_hadir_tahunan - $i->cuti_tahunan - $i->izin_tahunan - $i->sakit_tahunan)))) * 100, 2) : 0;
  54. }
  55. return $data;
  56. }
  57.  
  58. //sisanya panggil subfunction tersebut di fungsi export excel dan export pdf
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement