diff --git a/app/Http/Controllers/RealisasiBelanjaController.php b/app/Http/Controllers/RealisasiBelanjaController.php index 8a938be..aaf0a11 100644 --- a/app/Http/Controllers/RealisasiBelanjaController.php +++ b/app/Http/Controllers/RealisasiBelanjaController.php @@ -47,8 +47,8 @@ class RealisasiBelanjaController extends Controller { $BelanjaRealisasi = BelanjaRealisasi::where("id", $id)->firstOrNew(); // var_dump($BelanjaRealisasi->kode_rsk,$BelanjaRealisasi->kode_sub_kegiatan); exit; - $this->setTitle("Realisasi Belanja ".$BelanjaRealisasi->jenis_dana." ".$BelanjaRealisasi->sub_jenis_dana); - $this->setSubtitle("Detail Data"); + $this->setTitle("Realisasi Belanja"); + $this->setSubtitle("Realisasi Belanja :: ".$BelanjaRealisasi->jenis_dana." ".$BelanjaRealisasi->sub_jenis_dana); $vwAKB = VwAkbSpdRealRsk::where("I_IDRSK",$BelanjaRealisasi->kode_rsk)->firstorNew(); $BelanjaRealisasiKontrak = BelanjaRealisasiKontrak::where("belanja_realisasi_id",$id)->get(); $vwSPD = DB::select(DB::raw( @@ -247,7 +247,7 @@ class RealisasiBelanjaController extends Controller ]; BelanjaRealisasi::create($input); } - TempRealisasiBelanja::truncate(); + TempRealisasiBelanja::where("userid",Auth::user()->id)->truncate(); DB::commit(); return redirect('/upload-realisasi-belanja/'.$typeDana)->with('success','Data Realisasi belanja berhasil diupload.'); }catch(\Exception $e){ @@ -329,6 +329,18 @@ class RealisasiBelanjaController extends Controller } } + protected function uploadFileKontrak($request) + { + $file = $request->file('file_kontrak'); + if ($file){ + $fileName = $file->getClientOriginalName(); + $tujuan_upload = 'uploadFiles/kontrak'; + $file->move($tujuan_upload, $fileName); + return $fileName; + } + return false; + } + public function kontrak(Request $request, $id) { $BelanjaRealisasi = BelanjaRealisasi::where("id", $id)->firstOrNew(); @@ -339,14 +351,20 @@ class RealisasiBelanjaController extends Controller if ($request->isMethod('post')) { try{ DB::beginTransaction(); - BelanjaRealisasiKontrak::where("belanja_realisasi_id",$id)->where("nomor_kontrak",$req["nomor_kontrak"])->firstOrNew()->truncate(); + $this->validate($request, [ + 'file_kontrak' => 'required|mimes:pdf', + ]); + $fileName = $this->uploadFileKontrak($request); + + BelanjaRealisasiKontrak::where("belanja_realisasi_id",$id)->where("nomor_kontrak",$req["nomor_kontrak"])->firstOrNew()->delete(); $data["belanja_realisasi_id"] = $id; $data["nomor_kontrak"] = $req["nomor_kontrak"]; $data["tgl_kontrak"] = ConvertIndoDate($req["tgl_kontrak"]); $data["nominal_kontrak"] = replaceMoney($req["nominal_kontrak"]); - $data["file_kontrak"] = isset($req["file_kontrak"])?$req["file_kontrak"]:""; + $data["file_kontrak"] = $fileName; $data["created_by"] = Auth::user()->id; BelanjaRealisasiKontrak::create($data); + DB::commit(); return redirect($redirect)->with('success','Data Kontrak berhasil di input!'); @@ -373,6 +391,10 @@ class RealisasiBelanjaController extends Controller $data["nomor_kontrak"] = $req["nomor_kontrak"]; $data["tgl_kontrak"] = ConvertIndoDate($req["tgl_kontrak"]); $data["nominal_kontrak"] = replaceMoney($req["nominal_kontrak"]); + $fileName = $this->uploadFileKontrak($request); + if ($fileName){ + $data["file_kontrak"] = $fileName; + } $BelanjaRealisasiKontrak->update($data); DB::commit(); @@ -391,16 +413,33 @@ class RealisasiBelanjaController extends Controller { try{ DB::beginTransaction(); + $BelanjaRealisasiKontrak = BelanjaRealisasiKontrak::where("id",$id)->firstorNew(); + unlink("uploadFiles/kontrak/".$BelanjaRealisasiKontrak->file_kontrak); BelanjaRealisasiKontrak::where("id",$id)->delete(); DB::commit(); - return redirect('/realisasi-belanja/'.$id.'/kontrak') + return redirect('/realisasi-belanja/'.$BelanjaRealisasiKontrak->belanja_realisasi_id.'/submit') ->with('success','Data Kontrak Realisasi Belanja berhasil dihapus!'); }catch(Throwable $e){ DB::rollBack(); - return redirect('/realisasi-belanja/'.$id.'/kontrak') + return redirect('/realisasi-belanja/'.$BelanjaRealisasiKontrak->belanja_realisasi_id.'/submit') ->with('error','Data Kontrak Realisasi Belanja gagal dihapus.'); } } + + public function downloadKontrak($kode) + { + $kode = explode("__",$kode); + $BelanjaRealisasiKontrak = BelanjaRealisasiKontrak::where(["belanja_realisasi_id"=>$kode[0], "id"=>$kode[1]])->firstorNew(); + $headers = [ + 'Content-Type' => 'application/pdf', + 'Content-Disposition' => 'attachment;filename='.$BelanjaRealisasiKontrak->file_kontrak + ]; + if ($BelanjaRealisasiKontrak){ + return response()->download("uploadFiles/kontrak/".$BelanjaRealisasiKontrak->file_kontrak, $BelanjaRealisasiKontrak->file_kontrak, $headers); + }else{ + echo "File tidak ditemukan!"; + } + } } diff --git a/resources/views/partials/menu.blade.php b/resources/views/partials/menu.blade.php index 33d7929..759fcf5 100644 --- a/resources/views/partials/menu.blade.php +++ b/resources/views/partials/menu.blade.php @@ -36,7 +36,7 @@ - can("Read DBH Jadwal") || $role == "superadmin"){ ?> + can("Read DAK Jadwal") || $role == "superadmin"){ ?> - can("Upload DBH Rencana Belanja") || $role == "superadmin"){ ?> - - + can("Read DBH Realisasi Pendapatan") || $role == "superadmin"){ ?>