zone == 'all'){ $cawangan = Cawangan::on('mysql7')->get(); }else{ $cawangan = Cawangan::on('mysql7')->where('zone',$request->zone)->get(); } $tarikh = Carbon::now(); $tarikh = $tarikh->subDay(1); $month = $tarikh->month; $year = $tarikh->year; foreach($cawangan as $cawangan_mysql){ $all_gadai = Gadai::on($cawangan_mysql['mysql']) ->where([['tagpalsu','=',0],['sttebus','=','']]) ->orderBy('t_gadai', 'ASC') ->orderBy('sirig', 'ASC')->get(); $data = []; foreach($all_gadai as $gadai){ $tarikh_gadai = Carbon::parse($gadai['t_gadai']. ' 00:00:00'); $current = Carbon::now(); $current = $current->subDay(1); $tahun_gadai = $tarikh_gadai->year; $bulan_gadai = $tarikh_gadai->month; $hari_gadai = $tarikh_gadai->day; $tahun_semasa = $current->year; $bulan_semasa = $current->month; $hari_semasa = $current->day; if($hari_semasa >= $hari_gadai){ $beza_hari = $hari_semasa - $hari_gadai + 1; }else if($hari_semasa < $hari_gadai){ $bulan_semasa = $bulan_semasa - 1; $beza_hari = ($hari_semasa + 30) - $hari_gadai + 1; } $extensivemonth_gadai = 0; if($beza_hari >= 1 && $beza_hari <= 15){ $extensivemonth_gadai = 0.5; }else if($beza_hari >= 16){ $extensivemonth_gadai = 1; }else{ $extensivemonth_gadai = 0; } $beza_tahun = $tahun_semasa - $tahun_gadai; $beza_bulan = ($bulan_semasa + ($beza_tahun * 12)) - $bulan_gadai; $tempoh_gadai = $beza_bulan + $extensivemonth_gadai; $upah_semasa = $this->kiraupahTawarruqStokAudit($tempoh_gadai,$gadai['tempohbayar'],$gadai['kadarupah'],$gadai['bakipjm']); Gadai::on($cawangan_mysql['mysql'])->where('norujukan','=',$gadai['norujukan'])->update(array( 'jbg' => $tempoh_gadai, 'tempoh' => $tempoh_gadai, 'tunggakan' => $upah_semasa )); $data_gadai = [ 'tahun' => $year, 'bulan' => $month, 'norujukan' => $gadai['norujukan'], 'tempoh' => $tempoh_gadai, 'nokp' => $gadai['nokp'], 'berat' => $gadai['berat'], 'nilaimarhun' => $gadai['nilaimarhun'], 'pinjaman' => $gadai['pinjaman'], 'bakipjm' => $gadai['bakipjm'], 'kadarupah' => $gadai['kadarupah'], 'tempohblmbyar' => $gadai['tempoh'] - $gadai['tempohbayar'], 'upahblmbyar' => $upah_semasa, 'lanjutan' => $gadai['lelong_tawarruq'] ]; array_push($data,$data_gadai); } if($month == 1){ foreach (array_chunk($data,1000) as $t) { StokAudit1::on($cawangan_mysql['mysql'])->insert($t); } }elseif($month == 2){ foreach (array_chunk($data,1000) as $t) { StokAudit2::on($cawangan_mysql['mysql'])->insert($t); } }elseif($month == 3){ foreach (array_chunk($data,1000) as $t) { StokAudit3::on($cawangan_mysql['mysql'])->insert($t); } }elseif($month == 4){ foreach (array_chunk($data,1000) as $t) { StokAudit4::on($cawangan_mysql['mysql'])->insert($t); } }elseif($month == 5){ foreach (array_chunk($data,1000) as $t) { StokAudit5::on($cawangan_mysql['mysql'])->insert($t); } }elseif($month == 6){ foreach (array_chunk($data,1000) as $t) { StokAudit6::on($cawangan_mysql['mysql'])->insert($t); } }elseif($month == 7){ foreach (array_chunk($data,1000) as $t) { StokAudit7::on($cawangan_mysql['mysql'])->insert($t); } }elseif($month == 8){ foreach (array_chunk($data,1000) as $t) { StokAudit8::on($cawangan_mysql['mysql'])->insert($t); } }elseif($month == 9){ foreach (array_chunk($data,1000) as $t) { StokAudit9::on($cawangan_mysql['mysql'])->insert($t); } }elseif($month == 10){ foreach (array_chunk($data,1000) as $t) { StokAudit10::on($cawangan_mysql['mysql'])->insert($t); } }elseif($month == 11){ foreach (array_chunk($data,1000) as $t) { StokAudit11::on($cawangan_mysql['mysql'])->insert($t); } }elseif($month == 12){ foreach (array_chunk($data,1000) as $t) { StokAudit12::on($cawangan_mysql['mysql'])->insert($t); } } } return 'success'; } public function backupStokAuditProblem(Request $request){ if($request->zone == 'all'){ $cawangan = Cawangan::on('mysql7')->get(); }else{ $cawangan = Cawangan::on('mysql7')->where('zone',$request->zone)->get(); } // $tarikh = Carbon::now(); // $tarikh = $tarikh->subDay(1); $tarikh = Carbon::createFromFormat('Y-m-d H', $request->dateProblem)->toDateTimeString(); $month = $tarikh->month; $year = $tarikh->year; foreach($cawangan as $cawangan_mysql){ $all_gadai = Gadai::on($cawangan_mysql['mysql']) ->where([['tagpalsu','=',0],['sttebus','=','']]) ->orderBy('t_gadai', 'ASC') ->orderBy('sirig', 'ASC')->get(); $data = []; foreach($all_gadai as $gadai){ $tarikh_gadai = Carbon::parse($gadai['t_gadai']. ' 00:00:00'); // $current = Carbon::now(); // $current = $current->subDay(1); $current = Carbon::createFromFormat('Y-m-d H', $request->dateProblem)->toDateTimeString(); $tahun_gadai = $tarikh_gadai->year; $bulan_gadai = $tarikh_gadai->month; $hari_gadai = $tarikh_gadai->day; $tahun_semasa = $current->year; $bulan_semasa = $current->month; $hari_semasa = $current->day; if($hari_semasa >= $hari_gadai){ $beza_hari = $hari_semasa - $hari_gadai + 1; }else if($hari_semasa < $hari_gadai){ $bulan_semasa = $bulan_semasa - 1; $beza_hari = ($hari_semasa + 30) - $hari_gadai + 1; } $extensivemonth_gadai = 0; if($beza_hari >= 1 && $beza_hari <= 15){ $extensivemonth_gadai = 0.5; }else if($beza_hari >= 16){ $extensivemonth_gadai = 1; }else{ $extensivemonth_gadai = 0; } $beza_tahun = $tahun_semasa - $tahun_gadai; $beza_bulan = ($bulan_semasa + ($beza_tahun * 12)) - $bulan_gadai; $tempoh_gadai = $beza_bulan + $extensivemonth_gadai; $upah_semasa = $this->kiraupahTawarruqStokAudit($tempoh_gadai,$gadai['tempohbayar'],$gadai['kadarupah'],$gadai['bakipjm']); Gadai::on($cawangan_mysql['mysql'])->where('norujukan','=',$gadai['norujukan'])->update(array( 'jbg' => $tempoh_gadai, 'tempoh' => $tempoh_gadai, 'tunggakan' => $upah_semasa )); $data_gadai = [ 'tahun' => $year, 'bulan' => $month, 'norujukan' => $gadai['norujukan'], 'tempoh' => $tempoh_gadai, 'nokp' => $gadai['nokp'], 'berat' => $gadai['berat'], 'nilaimarhun' => $gadai['nilaimarhun'], 'pinjaman' => $gadai['pinjaman'], 'bakipjm' => $gadai['bakipjm'], 'kadarupah' => $gadai['kadarupah'], 'tempohblmbyar' => $gadai['tempoh'] - $gadai['tempohbayar'], 'upahblmbyar' => $upah_semasa, 'lanjutan' => $gadai['lelong_tawarruq'] ]; array_push($data,$data_gadai); } if($month == 1){ foreach (array_chunk($data,1000) as $t) { StokAudit1::on($cawangan_mysql['mysql'])->insert($t); } }elseif($month == 2){ foreach (array_chunk($data,1000) as $t) { StokAudit2::on($cawangan_mysql['mysql'])->insert($t); } }elseif($month == 3){ foreach (array_chunk($data,1000) as $t) { StokAudit3::on($cawangan_mysql['mysql'])->insert($t); } }elseif($month == 4){ foreach (array_chunk($data,1000) as $t) { StokAudit4::on($cawangan_mysql['mysql'])->insert($t); } }elseif($month == 5){ foreach (array_chunk($data,1000) as $t) { StokAudit5::on($cawangan_mysql['mysql'])->insert($t); } }elseif($month == 6){ foreach (array_chunk($data,1000) as $t) { StokAudit6::on($cawangan_mysql['mysql'])->insert($t); } }elseif($month == 7){ foreach (array_chunk($data,1000) as $t) { StokAudit7::on($cawangan_mysql['mysql'])->insert($t); } }elseif($month == 8){ foreach (array_chunk($data,1000) as $t) { StokAudit8::on($cawangan_mysql['mysql'])->insert($t); } }elseif($month == 9){ foreach (array_chunk($data,1000) as $t) { StokAudit9::on($cawangan_mysql['mysql'])->insert($t); } }elseif($month == 10){ foreach (array_chunk($data,1000) as $t) { StokAudit10::on($cawangan_mysql['mysql'])->insert($t); } }elseif($month == 11){ foreach (array_chunk($data,1000) as $t) { StokAudit11::on($cawangan_mysql['mysql'])->insert($t); } }elseif($month == 12){ foreach (array_chunk($data,1000) as $t) { StokAudit12::on($cawangan_mysql['mysql'])->insert($t); } } } return 'success'; } public function kiraupahTawarruqStokAudit($tempoh,$tempohbayar,$kadarupah,$bakipinjaman){ $bilang_bln = $tempoh - $tempohbayar; if($bilang_bln > 12){ $bilang_bln = 12; } $upahsemasa_raw = $bilang_bln * (($kadarupah/100 )* $bakipinjaman); $upah_semasa_round = number_format($upahsemasa_raw,2); $upah_semasa = substr($upah_semasa_round, 0, -1); // $upah_semasa = floatval(preg_replace('/[^\d.]/', '', $upah_semasa)); if(strpos($upah_semasa,',')){ $upah_semasa = str_replace(',','',$upah_semasa); } return $upah_semasa; } public function LaporanAuditBackdate(Request $request) { $cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$request->kodcaw)->first(); $bulan = $request->bulan; $tahun = $request->tahun; if($bulan == 1){ $audit = StokAudit1::on($cawangan['mysql'])->where('tahun',$tahun); }elseif($bulan == 2){ $audit = StokAudit2::on($cawangan['mysql'])->where('tahun',$tahun); }elseif($bulan == 3){ $audit = StokAudit3::on($cawangan['mysql'])->where('tahun',$tahun); }elseif($bulan == 4){ $audit = StokAudit4::on($cawangan['mysql'])->where('tahun',$tahun); }elseif($bulan == 5){ $audit = StokAudit5::on($cawangan['mysql'])->where('tahun',$tahun); }elseif($bulan == 6){ $audit = StokAudit6::on($cawangan['mysql'])->where('tahun',$tahun); }elseif($bulan == 7){ $audit = StokAudit7::on($cawangan['mysql'])->where('tahun',$tahun); }elseif($bulan == 8){ $audit = StokAudit8::on($cawangan['mysql'])->where('tahun',$tahun); }elseif($bulan == 9){ $audit = StokAudit9::on($cawangan['mysql'])->where('tahun',$tahun); }elseif($bulan == 10){ $audit = StokAudit10::on($cawangan['mysql'])->where('tahun',$tahun); }elseif($bulan == 11){ $audit = StokAudit11::on($cawangan['mysql'])->where('tahun',$tahun); }elseif($bulan == 12){ $audit = StokAudit12::on($cawangan['mysql'])->where('tahun',$tahun); } $rekodaudit = $audit->get(); $totalrekod = $audit->sum('pinjaman'); $totalberat = $audit->sum('berat'); $totalnilaimarhun = $audit->sum('nilaimarhun'); $totalpinjaman = $audit->sum('pinjaman'); $totalbakipjm = $audit->sum('bakipjm'); $totaltunggakan = $audit->sum('upahblmbyar'); $arrayrekod = ['rekod' => $rekodaudit, 'total' => $totalrekod,'totalberat' => $totalberat,'totalnilaimarhun' => $totalnilaimarhun,'totalpinjaman'=>$totalpinjaman,'totalbakipjm'=>$totalbakipjm,'totaltunggakan'=>$totaltunggakan]; if(sizeof($rekodaudit) == 0){ return response()->json('failed',200); }else{ return response()->json($arrayrekod,200); } } }