fix(penilai): perbaikan output resume,memo dan update upload foto directory by nomor registrasi

This commit is contained in:
majid
2025-01-22 09:06:10 +07:00
parent d101db1043
commit 575ea3fdce
12 changed files with 440 additions and 271 deletions

View File

@@ -253,7 +253,8 @@ class SurveyorController extends Controller
'nama_denah.*' => 'nullable|string|max:255',
'luas_denah.*' => 'nullable|numeric',
'permohonan_id' => 'required|exists:permohonan,id',
'dokument_id' => 'required'
'dokument_id' => 'required',
'nomor_registrasi' => 'required'
]);
if ($validator) {
try {
@@ -276,7 +277,7 @@ class SurveyorController extends Controller
if ($request->hasFile('foto_denah') && isset($request->file('foto_denah')[$index])) {
$file = $request->file('foto_denah')[$index];
$denahItem['foto_denah'] = $this->uploadFile($file, 'foto_denah');
$denahItem['foto_denah'] = $this->uploadFile($file, $request->nomor_registrasi);
} elseif (isset($existingDenahs[$index]['foto_denah'])) {
$denahItem['foto_denah'] = $existingDenahs[$index]['foto_denah'];
}
@@ -381,7 +382,7 @@ class SurveyorController extends Controller
}
// Upload dan simpan file baru
$formatFotojson[$file] = $this->uploadFile($request->file($file), $file);
$formatFotojson[$file] = $this->uploadFile($request->file($file), $request->nomor_registrasi);
}
}
@@ -448,12 +449,13 @@ class SurveyorController extends Controller
continue; // Lewati file yang tidak valid
}
// Generate nama file unik
$uniqueFileName = 'lantai_unit_' . $lantaiNomor . '_' . $fileIndex . '_' . Str::random(10) . '.' . $file->getClientOriginalExtension();
// Simpan file dengan nama asli
$path = $file->storeAs(
'surveyor/lantai_unit',
'surveyor/' . $request->nomor_registrasi . '/foto_lantai_unit',
$uniqueFileName . '/' . time() . '_' . $file->getClientOriginalName(),
'public'
);
@@ -490,12 +492,13 @@ class SurveyorController extends Controller
$formatFotoData = [];
foreach ($files as $index => $file) {
$timestamp = time();
$originalName = $file->getClientOriginalName();
$uniqueFileName = "{$timestamp}_{$originalName}";
$fileExtension = $file->extension();
$originalName = time() . '_' . $request->nomor_registrasi . '.' . $fileExtension;
// Simpan file
$path = $file->storeAs("surveyor/{$paramName}", $uniqueFileName, 'public');
$path = $file->storeAs("surveyor/{$request->nomor_registrasi}", $originalName, 'public');
$fotoData = [
'path' => $path,
@@ -653,7 +656,7 @@ class SurveyorController extends Controller
// Buat entri baru untuk file yang diunggah
$newPhotoEntry = [
$nameField => $newNames[$key],
$photoField => $this->uploadFile($file, $photoField . '.' . $key),
$photoField => $this->uploadFile($file, $request->nomor_registrasi),
$descriptionField => $newDescriptions[$key] ?? '',
];
@@ -777,7 +780,7 @@ class SurveyorController extends Controller
// Create new photo entry
$newPhotoEntry = [
$nameField => $newNames[$key] ?? '', // Use new name if provided
$photoField => $this->uploadFile($file, $photoField . '.' . $key)
$photoField => $this->uploadFile($file, $request->nomor_registrasi)
];
// Add description if field exists
@@ -959,11 +962,11 @@ class SurveyorController extends Controller
$id = $request->input('id');
$penilaian = Penilaian::findOrFail($id);
if ($validate['waktu_penilaian'] <= $penilaian->tanggal_kunjungan) {
return redirect()
->route('surveyor.index')
->with('error', 'Waktu penilaian harus lebih besar dari tanggal assign.');
}
if ($validate['waktu_penilaian'] <= $penilaian->tanggal_kunjungan) {
return redirect()
->route('surveyor.index')
->with('error', 'Waktu penilaian harus lebih besar dari tanggal assign.');
}
$penilaian->update([
'waktu_penilaian' => $validate['waktu_penilaian'],
'deskripsi_penilaian' => $validate['deskripsi_penilaian'],
@@ -1017,25 +1020,25 @@ class SurveyorController extends Controller
{
try {
$permohonan = Permohonan::findOrFail($id);
$permohonan = Permohonan::findOrFail($id);
$permohonan->update([
'status' => 'request-freeze',
'keterangan' => $request->message
]);
$permohonan->update([
'status' => 'request-freeze',
'keterangan' => $request->message
]);
return response()->json([
'success' => true,
'message' => 'Berhasil Kirim permintaan Request Freeaze ke So'
], 200);
return response()->json([
'success' => true,
'message' => 'Berhasil Kirim permintaan Request Freeaze ke So'
], 200);
} catch (\Exception $e) {
return response()->json([
'success' => false,
'message' => 'Terjadi kesalahan',
'error' => $e->getMessage()
], 500);
}
} catch (\Exception $e) {
return response()->json([
'success' => false,
'message' => 'Terjadi kesalahan',
'error' => $e->getMessage()
], 500);
}
}
@@ -2615,8 +2618,9 @@ class SurveyorController extends Controller
if ($request->hasFile($fileKey)) {
$file = $request->file($fileKey);
if ($file->isValid()) {
$fileName = time() . '_' . $file->getClientOriginalName();
$path = $file->storeAs("public/surveyor/{$request->type}", $fileName);
$fileExtension = $file->extension();
$fileName = time() . '_' . $request->nomor_registrasi . '.' . $fileExtension;
$path = $file->storeAs("public/surveyor/{$request->nomor_registrasi}", $fileName);
if ($path === false) {
throw new Exception("Failed to store file for {$fileKey}");
@@ -3091,7 +3095,8 @@ class SurveyorController extends Controller
throw new Exception("Invalid file upload for {$type}");
}
$fileName = time() . '_' . $file->getClientOriginalName();
$fileExtension = $file->extension();
$fileName = time() . '_' . $type . '.' . $fileExtension;
$path = $file->storeAs("public/surveyor/{$type}", $fileName);
if ($path === false) {