|string> */ public function rules(): array { return [ 'nama_klasifikasi' => 'required|string' ]; } public function messages(){ return [ 'nama_klasifikasi.required' => 'Nama Kategori wajib diisi' ]; } protected function failedValidation(Validator $validator){ throw new HttpResponseException( response()->json([ 'status' => 'VALIDATION_FAILED', 'message' => 'Validasi Gagal', 'errors' => $validator->errors()->messages(), ], 422) ); } public function withValidator($validator){ $validator->after(function($validator){ $id = $this->route('master_klasifikasi') ?? $this->master_klasifikasi_directory_id ?? null; $exists = DB::connection('dbDirectory') ->table('public.master_klasifikasi_directory') ->where('nama_klasifikasi_directory', 'ILIKE', $this->input('nama_klasifikasi')); if($id) $exists->where('master_klasifikasi_directory_id', '!=', $id); if($exists->exists()){ $validator->errors()->add( 'nama_klasifikasi_directory', 'Nama Klasifikasi sudah digunakan' ); } }); } }