65 lines
1.5 KiB
PHP
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,
|
|
]);
|
|
}
|
|
}
|