Files
lpj/app/Http/Requests/SurveyorRequest.php
2024-10-16 16:41:39 +07:00

65 lines
1.5 KiB
PHP

<?php
namespace Modules\Lpj\Http\Requests;
use Illuminate\Foundation\Http\FormRequest;
class SurveyorRequest extends FormRequest
{
/**
* Get the validation rules that apply to the request.
*/
public function rules()
: array
{
$action = $this->input('action');
$uniqueTable = [
'bentuk-tanah' => 'bentuk_tanah',
'kontur-tanah' => 'kontur_tanah',
'posisi-kavling' => 'posisi_kavling',
'ketinggian-tanah' => 'ketinggian_tanah',
'kondisi-fisik-tanah' => 'kondisi_fisik_tanah',
'kondisi-bangunan' => 'kondisi_bangunan',
'sifat-bangunan' => 'sifat_bangunan',
'sarana-pelengkap' => 'sarana_pelengkap',
'lalu_lintas_lokasi' => 'lalu_lintas_lokasi',
'tingkat-keramaian' => 'tingkat_keramaian',
];
$rules = [
'name' => 'required|max:255',
];
$id = $this->route('id');
if ($this->method() == 'PUT' || $this->method() == 'PATCH') {
$rules['code'] = 'required|max:50|unique:' . $uniqueTable[$action] . ',code,' . $id;
} else {
$rules['code'] = 'required|max:50|unique:' . $uniqueTable[$action] . ',code';
}
return $rules;
}
/**
* Determine if the user is authorized to make this request.
*/
public function authorize()
: bool
{
return true;
}
protected function prepareForValidation()
{
$this->merge([
'status' => true,
]);
}
}