Advertisement
vitareinforce

perbaikan fungsi update

Dec 14th, 2021
29
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 12.34 KB | None | 0 0
  1. public function updateRutinChild($date) {
  2. $jadwal_edited = Jadwal::where('is_edited', true)->get();
  3. if(isset($jadwal_edited)) {
  4. foreach($jadwal_edited as $jadwal) {
  5. if($jadwal->status == 'rutin') {
  6.  
  7. $jadwal_child = JadwalHariKerja::where('source', 'jadwal_rutin')->where('source_id', $jadwal->id)->get();
  8. foreach($jadwal_child as $child) {
  9. $child->destroy($child->id);
  10. }
  11.  
  12. $karyawan = Karyawan::where('jadwal_id', $jadwal->id)
  13. ->whereDate('tanggal_jadwal_rutin_diedit', '<', Carbon::parse($date)->toDateString())
  14. ->get();
  15. if(isset($karyawan)) {
  16. foreach($karyawan as $k) {
  17. $jadwalHariKerja = new JadwalHariKerja();
  18. $jadwalHariKerja->checkbox_harikerja_senin = $k->checkbox_harikerja_senin_rutin_baru;
  19. $jadwalHariKerja->checkbox_harikerja_selasa = $k->checkbox_harikerja_selasa_rutin_baru;
  20. $jadwalHariKerja->checkbox_harikerja_rabu = $k->checkbox_harikerja_rabu_rutin_baru;
  21. $jadwalHariKerja->checkbox_harikerja_kamis = $k->checkbox_harikerja_kamis_rutin_baru;
  22. $jadwalHariKerja->checkbox_harikerja_jumat = $k->checkbox_harikerja_jumat_rutin_baru;
  23. $jadwalHariKerja->checkbox_harikerja_sabtu = $k->checkbox_harikerja_sabtu_rutin_baru;
  24. $jadwalHariKerja->checkbox_harikerja_minggu = $k->checkbox_harikerja_minggu_rutin_baru;
  25. $jadwalHariKerja->jam_masuk = $k->jam_masuk_rutin_baru;
  26. $jadwalHariKerja->jam_istirahat_mulai = $k->jam_istirahat_mulai_rutin_baru;
  27. $jadwalHariKerja->jam_istirahat_selesai = $k->jam_istirahat_selesai_rutin_baru;
  28. $jadwalHariKerja->jam_pulang = $k->jam_pulang_rutin_baru;
  29. $jadwalHariKerja->karyawan_id = $k->id;
  30. $jadwalHariKerja->status = 'rutin';
  31. $jadwalHariKerja->approval = 0;
  32. $jadwalHariKerja->nama_jadwal = $jadwal->nama_jadwal;
  33. $jadwalHariKerja->warna = $jadwal->warna;
  34. $jadwalHariKerja->status_hadir = null;
  35. $jadwalHariKerja->keterangan = $jadwal->keterangan;
  36. $jadwalHariKerja->source_id = $jadwal->id;
  37. $jadwalHariKerja->source = 'jadwal_rutin';
  38. $jadwalHariKerja->save();
  39.  
  40. $k->jadwal_id = $jadwal->id;
  41. $k->save();
  42. }
  43. }
  44. $jadwal->is_edited = false;
  45. $jadwal->save();
  46. } else if($jadwal->status == 'rutin-group') {
  47. $jadwal_child = JadwalHariKerja::where('source_group', 'jadwal_group_rutin')->where('source_id_group', $jadwal->id)->get();
  48. foreach($jadwal_child as $child) {
  49. $child->destroy($child->id);
  50. }
  51.  
  52. $karyawan = Karyawan::where('jadwal_group_id', '=', $jadwal->id)
  53. ->whereDate('tanggal_jadwal_rutin_diedit', '<', Carbon::parse($date)->toDateString())
  54. ->get();
  55. if(isset($karyawan)) {
  56. foreach($karyawan as $k) {
  57. $jadwalHariKerja = new JadwalHariKerja();
  58. $jadwalHariKerja->checkbox_harikerja_senin = $k->checkbox_harikerja_senin_rutin_group_baru;
  59. $jadwalHariKerja->checkbox_harikerja_selasa = $k->checkbox_harikerja_selasa_rutin_group_baru;
  60. $jadwalHariKerja->checkbox_harikerja_rabu = $k->checkbox_harikerja_rabu_rutin_group_baru;
  61. $jadwalHariKerja->checkbox_harikerja_kamis = $k->checkbox_harikerja_kamis_rutin_group_baru;
  62. $jadwalHariKerja->checkbox_harikerja_jumat = $k->checkbox_harikerja_jumat_rutin_group_baru;
  63. $jadwalHariKerja->checkbox_harikerja_sabtu = $k->checkbox_harikerja_sabtu_rutin_group_baru;
  64. $jadwalHariKerja->checkbox_harikerja_minggu = $k->checkbox_harikerja_minggu_rutin_group_baru;
  65. $jadwalHariKerja->jam_masuk = $k->jam_masuk_rutin_group_baru;
  66. $jadwalHariKerja->jam_istirahat_mulai = $k->jam_istirahat_mulai_rutin_group_baru;
  67. $jadwalHariKerja->jam_istirahat_selesai = $k->jam_istirahat_selesai_rutin_group_baru;
  68. $jadwalHariKerja->jam_pulang = $k->jam_pulang_rutin_group_baru;
  69. $jadwalHariKerja->group_id = $group_existing->id;
  70. $jadwalHariKerja->karyawan_id = $k->id;
  71. $jadwalHariKerja->status = 'rutin-group';
  72. $jadwalHariKerja->approval = 0;
  73. $jadwalHariKerja->nama_jadwal = $jadwal->nama_jadwal;
  74. $jadwalHariKerja->warna = $jadwal->warna;
  75. $jadwalHariKerja->status_hadir = null;
  76. $jadwalHariKerja->keterangan = $jadwal->keterangan;
  77. $jadwalHariKerja->source_id = $jadwal->id;
  78. $jadwalHariKerja->source = 'jadwal_group_rutin';
  79. $jadwalHariKerja->save();
  80.  
  81. $k->jadwal_id = $jadwal->id;
  82. $k->save();
  83. }
  84. }
  85. $jadwal->is_edited = false;
  86. $jadwal->save();
  87. }
  88. }
  89. }
  90. }
  91.  
  92. public function updateExtuderChild($date) {
  93. $jadwal_edited = JadwalExtuder::where('is_edited', true)->get();
  94. if(isset($jadwal_edited)) {
  95. foreach($jadwal_edited as $jadwal) {
  96. if($jadwal->is_jadwal_karyawan == true) {
  97.  
  98. $jadwal_child = JadwalHariKerjaExtuder::where('source', 'extuder karyawan')->where('source_id', $jadwal->id)->get();
  99. foreach($jadwal_child as $child) {
  100. $child->destroy($child->id);
  101. }
  102.  
  103. $karyawan = Karyawan::where('jadwal_extuder_id', '=', $jadwal->id)
  104. ->whereDate('tanggal_jadwal_extuder_diedit', '<', Carbon::parse($date)->toDateString())
  105. ->get();
  106. if(isset($karyawan)) {
  107. foreach($karyawan as $k) {
  108. $harikerjaextuder = new JadwalHariKerjaExtuder();
  109. $harikerjaextuder->jam_masuk_shift1 = $k->jam_masuk_shift1;
  110. $harikerjaextuder->jam_masuk_shift2 = $k->jam_masuk_shift2;
  111. $harikerjaextuder->jam_masuk_shift3 = $k->jam_masuk_shift3;
  112. $harikerjaextuder->jam_istirahat_mulai_shift1 = $k->jam_istirahat_mulai_shift1;
  113. $harikerjaextuder->jam_istirahat_mulai_shift2 = $k->jam_istirahat_mulai_shift2;
  114. $harikerjaextuder->jam_istirahat_mulai_shift3 = $k->jam_istirahat_mulai_shift3;
  115. $harikerjaextuder->jam_istirahat_selesai_shift1 = $k->jam_istirahat_selesai_shift1;
  116. $harikerjaextuder->jam_istirahat_selesai_shift2 = $k->jam_istirahat_selesai_shift2;
  117. $harikerjaextuder->jam_istirahat_selesai_shift3 = $k->jam_istirahat_selesai_shift3;
  118. $harikerjaextuder->jam_pulang_shift1 = $k->jam_pulang_shift1;
  119. $harikerjaextuder->jam_pulang_shift2 = $k->jam_pulang_shift2;
  120. $harikerjaextuder->jam_pulang_shift3 = $k->jam_pulang_shift3;
  121. $harikerjaextuder->nama_jadwal = $jadwal->nama_jadwal;
  122. $harikerjaextuder->warna = $jadwal->warna;
  123. $harikerjaextuder->status_shift1 = $k->status_shift1;
  124. $harikerjaextuder->status_shift2 = $k->status_shift2;
  125. $harikerjaextuder->status_shift3 = $k->status_shift3;
  126. $harikerjaextuder->karyawan_id = $k->id;
  127. $harikerjaextuder->source_id = $jadwal->id;
  128. $harikerjaextuder->source = 'extuder karyawan';
  129. $harikerjaextuder->tanggal_boleh_tap = $k->tanggal_boleh_tap;
  130. $harikerjaextuder->tanggal_boleh_tap_selanjutnya = $k->tanggal_boleh_tap_selanjutnya;
  131. $harikerjaextuder->save();
  132.  
  133. $k->jadwal_extuder_id = $jadwal->id;
  134. $k->save();
  135. }
  136. }
  137. } else if($jadwal->is_jadwal_karyawan == false) {
  138. $jadwal_child = JadwalHariKerja::where('source', 'extuder group')->where('source_id', $jadwal->id)->get();
  139. foreach($jadwal_child as $child) {
  140. $child->destroy($child->id);
  141. }
  142.  
  143. $karyawan = Karyawan::where('jadwal_extuder_id', '=', $jadwal->id)
  144. ->whereDate('tanggal_jadwal_extuder_diedit', '<', Carbon::parse($date)->toDateString())
  145. ->get();
  146. if(isset($karyawan)) {
  147. foreach($karyawan as $k) {
  148. $harikerjaextuder = new JadwalHariKerjaExtuder();
  149. $harikerjaextuder->jam_masuk_shift1 = $k->jam_masuk_shift1;
  150. $harikerjaextuder->jam_masuk_shift2 = $k->jam_masuk_shift2;
  151. $harikerjaextuder->jam_masuk_shift3 = $k->jam_masuk_shift3;
  152. $harikerjaextuder->jam_istirahat_mulai_shift1 = $k->jam_istirahat_mulai_shift1;
  153. $harikerjaextuder->jam_istirahat_mulai_shift2 = $k->jam_istirahat_mulai_shift2;
  154. $harikerjaextuder->jam_istirahat_mulai_shift3 = $k->jam_istirahat_mulai_shift3;
  155. $harikerjaextuder->jam_istirahat_selesai_shift1 = $k->jam_istirahat_selesai_shift1;
  156. $harikerjaextuder->jam_istirahat_selesai_shift2 = $k->jam_istirahat_selesai_shift2;
  157. $harikerjaextuder->jam_istirahat_selesai_shift3 = $k->jam_istirahat_selesai_shift3;
  158. $harikerjaextuder->jam_pulang_shift1 = $k->jam_pulang_shift1;
  159. $harikerjaextuder->jam_pulang_shift2 = $k->jam_pulang_shift2;
  160. $harikerjaextuder->jam_pulang_shift3 = $k->jam_pulang_shift3;
  161. $harikerjaextuder->nama_jadwal = $jadwal->nama_jadwal;
  162. $harikerjaextuder->warna = $jadwal->warna;
  163. $harikerjaextuder->status_shift1 = $k->status_shift1;
  164. $harikerjaextuder->status_shift2 = $k->status_shift2;
  165. $harikerjaextuder->status_shift3 = $k->status_shift3;
  166. $harikerjaextuder->karyawan_id = $k->id;
  167. $harikerjaextuder->source_id = $jadwal->id;
  168. $harikerjaextuder->source = 'extuder group';
  169. $harikerjaextuder->tanggal_boleh_tap = $k->tanggal_boleh_tap;
  170. $harikerjaextuder->tanggal_boleh_tap_selanjutnya = $k->tanggal_boleh_tap_selanjutnya;
  171. $harikerjaextuder->save();
  172.  
  173. $k->jadwal_extuder_id = $jadwal->id;
  174. $k->save();
  175. }
  176. }
  177. }
  178. $jadwal->is_edited = false;
  179. $jadwal->save();
  180. }
  181. }
  182. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement