vitareinforce

cara ngumpulin data jadwal di data karyawan sebagai parent

Jan 21st, 2021 (edited)
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.36 KB | None | 0 0
  1. public function api()
  2. {
  3. $karyawan = Karyawan::with('presensis', 'group', 'settingpresensi')->orderBy('nama', 'ASC')->get();
  4. $result = array();
  5. $closingTime = "00:40:00";
  6. $queryClosingTime = ClosingTime::find(1)->jangka_waktu;
  7. if (isset($queryClosingTime)) {
  8. $closingTime = $queryClosingTime;
  9. }
  10. for ($i = 0; $i < count($karyawan); $i++) {
  11. $jadwalKaryawan = self::getJadwalKaryawan($karyawan[$i]->id);
  12. $jadwalGroup = null;
  13. if(isset($karyawan[$i]->group_id)) {
  14. $jadwalGroup = self::getJadwalGroup($karyawan[$i]->group_id);
  15. }
  16. $karyawan[$i]->setAttribute("closing_time", $closingTime);
  17. $karyawan[$i]->setAttribute("jadwal_karyawan", $jadwalKaryawan);
  18. $karyawan[$i]->setAttribute("jadwal_group", $jadwalGroup);
  19. if (isset($karyawan[$i]->jadwal_id) || isset($karyawan[$i]->jadwal_group_id)) {
  20. array_push($result, $karyawan[$i]);
  21. }
  22. }
  23. return Response::json($result);
  24. }
  25.  
  26. public function getJadwalKaryawan($id) {
  27. $jadwal_masuk = JadwalHariKerja::where('karyawan_id', '=', $id)->get()->toArray();
  28. $jadwal_izin = JadwalIzin::where('karyawan_id', '=', $id)->get()->toArray();
  29. $jadwal_libur = JadwalLibur::where('karyawan_id', '=', $id)->get()->toArray();
  30. $jadwal_ngeplus = JadwalNgeplus::where('karyawan_id', '=', $id)->get()->toArray();
  31. $result = array(
  32. 'jadwal_masuk' => $jadwal_masuk,
  33. 'jadwal_izin' => $jadwal_izin,
  34. 'jadwal_libur' => $jadwal_libur,
  35. 'jadwal_ngeplus' => $jadwal_ngeplus
  36. );
  37. return $result;
  38. }
  39.  
  40. public function apiGetJadwalKaryawan($id) {
  41. $jadwal_masuk = JadwalHariKerja::where('karyawan_id', '=', $id)->get();
  42. $jadwal_izin = JadwalIzin::where('karyawan_id', '=', $id)->get();
  43. $jadwal_libur = JadwalLibur::where('karyawan_id', '=', $id)->get();
  44. $jadwal_ngeplus = JadwalNgeplus::where('karyawan_id', '=', $id)->get();
  45. $result = array(
  46. 'jadwal_masuk' => $jadwal_masuk,
  47. 'jadwal_izin' => $jadwal_izin,
  48. 'jadwal_libur' => $jadwal_libur,
  49. 'jadwal_ngeplus' => $jadwal_ngeplus
  50. );
  51. return Response::json($result);
  52. }
Add Comment
Please, Sign In to add comment