vitareinforce

generate kph extuder revisi 2

Jan 14th, 2022 (edited)
120
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.     public function generateKPHExtuder($date) {
  2.  
  3.         $new_day_date = Carbon::parse($date)->format("Y-m-d 00:00:00");
  4.         $karyawan = Karyawan::where('status_karyawan', '!=', 'nonaktif')
  5.                     ->where('jadwal_extuder_id', '!=', null)
  6.                     ->orWhere('jadwal_extuder_group_id', '!=', null)
  7.                     ->get();
  8.         $day = Carbon::parse($new_day_date)->format('l');
  9.        
  10.         // tambah hari
  11.         $hari = null;
  12.         switch($day) {
  13.             case 'Monday':
  14.                 $hari = 'Senin';
  15.                 break;
  16.             case 'Tuesday':
  17.                 $hari = 'Selasa';
  18.                 break;
  19.             case 'Wednesday':
  20.                 $hari = 'Rabu';
  21.                 break;
  22.             case 'Thursday':
  23.                 $hari = 'Kamis';
  24.                 break;
  25.             case 'Friday':
  26.                 $hari = 'Jum at';
  27.                 break;
  28.             case 'Saturday':
  29.                 $hari = 'Sabtu';
  30.                 break;
  31.             case 'Sunday':
  32.                 $hari = 'Minggu';
  33.                 break;
  34.             default:
  35.                 break;                
  36.         }
  37.  
  38.         for($i = 0, $sizeKaryawan = count($karyawan); $i < $sizeKaryawan; $i++) {
  39.  
  40.             $status_libur = 0;
  41.             $status_izin = 0;
  42.  
  43.             $jadwal_libur = JadwalLibur::where('karyawan_id', '=', $karyawan[$i]->id)->get();
  44.             $jadwal_izin = JadwalIzin::where('karyawan_id', '=', $karyawan[$i]->id)->get();
  45.  
  46.             for($l = 0; $l < count($jadwal_izin); $l++) {
  47.                 $mulai_izin = Carbon::parse($jadwal_izin[$l]->tanggal_mulai)->format('Y-m-d');
  48.                 $selesai_izin = Carbon::parse($jadwal_izin[$l]->tanggal_selesai)->format('Y-m-d');
  49.                 $tanggal_sekarang = Carbon::parse($date)->format('Y-m-d');
  50.                 if(($tanggal_sekarang >= $mulai_izin) && ($tanggal_sekarang <= $selesai_izin)) {
  51.                     $status_izin = 1;
  52.                 }
  53.             }
  54.  
  55.             for($l = 0; $l < count($jadwal_libur); $l++) {
  56.                 $mulai_libur = Carbon::parse($jadwal_libur[$l]->tanggal_mulai)->format('Y-m-d');
  57.                 $selesai_libur = Carbon::parse($jadwal_libur[$l]->tanggal_selesai)->format('Y-m-d');
  58.                 $tanggal_sekarang = Carbon::parse($date)->format('Y-m-d');
  59.                 if(($tanggal_sekarang >= $mulai_libur) && ($tanggal_sekarang <= $selesai_libur)) {
  60.                     $status_libur = 1;
  61.                 }
  62.             }
  63.        
  64.             if($status_libur == 0 && $status_izin == 0) {
  65.                 // mulai cek hirarki
  66.                 $jadwal_extuder = null;
  67.                 $jadwal_perorangan = JadwalHariKerjaExtuder::where('karyawan_id', $karyawan[$i]->id)
  68.                                             ->where('source', 'extuder karyawan')
  69.                                             ->where(function($query) use ($date) {
  70.                                                 $query->whereDate('tanggal_boleh_tap', $date)
  71.                                                       ->orWhereDate('tanggal_boleh_tap_selanjutnya', $date)
  72.                                                       ->orWhereDate('tanggal_boleh_tap_baru', $date)
  73.                                                       ->orWhereDate('tanggal_boleh_tap_selanjutnya_baru', $date);
  74.                                             })
  75.                                             ->first();
  76.  
  77.                 $jadwal_group = JadwalHariKerjaExtuder::where('karyawan_id', $karyawan[$i]->id)
  78.                                             ->where('source', 'extuder group')
  79.                                             ->where(function($query) use ($date) {
  80.                                                 $query->whereDate('tanggal_boleh_tap', $date)
  81.                                                       ->orWhereDate('tanggal_boleh_tap_selanjutnya', $date)
  82.                                                       ->orWhereDate('tanggal_boleh_tap_baru', $date)
  83.                                                       ->orWhereDate('tanggal_boleh_tap_selanjutnya_baru', $date);
  84.                                             })
  85.                                             ->first();
  86.                
  87.                 if($jadwal_perorangan != null && $jadwal_group == null) {
  88.                     $jadwal_extuder = $jadwal_perorangan;
  89.                 } else if($jadwal_perorangan == null && $jadwal_group != null) {
  90.                     $jadwal_extuder = $jadwal_group;
  91.                 } else if($jadwal_perorangan != null && $jadwal_group != null) {
  92.                     $jadwal_extuder = $jadwal_perorangan;
  93.                 }
  94.  
  95.                 if($jadwal_extuder != null) {
  96.  
  97.                     $generate_storage = HarianExtuder::where('karyawan_id', $jadwal_extuder->karyawan_id)
  98.                                     ->where('source_extuder', $jadwal_extuder->source)
  99.                                     ->where('source_id_extuder', $jadwal_extuder->source_id)
  100.                                     ->whereDate('tanggal_hari_ini', $date)
  101.                                     ->first();
  102.  
  103.                     if($generate_storage == null) {
  104.                        
  105.                         $generate_storage = new HarianExtuder();
  106.                         $generate_storage->karyawan_id = $karyawan[$i]->id;
  107.                         $generate_storage->nama = $karyawan[$i]->nama;
  108.                         $generate_storage->group_id = $karyawan[$i]->group_id;
  109.                         $generate_storage->nama_group = $karyawan[$i]->nik;
  110.                         $generate_storage->tanggal_hari_ini = $date;
  111.                         $generate_storage->kalkulasi_poin_rutin = 0;
  112.                         $generate_storage->kalkulasi_poin_ngeplus = 0;
  113.                         $generate_storage->kalkulasi_poin_shift1_extuder = 0;
  114.                         $generate_storage->kalkulasi_poin_shift2_extuder = 0;
  115.                         $generate_storage->kalkulasi_poin_shift3_extuder = 0;
  116.                         $generate_storage->kalkulasi_poin_total_extuder = 0;
  117.                         $generate_storage->hari = $hari;
  118.                         $generate_storage->status_hadir = 0;
  119.                         $generate_storage->status_hadir_extuder_shift1 = 0;
  120.                         $generate_storage->status_hadir_extuder_shift2 = 0;
  121.                         $generate_storage->status_hadir_extuder_shift3 = 0;
  122.                         $generate_storage->tidak_hadir_extuder_shift1 = 0;
  123.                         $generate_storage->tidak_hadir_extuder_shift2 = 0;
  124.                         $generate_storage->tidak_hadir_extuder_shift3 = 0;
  125.                         $generate_storage->source_extuder = $jadwal_extuder->source;
  126.                         $generate_storage->source_id_extuder = $jadwal_extuder->source_id;
  127.  
  128.                         if(Carbon::parse($date)->lte(Carbon::parse($jadwal_extuder->tanggal_jadwal_extuder_diedit_baru))) {
  129.                             if($jadwal_extuder->source == 'extuder karyawan') {
  130.                                 $generate_storage->status_extuder_shift1 = $jadwal_extuder->status_shift1;
  131.                                 $generate_storage->status_extuder_shift2 = $jadwal_extuder->status_shift2;
  132.                                 $generate_storage->status_extuder_shift3 = $jadwal_extuder->status_shift3;
  133.                                 $generate_storage->jam_masuk_shift1 = $jadwal_extuder->jam_masuk_shift1;
  134.                                 $generate_storage->jam_masuk_shift2 = $jadwal_extuder->jam_masuk_shift2;
  135.                                 $generate_storage->jam_masuk_shift3 = $jadwal_extuder->jam_masuk_shift3;
  136.                                 $generate_storage->jam_istirahat_mulai_shift1 = $jadwal_extuder->jam_istirahat_mulai_shift1;
  137.                                 $generate_storage->jam_istirahat_mulai_shift2 = $jadwal_extuder->jam_istirahat_mulai_shift2;
  138.                                 $generate_storage->jam_istirahat_mulai_shift3 = $jadwal_extuder->jam_istirahat_mulai_shift3;
  139.                                 $generate_storage->jam_istirahat_selesai_shift1 = $jadwal_extuder->jam_istirahat_selesai_shift1;
  140.                                 $generate_storage->jam_istirahat_selesai_shift2 = $jadwal_extuder->jam_istirahat_selesai_shift2;
  141.                                 $generate_storage->jam_istirahat_selesai_shift3 = $jadwal_extuder->jam_istirahat_selesai_shift3;
  142.                                 $generate_storage->jam_pulang_shift1 = $jadwal_extuder->jam_pulang_shift1;
  143.                                 $generate_storage->jam_pulang_shift2 = $jadwal_extuder->jam_pulang_shift2;
  144.                                 $generate_storage->jam_pulang_shift3 = $jadwal_extuder->jam_pulang_shift3;
  145.                             } else if($jadwal_extuder->source == 'extuder group') {
  146.                                 $generate_storage->status_extuder_shift1 = $jadwal_extuder->status_shift1;
  147.                                 $generate_storage->status_extuder_shift2 = $jadwal_extuder->status_shift2;
  148.                                 $generate_storage->status_extuder_shift3 = $jadwal_extuder->status_shift3;
  149.                                 $generate_storage->jam_masuk_shift1_group = $jadwal_extuder->jam_masuk_shift1;
  150.                                 $generate_storage->jam_masuk_shift2_group = $jadwal_extuder->jam_masuk_shift2;
  151.                                 $generate_storage->jam_masuk_shift3_group = $jadwal_extuder->jam_masuk_shift3;
  152.                                 $generate_storage->jam_istirahat_mulai_shift1_group = $jadwal_extuder->jam_istirahat_mulai_shift1;
  153.                                 $generate_storage->jam_istirahat_mulai_shift2_group = $jadwal_extuder->jam_istirahat_mulai_shift2;
  154.                                 $generate_storage->jam_istirahat_mulai_shift3_group = $jadwal_extuder->jam_istirahat_mulai_shift3;
  155.                                 $generate_storage->jam_istirahat_selesai_shift1_group = $jadwal_extuder->jam_istirahat_selesai_shift1;
  156.                                 $generate_storage->jam_istirahat_selesai_shift2_group = $jadwal_extuder->jam_istirahat_selesai_shift2;
  157.                                 $generate_storage->jam_istirahat_selesai_shift3_group = $jadwal_extuder->jam_istirahat_selesai_shift3;
  158.                                 $generate_storage->jam_pulang_shift1_group = $jadwal_extuder->jam_pulang_shift1;
  159.                                 $generate_storage->jam_pulang_shift2_group = $jadwal_extuder->jam_pulang_shift2;
  160.                                 $generate_storage->jam_pulang_shift3_group = $jadwal_extuder->jam_pulang_shift3;
  161.                             }
  162.                            
  163.                         } else if(Carbon::parse($date)->gt(Carbon::parse($jadwal_extuder->tanggal_jadwal_extuder_diedit_baru))) {
  164.                             if($jadwal_extuder->source == 'extuder karyawan') {
  165.                                 $generate_storage->status_extuder_shift1 = $jadwal_extuder->status_shift1_baru;
  166.                                 $generate_storage->status_extuder_shift2 = $jadwal_extuder->status_shift2_baru;
  167.                                 $generate_storage->status_extuder_shift3 = $jadwal_extuder->status_shift3_baru;
  168.                                 $generate_storage->jam_masuk_shift1 = $jadwal_extuder->jam_masuk_shift1_baru;
  169.                                 $generate_storage->jam_masuk_shift2 = $jadwal_extuder->jam_masuk_shift2_baru;
  170.                                 $generate_storage->jam_masuk_shift3 = $jadwal_extuder->jam_masuk_shift3_baru;
  171.                                 $generate_storage->jam_istirahat_mulai_shift1 = $jadwal_extuder->jam_istirahat_mulai_shift1_baru;
  172.                                 $generate_storage->jam_istirahat_mulai_shift2 = $jadwal_extuder->jam_istirahat_mulai_shift2_baru;
  173.                                 $generate_storage->jam_istirahat_mulai_shift3 = $jadwal_extuder->jam_istirahat_mulai_shift3_baru;
  174.                                 $generate_storage->jam_istirahat_selesai_shift1 = $jadwal_extuder->jam_istirahat_selesai_shift1_baru;
  175.                                 $generate_storage->jam_istirahat_selesai_shift2 = $jadwal_extuder->jam_istirahat_selesai_shift2_baru;
  176.                                 $generate_storage->jam_istirahat_selesai_shift3 = $jadwal_extuder->jam_istirahat_selesai_shift3_baru;
  177.                                 $generate_storage->jam_pulang_shift1 = $jadwal_extuder->jam_pulang_shift1_baru;
  178.                                 $generate_storage->jam_pulang_shift2 = $jadwal_extuder->jam_pulang_shift2_baru;
  179.                                 $generate_storage->jam_pulang_shift3 = $jadwal_extuder->jam_pulang_shift3_baru;
  180.                             } else if($jadwal_extuder->source == 'extuder group') {
  181.                                 $generate_storage->status_extuder_shift1 = $jadwal_extuder->status_shift1_baru;
  182.                                 $generate_storage->status_extuder_shift2 = $jadwal_extuder->status_shift2_baru;
  183.                                 $generate_storage->status_extuder_shift3 = $jadwal_extuder->status_shift3_baru;
  184.                                 $generate_storage->jam_masuk_shift1_group = $jadwal_extuder->jam_masuk_shift1_baru;
  185.                                 $generate_storage->jam_masuk_shift2_group = $jadwal_extuder->jam_masuk_shift2_baru;
  186.                                 $generate_storage->jam_masuk_shift3_group = $jadwal_extuder->jam_masuk_shift3_baru;
  187.                                 $generate_storage->jam_istirahat_mulai_shift1_group = $jadwal_extuder->jam_istirahat_mulai_shift1_baru;
  188.                                 $generate_storage->jam_istirahat_mulai_shift2_group = $jadwal_extuder->jam_istirahat_mulai_shift2_baru;
  189.                                 $generate_storage->jam_istirahat_mulai_shift3_group = $jadwal_extuder->jam_istirahat_mulai_shift3_baru;
  190.                                 $generate_storage->jam_istirahat_selesai_shift1_group = $jadwal_extuder->jam_istirahat_selesai_shift1_baru;
  191.                                 $generate_storage->jam_istirahat_selesai_shift2_group = $jadwal_extuder->jam_istirahat_selesai_shift2_baru;
  192.                                 $generate_storage->jam_istirahat_selesai_shift3_group = $jadwal_extuder->jam_istirahat_selesai_shift3_baru;
  193.                                 $generate_storage->jam_pulang_shift1_group = $jadwal_extuder->jam_pulang_shift1_baru;
  194.                                 $generate_storage->jam_pulang_shift2_group = $jadwal_extuder->jam_pulang_shift2_baru;
  195.                                 $generate_storage->jam_pulang_shift3_group = $jadwal_extuder->jam_pulang_shift3_baru;
  196.                             }
  197.                         }
  198.                         $generate_storage->save();
  199.  
  200.                         if(Carbon::parse($date)->lte(Carbon::parse($jadwal_extuder->tanggal_jadwal_extuder_diedit_baru))) {
  201.                             $jadwal_extuder->tanggal_boleh_tap = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->toDateString();
  202.                             $jadwal_extuder->tanggal_boleh_tap_selanjutnya = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->addDays(2)->toDateString();
  203.                             $jadwal_extuder->tanggal_boleh_tap_baru = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->toDateString();
  204.                             $jadwal_extuder->tanggal_boleh_tap_selanjutnya_baru = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->addDays(2)->toDateString();
  205.                         } else if(Carbon::parse($date)->gt(Carbon::parse($jadwal_extuder->tanggal_jadwal_extuder_diedit_baru))) {
  206.                             $jadwal_extuder->tanggal_boleh_tap = Carbon::parse($jadwal_extuder->tanggal_boleh_tap)->toDateString();
  207.                             $jadwal_extuder->tanggal_boleh_tap_selanjutnya = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->toDateString();
  208.                             $jadwal_extuder->tanggal_boleh_tap_baru = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->toDateString();
  209.                             $jadwal_extuder->tanggal_boleh_tap_selanjutnya_baru = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->addDays(2)->toDateString();
  210.                         }
  211.                         $jadwal_extuder->save();
  212.  
  213.                         // tambah master dan karyawan
  214.                         $jadwal_master = JadwalExtuder::find($jadwal_extuder->source_id);
  215.                         $jadwal_master->tanggal_boleh_tap = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->toDateString();
  216.                         $jadwal_master->tanggal_boleh_tap_selanjutnya = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->addDays(2)->toDateString();
  217.                         $jadwal_master->save();
  218.  
  219.                         if($jadwal_extuder->source == 'extuder karyawan') {
  220.                             $karyawan_update = Karyawan::find($jadwal_extuder->karyawan_id);
  221.                             if(Carbon::parse($date)->lte(Carbon::parse($jadwal_extuder->tanggal_jadwal_extuder_diedit_baru))) {
  222.                                 $karyawan_update->tanggal_boleh_tap_extuder_lama = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->toDateString();
  223.                                 $karyawan_update->tanggal_boleh_tap_selanjutnya_extuder_lama = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->addDays(2)->toDateString();
  224.                                 $karyawan_update->tanggal_boleh_tap_extuder_baru = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->toDateString();
  225.                                 $karyawan_update->tanggal_boleh_tap_selanjutnya_extuder_baru = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->addDays(2)->toDateString();
  226.                             } else if(Carbon::parse($date)->gt(Carbon::parse($jadwal_extuder->tanggal_jadwal_extuder_diedit_baru))) {
  227.                                 $karyawan_update->tanggal_boleh_tap_extuder_baru = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->toDateString();
  228.                                 $karyawan_update->tanggal_boleh_tap_selanjutnya_extuder_baru = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->addDays(2)->toDateString();
  229.                             }
  230.                             $karyawan_update->save();
  231.                         } else if($jadwal_extuder->source == 'extuder group') {
  232.                             $karyawan_update = Karyawan::find($jadwal_extuder->karyawan_id);
  233.                             if(Carbon::parse($date)->lte(Carbon::parse($jadwal_extuder->tanggal_jadwal_extuder_diedit_baru))) {
  234.                                 $karyawan_update->tanggal_boleh_tap_extuder_group_lama = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->toDateString();
  235.                                 $karyawan_update->tanggal_boleh_tap_selanjutnya_extuder_group_lama = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->addDays(2)->toDateString();
  236.                                 $karyawan_update->tanggal_boleh_tap_extuder_group_baru = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->toDateString();
  237.                                 $karyawan_update->tanggal_boleh_tap_selanjutnya_extuder_group_baru = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->addDays(2)->toDateString();
  238.                             } else if(Carbon::parse($date)->gt(Carbon::parse($jadwal_extuder->tanggal_jadwal_extuder_diedit_baru))) {
  239.                                 $karyawan_update->tanggal_boleh_tap_extuder_group_baru = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->toDateString();
  240.                                 $karyawan_update->tanggal_boleh_tap_selanjutnya_extuder_group_baru = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->addDays(2)->toDateString();
  241.                             }
  242.                             $karyawan_update->save();
  243.                         }
  244.                    
  245.                     } else if($generate_storage != null) {
  246.                         $generate_storage->karyawan_id = $karyawan[$i]->id;
  247.                         $generate_storage->nama = $karyawan[$i]->nama;
  248.                         $generate_storage->group_id = $karyawan[$i]->group_id;
  249.                         $generate_storage->nama_group = $karyawan[$i]->nik;
  250.                         $generate_storage->tanggal_hari_ini = $date;
  251.                         $generate_storage->source_extuder = $jadwal_extuder->source;
  252.                         $generate_storage->source_id_extuder = $jadwal_extuder->source_id;
  253.  
  254.                         if(Carbon::parse($date)->lte(Carbon::parse($jadwal_extuder->tanggal_jadwal_extuder_diedit_baru))) {
  255.                             $generate_storage->status_extuder_shift1 = $jadwal_extuder->status_shift1;
  256.                             $generate_storage->status_extuder_shift2 = $jadwal_extuder->status_shift2;
  257.                             $generate_storage->status_extuder_shift3 = $jadwal_extuder->status_shift3;
  258.                             $generate_storage->jam_masuk_shift1 = $jadwal_extuder->jam_masuk_shift1;
  259.                             $generate_storage->jam_masuk_shift2 = $jadwal_extuder->jam_masuk_shift2;
  260.                             $generate_storage->jam_masuk_shift3 = $jadwal_extuder->jam_masuk_shift3;
  261.                             $generate_storage->jam_istirahat_mulai_shift1 = $jadwal_extuder->jam_istirahat_mulai_shift1;
  262.                             $generate_storage->jam_istirahat_mulai_shift2 = $jadwal_extuder->jam_istirahat_mulai_shift2;
  263.                             $generate_storage->jam_istirahat_mulai_shift3 = $jadwal_extuder->jam_istirahat_mulai_shift3;
  264.                             $generate_storage->jam_istirahat_selesai_shift1 = $jadwal_extuder->jam_istirahat_selesai_shift1;
  265.                             $generate_storage->jam_istirahat_selesai_shift2 = $jadwal_extuder->jam_istirahat_selesai_shift2;
  266.                             $generate_storage->jam_istirahat_selesai_shift3 = $jadwal_extuder->jam_istirahat_selesai_shift3;
  267.                             $generate_storage->jam_pulang_shift1 = $jadwal_extuder->jam_pulang_shift1;
  268.                             $generate_storage->jam_pulang_shift2 = $jadwal_extuder->jam_pulang_shift2;
  269.                             $generate_storage->jam_pulang_shift3 = $jadwal_extuder->jam_pulang_shift3;
  270.                         } else if(Carbon::parse($date)->gt(Carbon::parse($jadwal_extuder->tanggal_jadwal_extuder_diedit_baru))) {
  271.                             $generate_storage->status_extuder_shift1 = $jadwal_extuder->status_shift1_baru;
  272.                             $generate_storage->status_extuder_shift2 = $jadwal_extuder->status_shift2_baru;
  273.                             $generate_storage->status_extuder_shift3 = $jadwal_extuder->status_shift3_baru;
  274.                             $generate_storage->jam_masuk_shift1 = $jadwal_extuder->jam_masuk_shift1_baru;
  275.                             $generate_storage->jam_masuk_shift2 = $jadwal_extuder->jam_masuk_shift2_baru;
  276.                             $generate_storage->jam_masuk_shift3 = $jadwal_extuder->jam_masuk_shift3_baru;
  277.                             $generate_storage->jam_istirahat_mulai_shift1 = $jadwal_extuder->jam_istirahat_mulai_shift1_baru;
  278.                             $generate_storage->jam_istirahat_mulai_shift2 = $jadwal_extuder->jam_istirahat_mulai_shift2_baru;
  279.                             $generate_storage->jam_istirahat_mulai_shift3 = $jadwal_extuder->jam_istirahat_mulai_shift3_baru;
  280.                             $generate_storage->jam_istirahat_selesai_shift1 = $jadwal_extuder->jam_istirahat_selesai_shift1_baru;
  281.                             $generate_storage->jam_istirahat_selesai_shift2 = $jadwal_extuder->jam_istirahat_selesai_shift2_baru;
  282.                             $generate_storage->jam_istirahat_selesai_shift3 = $jadwal_extuder->jam_istirahat_selesai_shift3_baru;
  283.                             $generate_storage->jam_pulang_shift1 = $jadwal_extuder->jam_pulang_shift1_baru;
  284.                             $generate_storage->jam_pulang_shift2 = $jadwal_extuder->jam_pulang_shift2_baru;
  285.                             $generate_storage->jam_pulang_shift3 = $jadwal_extuder->jam_pulang_shift3_baru;
  286.                         }
  287.                         $generate_storage->save();
  288.  
  289.                         if(Carbon::parse($date)->lte(Carbon::parse($jadwal_extuder->tanggal_jadwal_extuder_diedit_baru))) {
  290.                             if($jadwal_extuder->source == 'extuder_karyawan') {
  291.                                 $generate_storage->status_extuder_shift1 = $jadwal_extuder->status_shift1;
  292.                                 $generate_storage->status_extuder_shift2 = $jadwal_extuder->status_shift2;
  293.                                 $generate_storage->status_extuder_shift3 = $jadwal_extuder->status_shift3;
  294.                                 $generate_storage->jam_masuk_shift1 = $jadwal_extuder->jam_masuk_shift1;
  295.                                 $generate_storage->jam_masuk_shift2 = $jadwal_extuder->jam_masuk_shift2;
  296.                                 $generate_storage->jam_masuk_shift3 = $jadwal_extuder->jam_masuk_shift3;
  297.                                 $generate_storage->jam_istirahat_mulai_shift1 = $jadwal_extuder->jam_istirahat_mulai_shift1;
  298.                                 $generate_storage->jam_istirahat_mulai_shift2 = $jadwal_extuder->jam_istirahat_mulai_shift2;
  299.                                 $generate_storage->jam_istirahat_mulai_shift3 = $jadwal_extuder->jam_istirahat_mulai_shift3;
  300.                                 $generate_storage->jam_istirahat_selesai_shift1 = $jadwal_extuder->jam_istirahat_selesai_shift1;
  301.                                 $generate_storage->jam_istirahat_selesai_shift2 = $jadwal_extuder->jam_istirahat_selesai_shift2;
  302.                                 $generate_storage->jam_istirahat_selesai_shift3 = $jadwal_extuder->jam_istirahat_selesai_shift3;
  303.                                 $generate_storage->jam_pulang_shift1 = $jadwal_extuder->jam_pulang_shift1;
  304.                                 $generate_storage->jam_pulang_shift2 = $jadwal_extuder->jam_pulang_shift2;
  305.                                 $generate_storage->jam_pulang_shift3 = $jadwal_extuder->jam_pulang_shift3;
  306.                             } else if($jadwal_extuder->source == 'extuder group') {
  307.                                 $generate_storage->status_extuder_shift1 = $jadwal_extuder->status_shift1;
  308.                                 $generate_storage->status_extuder_shift2 = $jadwal_extuder->status_shift2;
  309.                                 $generate_storage->status_extuder_shift3 = $jadwal_extuder->status_shift3;
  310.                                 $generate_storage->jam_masuk_shift1_group = $jadwal_extuder->jam_masuk_shift1;
  311.                                 $generate_storage->jam_masuk_shift2_group = $jadwal_extuder->jam_masuk_shift2;
  312.                                 $generate_storage->jam_masuk_shift3_group = $jadwal_extuder->jam_masuk_shift3;
  313.                                 $generate_storage->jam_istirahat_mulai_shift1_group = $jadwal_extuder->jam_istirahat_mulai_shift1;
  314.                                 $generate_storage->jam_istirahat_mulai_shift2_group = $jadwal_extuder->jam_istirahat_mulai_shift2;
  315.                                 $generate_storage->jam_istirahat_mulai_shift3_group = $jadwal_extuder->jam_istirahat_mulai_shift3;
  316.                                 $generate_storage->jam_istirahat_selesai_shift1_group = $jadwal_extuder->jam_istirahat_selesai_shift1;
  317.                                 $generate_storage->jam_istirahat_selesai_shift2_group = $jadwal_extuder->jam_istirahat_selesai_shift2;
  318.                                 $generate_storage->jam_istirahat_selesai_shift3_group = $jadwal_extuder->jam_istirahat_selesai_shift3;
  319.                                 $generate_storage->jam_pulang_shift1_group = $jadwal_extuder->jam_pulang_shift1;
  320.                                 $generate_storage->jam_pulang_shift2_group = $jadwal_extuder->jam_pulang_shift2;
  321.                                 $generate_storage->jam_pulang_shift3_group = $jadwal_extuder->jam_pulang_shift3;
  322.                             }
  323.                            
  324.                         } else if(Carbon::parse($date)->gt(Carbon::parse($jadwal_extuder->tanggal_jadwal_extuder_diedit_baru))) {
  325.                             if($jadwal_extuder->source == 'extuder_karyawan') {
  326.                                 $generate_storage->status_extuder_shift1 = $jadwal_extuder->status_shift1_baru;
  327.                                 $generate_storage->status_extuder_shift2 = $jadwal_extuder->status_shift2_baru;
  328.                                 $generate_storage->status_extuder_shift3 = $jadwal_extuder->status_shift3_baru;
  329.                                 $generate_storage->jam_masuk_shift1 = $jadwal_extuder->jam_masuk_shift1_baru;
  330.                                 $generate_storage->jam_masuk_shift2 = $jadwal_extuder->jam_masuk_shift2_baru;
  331.                                 $generate_storage->jam_masuk_shift3 = $jadwal_extuder->jam_masuk_shift3_baru;
  332.                                 $generate_storage->jam_istirahat_mulai_shift1 = $jadwal_extuder->jam_istirahat_mulai_shift1_baru;
  333.                                 $generate_storage->jam_istirahat_mulai_shift2 = $jadwal_extuder->jam_istirahat_mulai_shift2_baru;
  334.                                 $generate_storage->jam_istirahat_mulai_shift3 = $jadwal_extuder->jam_istirahat_mulai_shift3_baru;
  335.                                 $generate_storage->jam_istirahat_selesai_shift1 = $jadwal_extuder->jam_istirahat_selesai_shift1_baru;
  336.                                 $generate_storage->jam_istirahat_selesai_shift2 = $jadwal_extuder->jam_istirahat_selesai_shift2_baru;
  337.                                 $generate_storage->jam_istirahat_selesai_shift3 = $jadwal_extuder->jam_istirahat_selesai_shift3_baru;
  338.                                 $generate_storage->jam_pulang_shift1 = $jadwal_extuder->jam_pulang_shift1_baru;
  339.                                 $generate_storage->jam_pulang_shift2 = $jadwal_extuder->jam_pulang_shift2_baru;
  340.                                 $generate_storage->jam_pulang_shift3 = $jadwal_extuder->jam_pulang_shift3_baru;
  341.                             } else if($jadwal_extuder->source == 'extuder group') {
  342.                                 $generate_storage->status_extuder_shift1 = $jadwal_extuder->status_shift1_baru;
  343.                                 $generate_storage->status_extuder_shift2 = $jadwal_extuder->status_shift2_baru;
  344.                                 $generate_storage->status_extuder_shift3 = $jadwal_extuder->status_shift3_baru;
  345.                                 $generate_storage->jam_masuk_shift1_group = $jadwal_extuder->jam_masuk_shift1_baru;
  346.                                 $generate_storage->jam_masuk_shift2_group = $jadwal_extuder->jam_masuk_shift2_baru;
  347.                                 $generate_storage->jam_masuk_shift3_group = $jadwal_extuder->jam_masuk_shift3_baru;
  348.                                 $generate_storage->jam_istirahat_mulai_shift1_group = $jadwal_extuder->jam_istirahat_mulai_shift1_baru;
  349.                                 $generate_storage->jam_istirahat_mulai_shift2_group = $jadwal_extuder->jam_istirahat_mulai_shift2_baru;
  350.                                 $generate_storage->jam_istirahat_mulai_shift3_group = $jadwal_extuder->jam_istirahat_mulai_shift3_baru;
  351.                                 $generate_storage->jam_istirahat_selesai_shift1_group = $jadwal_extuder->jam_istirahat_selesai_shift1_baru;
  352.                                 $generate_storage->jam_istirahat_selesai_shift2_group = $jadwal_extuder->jam_istirahat_selesai_shift2_baru;
  353.                                 $generate_storage->jam_istirahat_selesai_shift3_group = $jadwal_extuder->jam_istirahat_selesai_shift3_baru;
  354.                                 $generate_storage->jam_pulang_shift1_group = $jadwal_extuder->jam_pulang_shift1_baru;
  355.                                 $generate_storage->jam_pulang_shift2_group = $jadwal_extuder->jam_pulang_shift2_baru;
  356.                                 $generate_storage->jam_pulang_shift3_group = $jadwal_extuder->jam_pulang_shift3_baru;
  357.                             }
  358.                            
  359.                         }
  360.                         $generate_storage->save();
  361.  
  362.                         if(Carbon::parse($date)->lte(Carbon::parse($jadwal_extuder->tanggal_jadwal_extuder_diedit_baru))) {
  363.                             $jadwal_extuder->tanggal_boleh_tap = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->toDateString();
  364.                             $jadwal_extuder->tanggal_boleh_tap_selanjutnya = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->addDays(2)->toDateString();
  365.                             $jadwal_extuder->tanggal_boleh_tap_baru = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->toDateString();
  366.                             $jadwal_extuder->tanggal_boleh_tap_selanjutnya_baru = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->addDays(2)->toDateString();
  367.                         } else if(Carbon::parse($date)->gt(Carbon::parse($jadwal_extuder->tanggal_jadwal_extuder_diedit_baru))) {
  368.                             $jadwal_extuder->tanggal_boleh_tap = Carbon::parse($jadwal_extuder->tanggal_boleh_tap)->toDateString();
  369.                             $jadwal_extuder->tanggal_boleh_tap_selanjutnya = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->toDateString();
  370.                             $jadwal_extuder->tanggal_boleh_tap_baru = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->toDateString();
  371.                             $jadwal_extuder->tanggal_boleh_tap_selanjutnya_baru = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->addDays(2)->toDateString();
  372.                         }
  373.                         $jadwal_extuder->save();
  374.  
  375.                         // tambah master dan karyawan
  376.                         $jadwal_master = JadwalExtuder::find($jadwal_extuder->source_id);
  377.                         $jadwal_master->tanggal_boleh_tap = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->toDateString();
  378.                         $jadwal_master->tanggal_boleh_tap_selanjutnya = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->addDays(2)->toDateString();
  379.                         $jadwal_master->save();
  380.  
  381.                         if($jadwal_extuder->source == 'extuder karyawan') {
  382.                             $karyawan_update = Karyawan::find($jadwal_extuder->karyawan_id);
  383.                             if(Carbon::parse($date)->lte(Carbon::parse($jadwal_extuder->tanggal_jadwal_extuder_diedit_baru))) {
  384.                                 $karyawan_update->tanggal_boleh_tap_extuder_lama = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->toDateString();
  385.                                 $karyawan_update->tanggal_boleh_tap_selanjutnya_extuder_lama = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->addDays(2)->toDateString();
  386.                                 $karyawan_update->tanggal_boleh_tap_extuder_baru = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->toDateString();
  387.                                 $karyawan_update->tanggal_boleh_tap_selanjutnya_extuder_baru = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->addDays(2)->toDateString();
  388.                             } else if(Carbon::parse($date)->gt(Carbon::parse($jadwal_extuder->tanggal_jadwal_extuder_diedit_baru))) {
  389.                                 $karyawan_update->tanggal_boleh_tap_extuder_baru = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->toDateString();
  390.                                 $karyawan_update->tanggal_boleh_tap_selanjutnya_extuder_baru = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->addDays(2)->toDateString();
  391.                             }
  392.                             $karyawan_update->save();
  393.                         } else if($jadwal_extuder->source == 'extuder group') {
  394.                             $karyawan_update = Karyawan::find($jadwal_extuder->karyawan_id);
  395.                             if(Carbon::parse($date)->lte(Carbon::parse($jadwal_extuder->tanggal_jadwal_extuder_diedit_baru))) {
  396.                                 $karyawan_update->tanggal_boleh_tap_extuder_group_lama = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->toDateString();
  397.                                 $karyawan_update->tanggal_boleh_tap_selanjutnya_extuder_group_lama = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->addDays(2)->toDateString();
  398.                                 $karyawan_update->tanggal_boleh_tap_extuder_group_baru = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->toDateString();
  399.                                 $karyawan_update->tanggal_boleh_tap_selanjutnya_extuder_group_baru = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->addDays(2)->toDateString();
  400.                             } else if(Carbon::parse($date)->gt(Carbon::parse($jadwal_extuder->tanggal_jadwal_extuder_diedit_baru))) {
  401.                                 $karyawan_update->tanggal_boleh_tap_extuder_group_baru = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->toDateString();
  402.                                 $karyawan_update->tanggal_boleh_tap_selanjutnya_extuder_group_baru = Carbon::parse($jadwal_extuder->tanggal_boleh_tap_selanjutnya)->addDays(2)->toDateString();
  403.                             }
  404.                             $karyawan_update->save();
  405.                         }
  406.                     }
  407.                
  408.                 }
  409.             }
  410.         }
  411.     }
RAW Paste Data