From bfacdbe164d014c16a15e2c78511622582584851 Mon Sep 17 00:00:00 2001 From: Andy Chaerudin Date: Tue, 5 Nov 2024 16:04:07 +0700 Subject: [PATCH 1/4] melengkapi feature download pdf di menu SPK dan Registrasi Final --- app/Http/Controllers/RegistrasiFinalController.php | 7 +++++++ app/Http/Controllers/SpkController.php | 8 +++++++- resources/views/registrasifinal/edit.blade.php | 2 +- resources/views/registrasifinal/js/editjs.blade.php | 2 ++ resources/views/spk/documentSPK.blade.php | 9 +-------- resources/views/spk/index.blade.php | 4 ++-- routes/registrasi.php | 3 +++ 7 files changed, 23 insertions(+), 12 deletions(-) diff --git a/app/Http/Controllers/RegistrasiFinalController.php b/app/Http/Controllers/RegistrasiFinalController.php index 2561079..f6be10c 100644 --- a/app/Http/Controllers/RegistrasiFinalController.php +++ b/app/Http/Controllers/RegistrasiFinalController.php @@ -27,6 +27,7 @@ use Exception; use Illuminate\Support\Facades\Validator; use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\DB; + use Illuminate\Support\Facades\Storage; use Modules\Lpj\Models\PenawaranTender; @@ -164,6 +165,12 @@ use Modules\Lpj\Models\PenawaranTender; $penawaranString = convertSlug($penawaran->status); $penawaran->status = $penawaranString; } + + if($datas->dokumen) + { + $pdfSPK_path = Storage::url($datas->dokumen); + $datas->dokumen = $pdfSPK_path; + } $data['status'] = 'success'; $data['regions'] = $regions; diff --git a/app/Http/Controllers/SpkController.php b/app/Http/Controllers/SpkController.php index ec96a62..8496397 100644 --- a/app/Http/Controllers/SpkController.php +++ b/app/Http/Controllers/SpkController.php @@ -4,7 +4,7 @@ namespace Modules\Lpj\Http\Controllers; use Carbon\Carbon; use App\Http\Controllers\Controller; -use Barryvdh\DomPDF\Facade\Pdf; +use Barryvdh\DomPDF\Facade\Pdf; // https://github.com/barryvdh/laravel-dompdf use Exception; use Illuminate\Http\Request; use Maatwebsite\Excel\Facades\Excel; @@ -235,4 +235,10 @@ use Illuminate\Support\Facades\Auth; return view('lpj::spk.dokumennya', compact('data', 'penawaran')); } + + public function download($id) { + $document = Permohonan::find($id); + + return response()->download(storage_path('app/public/' .$document->dokumen)); + } } diff --git a/resources/views/registrasifinal/edit.blade.php b/resources/views/registrasifinal/edit.blade.php index ddaead8..c820c79 100644 --- a/resources/views/registrasifinal/edit.blade.php +++ b/resources/views/registrasifinal/edit.blade.php @@ -69,7 +69,7 @@
- +
diff --git a/resources/views/registrasifinal/js/editjs.blade.php b/resources/views/registrasifinal/js/editjs.blade.php index 9464649..c46596d 100644 --- a/resources/views/registrasifinal/js/editjs.blade.php +++ b/resources/views/registrasifinal/js/editjs.blade.php @@ -43,6 +43,8 @@ $("#textCodePenawaran").text(response.penawaran.code); $("#textStatusPenawaran").text(response.penawaran.status); setRegionList(response.regions,0); + // alert(response.datas.dokumen); + $("#pdfSPK").attr("href", response.datas.dokumen); // success // var message = response.message; diff --git a/resources/views/spk/documentSPK.blade.php b/resources/views/spk/documentSPK.blade.php index 8bf42c3..a262e02 100644 --- a/resources/views/spk/documentSPK.blade.php +++ b/resources/views/spk/documentSPK.blade.php @@ -1,12 +1,5 @@ - - - - + - -
+
+ +
+ +
diff --git a/resources/views/registrasi/js/editjs.blade.php b/resources/views/registrasi/js/editjs.blade.php index 1863f78..80bc38d 100644 --- a/resources/views/registrasi/js/editjs.blade.php +++ b/resources/views/registrasi/js/editjs.blade.php @@ -13,6 +13,7 @@ $("#{{ $route[0] }}_div_jenis_pilihan").show(); $("#{{ $route[0] }}_div_catatan").hide(); $("#{{ $route[0] }}_div_region").hide(); + $("#{{ $route[0] }}_div_catatan2").show(); // prepare data setData(); } @@ -94,12 +95,14 @@ $("#{{ $route[0] }}_div_jenis_pilihan").show(); $("#{{ $route[0] }}_catatan").val(''); $("#{{ $route[0] }}_div_catatan").hide(); + $("#{{ $route[0] }}_div_catatan2").show(); } else { $("#{{$route[0]}}_jenis_penilaian option[value=0]").prop('selected', true); $("#{{ $route[0] }}_div_jenis_pilihan").hide(); $("#{{ $route[0] }}_div_catatan").show(); + $("#{{ $route[0] }}_div_catatan2").hide(); } }); @@ -115,6 +118,7 @@ let jenis_penilaian = $("#{{$route[0]}}_jenis_penilaian").val(); let region = $("#{{$route[0]}}_region").val(); let catatan = $("#{{$route[0]}}_catatan").val(); + let catatan2 = $("#{{$route[0]}}_catatan2").val(); if(jenis_penilaian==0) jenis_penilaian=''; @@ -129,6 +133,7 @@ input_data.jenis_penilaian= jenis_penilaian; input_data.region= region; input_data.catatan = catatan; + input_data.catatan2 = catatan2; let useURL= '{{ route($route[0].'.update', $id) }}'; $.ajax({ diff --git a/resources/views/registrasi/show.blade.php b/resources/views/registrasi/show.blade.php index 9ff7791..22cc87f 100644 --- a/resources/views/registrasi/show.blade.php +++ b/resources/views/registrasi/show.blade.php @@ -199,7 +199,7 @@
-
+
@@ -208,6 +208,15 @@ +
+

+
+ +
+ +
diff --git a/resources/views/registrasifinal/show.blade.php b/resources/views/registrasifinal/show.blade.php index 7592d0d..b9471ad 100644 --- a/resources/views/registrasifinal/show.blade.php +++ b/resources/views/registrasifinal/show.blade.php @@ -45,10 +45,9 @@ Tujan Permohonan: - {{ $permohonan->tujuanPenilaian->name }} + {{ $permohonan->tujuanPenilaian->name }} {!! $permohonan->dokumen !!}
-
From 315a52a78db08170d268472af2fdcc922adfc21f Mon Sep 17 00:00:00 2001 From: Daeng Deni Mardaeni Date: Wed, 6 Nov 2024 10:58:03 +0700 Subject: [PATCH 4/4] Perbaiki referensi ID permohonan dan relasi di Registrasi Final Mengubah referensi ID dari `data.id` ke `data.permohonan.id` pada tombol aksi di view registrasifinal.index.blade.php. Juga, menambahkan relasi `permohonan` pada query dan menghapus beberapa spasi kosong yang tidak perlu di RegistrasiFinalController.php untuk meningkatkan keterbacaan kode. --- .../Controllers/RegistrasiFinalController.php | 48 +++++++++---------- .../views/registrasifinal/index.blade.php | 4 +- 2 files changed, 26 insertions(+), 26 deletions(-) diff --git a/app/Http/Controllers/RegistrasiFinalController.php b/app/Http/Controllers/RegistrasiFinalController.php index deb2781..4ccb0e7 100644 --- a/app/Http/Controllers/RegistrasiFinalController.php +++ b/app/Http/Controllers/RegistrasiFinalController.php @@ -28,7 +28,7 @@ use Exception; use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\DB; use Illuminate\Support\Facades\Storage; - + use Modules\Lpj\Models\PenawaranTender; class RegistrasiFinalController extends Controller @@ -51,15 +51,15 @@ use Modules\Lpj\Models\PenawaranTender; ->select('penawaran.*', 'tujuan_penilaian_kjpp.name as tujuan_penilaian_kjpp_name') ->leftJoin('tujuan_penilaian_kjpp', 'tujuan_penilaian_kjpp.id','=','penawaran.tujuan_penilaian_kjpp_id') ->where('penawaran.status','=','spk') - ->withCount('penawarandetails'); - + ->withCount('penawarandetails'); + // Apply search filter if provided if ($request->has('search') && !empty($request->get('search'))) { $search = $request->get('search'); $query->where(function ($q) use ($search) { $q->where('nomor_registrasi', 'LIKE', '%' . $search . '%'); $q->orWhere('tanggal_permohonan', 'LIKE', '%' . $search . '%'); - + $q->orWhere('status', 'LIKE', '%' . $search . '%'); }); } @@ -85,10 +85,10 @@ use Modules\Lpj\Models\PenawaranTender; // Get the filtered count of records $filteredRecords = $query->count(); - + // Get the data for the current page //$data = $query->with(['user', 'debiture', 'branch', 'tujuanPenilaian'])->get(); - $data = $query->get(); + $data = $query->with(['permohonan'])->get(); // dd($data); $i=0; foreach($data as $obj) @@ -97,18 +97,18 @@ use Modules\Lpj\Models\PenawaranTender; { $data[$i]->tanggal_penilaian_sebelumnya = Carbon::parse($obj->tanggal_penilaian_sebelumnya)->format('d F Y H:i:s'); } - + if($obj->biaya_kjpp_sebelumnya) { $data[$i]->biaya_kjpp_sebelumnya = formatRupiah($obj->biaya_kjpp_sebelumnya); - + } // date_range if($obj->start_date && $obj->end_date) { $data[$i]->date_range = Carbon::parse($obj->start_date)->format('d M Y').' - '.Carbon::parse($obj->end_date)->format('d M Y'); - + } $i++; @@ -141,7 +141,7 @@ use Modules\Lpj\Models\PenawaranTender; $pdfSPK_path = Storage::url($permohonan->dokumen); $permohonan->dokumen = $pdfSPK_path; $permohonan->dokumen = '| Dokumen SPK.pdf   '; - } + } return view('lpj::registrasifinal.show', compact('id','permohonan')); } @@ -159,7 +159,7 @@ use Modules\Lpj\Models\PenawaranTender; if (request()->ajax()) { $id = $request->id; $datas = Permohonan::find($id); - + if ($datas) { $penawaran=null; $regions=null; @@ -171,13 +171,13 @@ use Modules\Lpj\Models\PenawaranTender; { $penawaranString = convertSlug($penawaran->status); $penawaran->status = $penawaranString; - } - + } + if($datas->dokumen) { $pdfSPK_path = Storage::url($datas->dokumen); $datas->dokumen = $pdfSPK_path; - } + } $data['status'] = 'success'; $data['regions'] = $regions; @@ -203,14 +203,14 @@ use Modules\Lpj\Models\PenawaranTender; $data = array(); $dataPermohonan = array(); $dataPenawaran = array(); - + if (request()->ajax()) { $validator = RegistrasiFinalController::rulesEditnya($request, $id); - + if ($validator['fails']) { $data['message'] = $validator['errors']; $data['status'] = 'error'; - } + } else { DB::beginTransaction(); @@ -224,18 +224,18 @@ use Modules\Lpj\Models\PenawaranTender; 'keterangan' => $request->catatan, 'authorized_at' => now(), 'authorized_status' =>1, - 'authorized_by' => Auth::id() + 'authorized_by' => Auth::id() ]; $dataPenawaran = ['status' => 'registrasi-final']; - + $permohonan = Permohonan::find($id); - $penawaran = PenawaranTender::where('nomor_registrasi','=',$permohonan->nomor_registrasi)->first(); - + $penawaran = PenawaranTender::where('nomor_registrasi','=',$permohonan->nomor_registrasi)->first(); + $permohonan->update($dataPermohonan); $penawaran->update($dataPenawaran); - // + // DB::commit(); $data['status'] = 'success'; @@ -246,7 +246,7 @@ use Modules\Lpj\Models\PenawaranTender; $data['message']['message_try_catch'] = array('Regitrasi Final '.$permohonan->nomor_registrasi.' failed.'); } } - + } else { $data['status'] = 'error'; $data['message']['message_ajax'] = array("no ajax request"); @@ -259,7 +259,7 @@ use Modules\Lpj\Models\PenawaranTender; public function rulesEditnya($request, $id) { $validate_catatan=''; - + $validateIt = [ // 'name' diambil dari definisi parameter yang di kirim pada POST Data 'region' => 'required', diff --git a/resources/views/registrasifinal/index.blade.php b/resources/views/registrasifinal/index.blade.php index 4e50882..b25be3f 100644 --- a/resources/views/registrasifinal/index.blade.php +++ b/resources/views/registrasifinal/index.blade.php @@ -133,10 +133,10 @@ title: 'Status', render: (item, data) => { return ``;