diff --git a/app/Http/Controllers/PenilaiController.php b/app/Http/Controllers/PenilaiController.php index c280282..e520bf7 100644 --- a/app/Http/Controllers/PenilaiController.php +++ b/app/Http/Controllers/PenilaiController.php @@ -246,11 +246,13 @@ class PenilaiController extends Controller */ public function edit($id) { - return view('lpj::edit'); + $permohonan = Permohonan::with('debiture')->find($id); + return view('lpj::penilai.edit',compact('permohonan')); } - public function storePaparan($id) + + public function storePaparan(Request $request, $id) { try { $permohonan = Permohonan::findOrFail($id); @@ -269,17 +271,20 @@ class PenilaiController extends Controller ] ); - return response()->json([ - 'success' => true, - 'message' => 'diperbarui ke status paparan dan dikirim ke So untuk proses lebih lanjut.' - ], 200); + if($request->hasFile('file_paparan')) { + $file = $request->file('file_paparan'); + $path = $file->store('public/file_paparan'); + + $penilai = Penilai::where('permohonan_id', $id)->first(); + $penilai->file_paparan = $path; + $penilai->save(); + } + + return redirect() + ->route('penilai.show',['id'=>$id])->with('success', 'diperbarui ke status paparan dan dikirim ke So untuk proses lebih lanjut.'); } catch (\Exception $e) { - return response()->json([ - 'success' => false, - 'message' => 'Terjadi kesalahan saat memproses permohonan.', - 'error' => $e->getMessage() - ], 500); + return redirect()->route('penilai.show',['id'=>$id])->with('error', 'Terjadi kesalahan saat memproses permohonan.'); } } diff --git a/app/Http/Controllers/PenilaianController.php b/app/Http/Controllers/PenilaianController.php index 1a48914..e3e3229 100644 --- a/app/Http/Controllers/PenilaianController.php +++ b/app/Http/Controllers/PenilaianController.php @@ -539,6 +539,10 @@ class PenilaianController extends Controller 'approve_so_at' => now(), 'keterangan_so' => $request->message, ]); + + $permohonan->update([ + 'tanggal_paparan' => $request->tanggalPaparan + ]); } elseif (Auth::user()->roles[0]->name === 'EO Appraisal') { $status = '2'; if (!in_array($permohonan->nilai_plafond_id, [1, 4])) { @@ -564,12 +568,11 @@ class PenilaianController extends Controller ]); $permohonan->update([ - 'status' => 'paparan', - 'tanggal_paparan' => $request->tanggalPaparan + 'status' => 'paparan' ]); } break; - + default: return response()->json([ 'message' => 'Konteks otorisasi tidak valid.', @@ -679,7 +682,10 @@ class PenilaianController extends Controller }, 'approveSo', 'approveEo', - 'approveDd' + 'approveDd', + 'authorization.approveSo', + 'authorization.approveEo', + 'authorization.approveDd' ])->get(); diff --git a/app/Models/Permohonan.php b/app/Models/Permohonan.php index ec0604f..8bdb2f3 100644 --- a/app/Models/Permohonan.php +++ b/app/Models/Permohonan.php @@ -217,4 +217,8 @@ public function approveSo(){ return $this->belongsTo(User::class, 'approval_so', 'id'); } + + public function authorization(){ + return $this->belongsTo(Authorization::class, 'id', 'permohonan_id'); + } } diff --git a/database/migrations/2025_01_23_040956_update_penilai_table.php b/database/migrations/2025_01_23_040956_update_penilai_table.php new file mode 100644 index 0000000..60313c6 --- /dev/null +++ b/database/migrations/2025_01_23_040956_update_penilai_table.php @@ -0,0 +1,28 @@ +string('file_paparan')->nullable(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::table('penilai', function (Blueprint $table) { + $table->dropColumn('file_paparan'); + }); + } +}; diff --git a/resources/views/laporan/index.blade.php b/resources/views/laporan/index.blade.php index d522f6c..555b890 100644 --- a/resources/views/laporan/index.blade.php +++ b/resources/views/laporan/index.blade.php @@ -193,7 +193,7 @@ let resumeButton = ''; if(data.penilai.resume) { - const resumeButton = ` + resumeButton = ` Resume `; diff --git a/resources/views/penilai/components/print-resume.blade.php b/resources/views/penilai/components/print-resume.blade.php index 9fc70df..e91d0ec 100644 --- a/resources/views/penilai/components/print-resume.blade.php +++ b/resources/views/penilai/components/print-resume.blade.php @@ -254,7 +254,7 @@ Tanggal Survey : - {{ formatTanggalIndonesia($permohonan->penilaian->tanggal_kunjungan) }} + {{ isset($permohonan->penilaian->tanggal_kunjungan) ? formatTanggalIndonesia($permohonan->penilaian->tanggal_kunjungan) : '' }} Surveyor diff --git a/resources/views/penilai/edit.blade.php b/resources/views/penilai/edit.blade.php new file mode 100644 index 0000000..9c2fde1 --- /dev/null +++ b/resources/views/penilai/edit.blade.php @@ -0,0 +1,72 @@ +@extends('layouts.main') + +@section('breadcrumbs') + {{ Breadcrumbs::render('penilai.edit') }} +@endsection + +@section('content') +
+
+
+
+ Upload File Paparan +
+
+ Back +
+
+
+
+ @csrf + + +
+ +
+ + @error('nomor_registrasi') + {{ $message }} + @enderror +
+
+ +
+ +
+ + @error('debitur') + {{ $message }} + @enderror +
+
+ +
+ +
+ + @error('file_paparan') + {{ $message }} + @enderror +
+
+
+ +
+
+
+
+
+@endsection + + +@push('scripts') + +@endpush diff --git a/resources/views/penilai/show.blade.php b/resources/views/penilai/show.blade.php index e8deb10..39a0c52 100644 --- a/resources/views/penilai/show.blade.php +++ b/resources/views/penilai/show.blade.php @@ -560,45 +560,9 @@ cancelButtonColor: '#d33', confirmButtonText: 'Yes' }).then((result) => { - if (result.isConfirmed) { - $.ajax({ - url: `/penilai/storePaparan/${permohonanId}`, - type: "PUT", - headers: { - 'X-CSRF-TOKEN': '{{ csrf_token() }}' - }, - success: function(response) { - if (response.success) { - // window.location.reload(); - hideLoadingSwal(); - Swal.fire({ - title: 'Berhasil!', - text: response.message, - icon: 'success', - confirmButtonText: 'OK' - }).then((response) => { - if (response.isConfirmed) { - window.location.reload(); - } - }); - } - }, - error: function(xhr, status, error) { - console.log('Error checking button status:', error, status, xhr); - if (xhr.responseJSON.message) { - // window.location.reload(); - hideLoadingSwal(); - - } else { - // window.location.reload(); - hideLoadingSwal(); - } - } - }) - + window.location.href = `/penilai/${permohonanId}/edit`; } - }); } diff --git a/resources/views/penilaian/otorisator/show.blade.php b/resources/views/penilaian/otorisator/show.blade.php index ce1c1b8..b442693 100644 --- a/resources/views/penilaian/otorisator/show.blade.php +++ b/resources/views/penilaian/otorisator/show.blade.php @@ -159,13 +159,13 @@ @endif @elseif($dataHeader == 'paparan') - - Lihat Data Paparan - - + @if($permohonan->penilai->file_paparan) + Lihat Data Paparan + @endif @if(Auth::user()->hasAnyRole(['administrator','senior-officer']) && $authorization->approve_so==null) - @@ -173,8 +173,7 @@ @if(Auth::user()->hasAnyRole(['administrator', 'DD Appraisal']) && $authorization->approve_so && - $authorization->approve_dd == null && - in_array($permohonan->nilai_plafond_id, [1, 4])) + $authorization->approve_dd == null)