feat(laporan_external): tambahkan fitur laporan eksternal

- Menambahkan controller LaporanExternalController untuk mengelola laporan eksternal.
- Menambahkan request LaporanExternalRequest untuk validasi data laporan eksternal.
- Menambahkan model LaporanExternal untuk interaksi dengan database.
- Menambahkan migrasi untuk tabel laporan_externals dengan kolom yang diperlukan.
This commit is contained in:
Daeng Deni Mardaeni
2025-03-06 08:41:03 +07:00
parent ff4d48704f
commit 38b22bce38
4 changed files with 290 additions and 0 deletions

View File

@@ -0,0 +1,41 @@
<?php
namespace Modules\Lpj\Http\Requests;
use Illuminate\Foundation\Http\FormRequest;
class LaporanExternalRequest extends FormRequest
{
/**
* Get the validation rules that apply to the request.
*/
public function rules()
: array
{
return [
'permohonan_id' => 'required|exists:permohonans,id',
'nomor_laporan' => 'required|string|max:255',
'tgl_final_laporan' => 'required|date',
'nilai_pasar' => 'required|numeric',
'indikasi_nilai_likuidasi' => 'required|numeric',
'indikasi_nilai_pasar_tanah' => 'required|numeric',
'estimasi_harga_tanah' => 'required|numeric',
'estimasi_harga_bangunan' => 'required|numeric',
'indikasi_nilai_pasar_bangunan' => 'required|numeric',
'indikasi_nilai_pasar_sarana_pelengkap' => 'required|numeric',
'indikasi_nilai_pasar_mesin' => 'required|numeric',
'indikasi_nilai_pasar_kendaraan_alat_berat' => 'required|numeric',
'file_resume' => 'nullable|file|mimes:pdf|max:10240', // 10MB max
'file_laporan' => 'nullable|file|mimes:pdf|max:10240',
];
}
/**
* Determine if the user is authorized to make this request.
*/
public function authorize()
: bool
{
return true;
}
}