From 5a58b7a813da6e26576dbb40287d39133bd88352 Mon Sep 17 00:00:00 2001 From: Ilham Wara Nugroho Date: Tue, 7 Apr 2026 14:43:31 +0700 Subject: [PATCH] update --- .../Modules/Usulan/CSAPController.php | 57 ++++++++++++++++++ .../views/modules/usulan/csap/form.blade.php | 60 +++++++++++++++++-- 2 files changed, 111 insertions(+), 6 deletions(-) diff --git a/app/Http/Controllers/Modules/Usulan/CSAPController.php b/app/Http/Controllers/Modules/Usulan/CSAPController.php index f864b26..c0a6654 100644 --- a/app/Http/Controllers/Modules/Usulan/CSAPController.php +++ b/app/Http/Controllers/Modules/Usulan/CSAPController.php @@ -172,6 +172,7 @@ class CSAPController extends Controller */ public function store(Request $request) { + // dd($request->all()); $sekolahId = decode_id($request->sekolah); if(session('group_alias') == 'penilai_kota'){ $status = 1; @@ -189,6 +190,60 @@ class CSAPController extends Controller if($request['validasi'] == 1){ if(session('group_alias') == 'penilai_kota'){ + + + if (@$request->hasFile('lampiran')) { + $file = $request->file('lampiran'); + $destinationPath = public_path('uploads/lampiran'); + $current = Carbon::now()->format('Y/m/d'); + $path = $destinationPath . '/' . $current; + if($fileExtension != 'pdf'){ + + return response()->json(['validasi' => false,'message' => 'Maaf File Harus Berupa PDF!']); + } + $newFilename = session('id').'_'.uniqid('file_') . '.' . $fileExtension; + + if (!File::exists($path)) { + File::isDirectory($path) or File::makeDirectory($path, 0777, true, true); + } + + $path = 'lampiran/' . $current . '/' . $newFilename; + // $uploaded = $file->move($path, $newFilename); + s3Assetupload('uploads/'.$path,$file); + + $dok = DokumenAdministrasi::updateOrCreate([ + 'kuesioner_id' => $kuesioner->KuesionerId, + ],[ + 'surat_lampiran_prov' => @$path, + ]); + } + + if (@$request->hasFile('berita_acara')) { + $file = $request->file('berita_acara'); + $destinationPath = public_path('uploads/berita_acara'); + $current = Carbon::now()->format('Y/m/d'); + $path = $destinationPath . '/' . $current; + if($fileExtension != 'pdf'){ + + return response()->json(['validasi' => false,'message' => 'Maaf File Harus Berupa PDF!']); + } + $newFilename = session('id').'_'.uniqid('file_') . '.' . $fileExtension; + + if (!File::exists($path)) { + File::isDirectory($path) or File::makeDirectory($path, 0777, true, true); + } + + $path = 'berita_acara/' . $current . '/' . $newFilename; + // $uploaded = $file->move($path, $newFilename); + s3Assetupload('uploads/'.$path,$file); + + $dok = DokumenAdministrasi::updateOrCreate([ + 'kuesioner_id' => $kuesioner->KuesionerId, + ],[ + 'berita_acara' => @$path, + ]); + } + $kuesioner = Kuesioner::where('ms_sekolah_id',$sekolahId)->where('tahun',date('Y'))->first(); $kuesioner->catatan_usulan = $request['catatan_validasi']; $kuesioner->status = 4; @@ -204,6 +259,8 @@ class CSAPController extends Controller $log->status = 4; $log->created_by = auth()->user()->id; $log->save(); + + }elseif(session('group_alias') == 'penilai_provinsi'){ $kuesioner = Kuesioner::where('ms_sekolah_id',$sekolahId)->where('tahun',date('Y'))->first(); $kuesioner->catatan_usulan = $request['catatan_validasi']; diff --git a/resources/views/modules/usulan/csap/form.blade.php b/resources/views/modules/usulan/csap/form.blade.php index 75b6b41..74e7442 100644 --- a/resources/views/modules/usulan/csap/form.blade.php +++ b/resources/views/modules/usulan/csap/form.blade.php @@ -356,6 +356,28 @@ +
+
+ + @if(session('group_alias') == 'penilai_kota') + + @endif + @if(@$kuesioner->dokumen->surat_lampiran_prov) + Download File + @endif +
+
+
+
+ + @if(session('group_alias') == 'penilai_kota') + + @endif + @if(@$kuesioner->dokumen->berita_acara) + Download File + @endif +
+
@@ -375,6 +397,8 @@
@endif @endif + +
@@ -508,6 +532,7 @@ var validasi = $('#validasi').find(':selected').val(); var catatan_validasi = $('#catatan_validasi').val(); + var lampiran = $('#lampiran').val(); if(validasi == ''){ toastr.error("Validasi Belum Dipilih", 'Error!', {positionClass: 'toast-bottom-right', containerId: 'toast-bottom-right'}); return; @@ -517,18 +542,41 @@ return; } + if(lampiran == ''){ + toastr.error("Surat Lampiran Pengajuan Adiwiyata Tingkat Provinsi Belum Diupload", 'Error!', {positionClass: 'toast-bottom-right', containerId: 'toast-bottom-right'}); + return; + } + + var formData = new FormData(); + + // append data biasa + formData.append('_token', '{{csrf_token()}}'); + formData.append('validasi', validasi); + formData.append('catatan_validasi', catatan_validasi); + formData.append('sekolah', "{{encode_id(@$sekolah->MsSekolahId)}}"); + + var lampiran_input = $('#lampiran')[0].files[0]; + var berita_acara_input = $('#berita_acara')[0].files[0]; + + // append file + formData.append('lampiran', lampiran_input); + formData.append('berita_acara', berita_acara_input); + $.ajax({ url: "{{route('modules.usulan.csap.store')}}", // Ganti dengan URL API-mu type: 'POST', // Bisa juga 'POST' kalau perlu + processData: false, // WAJIB + contentType: false, // WAJIB xhrFields: { withCredentials: true }, - data: { - _token:'{{csrf_token()}}', - validasi: validasi, - catatan_validasi: catatan_validasi, - sekolah: "{{encode_id(@$sekolah->MsSekolahId)}}" - }, // Kirim number sebagai parameter + data: formData, + // data: { + // _token:'{{csrf_token()}}', + // validasi: validasi, + // catatan_validasi: catatan_validasi, + // sekolah: "{{encode_id(@$sekolah->MsSekolahId)}}" + // }, // Kirim number sebagai parameter dataType: 'json', // Format respons JSON beforeSend: function () { $('#loading-spinner').show(); // Menampilkan spinner