main
Ilham Wara Nugroho 2026-04-07 14:43:31 +07:00
parent a0f5783681
commit 5a58b7a813
2 changed files with 111 additions and 6 deletions

View File

@ -172,6 +172,7 @@ class CSAPController extends Controller
*/ */
public function store(Request $request) public function store(Request $request)
{ {
// dd($request->all());
$sekolahId = decode_id($request->sekolah); $sekolahId = decode_id($request->sekolah);
if(session('group_alias') == 'penilai_kota'){ if(session('group_alias') == 'penilai_kota'){
$status = 1; $status = 1;
@ -189,6 +190,60 @@ class CSAPController extends Controller
if($request['validasi'] == 1){ if($request['validasi'] == 1){
if(session('group_alias') == 'penilai_kota'){ 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 = Kuesioner::where('ms_sekolah_id',$sekolahId)->where('tahun',date('Y'))->first();
$kuesioner->catatan_usulan = $request['catatan_validasi']; $kuesioner->catatan_usulan = $request['catatan_validasi'];
$kuesioner->status = 4; $kuesioner->status = 4;
@ -204,6 +259,8 @@ class CSAPController extends Controller
$log->status = 4; $log->status = 4;
$log->created_by = auth()->user()->id; $log->created_by = auth()->user()->id;
$log->save(); $log->save();
}elseif(session('group_alias') == 'penilai_provinsi'){ }elseif(session('group_alias') == 'penilai_provinsi'){
$kuesioner = Kuesioner::where('ms_sekolah_id',$sekolahId)->where('tahun',date('Y'))->first(); $kuesioner = Kuesioner::where('ms_sekolah_id',$sekolahId)->where('tahun',date('Y'))->first();
$kuesioner->catatan_usulan = $request['catatan_validasi']; $kuesioner->catatan_usulan = $request['catatan_validasi'];

View File

@ -356,6 +356,28 @@
</select> </select>
</div> </div>
</div> </div>
<div class="col-md-6 my-2">
<div class="form-group">
<label class="fw-500">Surat Lampiran Pengajuan Adiwiyata Tingkat Provinsi</label>
@if(session('group_alias') == 'penilai_kota')
<input id="lampiran" name="lampiran" type="file" class="form-control">
@endif
@if(@$kuesioner->dokumen->surat_lampiran_prov)
<a href="{{ url('fileasset?path=uploads/' . @$kuesioner->dokumen->surat_lampiran_prov) }}" class="btn btn-success">Download File</a>
@endif
</div>
</div>
<div class="col-md-6 my-2">
<div class="form-group">
<label class="fw-500">Berita Acara</label>
@if(session('group_alias') == 'penilai_kota')
<input id="berita_acara" name="berita_acara" type="file" class="form-control">
@endif
@if(@$kuesioner->dokumen->berita_acara)
<a href="{{ url('fileasset?path=uploads/' . @$kuesioner->dokumen->berita_acara) }}" class="btn btn-success">Download File</a>
@endif
</div>
</div>
<div class="col-md-12 my-2"> <div class="col-md-12 my-2">
<div class="form-group"> <div class="form-group">
<label class="fw-500">Catatan</label> <label class="fw-500">Catatan</label>
@ -375,6 +397,8 @@
</div> </div>
@endif @endif
@endif @endif
<button id="btnSaveUsulan" class="btn btn-success {{ (count(@$penilaian) == count(@$page) ? '' : 'd-none') }}"><i class="fal fa-save"></i>&nbsp;Simpan Data</button>
</div> </div>
</div> </div>
</div> </div>
@ -508,6 +532,7 @@
var validasi = $('#validasi').find(':selected').val(); var validasi = $('#validasi').find(':selected').val();
var catatan_validasi = $('#catatan_validasi').val(); var catatan_validasi = $('#catatan_validasi').val();
var lampiran = $('#lampiran').val();
if(validasi == ''){ if(validasi == ''){
toastr.error("Validasi Belum Dipilih", 'Error!', {positionClass: 'toast-bottom-right', containerId: 'toast-bottom-right'}); toastr.error("Validasi Belum Dipilih", 'Error!', {positionClass: 'toast-bottom-right', containerId: 'toast-bottom-right'});
return; return;
@ -517,18 +542,41 @@
return; 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({ $.ajax({
url: "{{route('modules.usulan.csap.store')}}", // Ganti dengan URL API-mu url: "{{route('modules.usulan.csap.store')}}", // Ganti dengan URL API-mu
type: 'POST', // Bisa juga 'POST' kalau perlu type: 'POST', // Bisa juga 'POST' kalau perlu
processData: false, // WAJIB
contentType: false, // WAJIB
xhrFields: { xhrFields: {
withCredentials: true withCredentials: true
}, },
data: { data: formData,
_token:'{{csrf_token()}}', // data: {
validasi: validasi, // _token:'{{csrf_token()}}',
catatan_validasi: catatan_validasi, // validasi: validasi,
sekolah: "{{encode_id(@$sekolah->MsSekolahId)}}" // catatan_validasi: catatan_validasi,
}, // Kirim number sebagai parameter // sekolah: "{{encode_id(@$sekolah->MsSekolahId)}}"
// }, // Kirim number sebagai parameter
dataType: 'json', // Format respons JSON dataType: 'json', // Format respons JSON
beforeSend: function () { beforeSend: function () {
$('#loading-spinner').show(); // Menampilkan spinner $('#loading-spinner').show(); // Menampilkan spinner