user()->telephone_id; if ($operator_telephone_id == $this->call->telephone_id) { return true; } return false; } /** * Get the validation rules that apply to the request. * * @return array */ public function rules(): array { return [ 'category_id' => 'required|integer', 'subcategory_id' => 'required|integer', 'description' => 'string', ]; } public function after(): array { return [ function (Validator $validator) { if ($this->somethingElseIsInvalid()) { $validator->errors()->add( 'category', __('messages.combination_of_category_and_subcategory_does_not_exist') ); } } ]; } private function somethingElseIsInvalid(): bool { $category_id = $this->category_id; $subcategory_id = $this->subcategory_id; if ($category_id && $subcategory_id) { return !Category::query()->where([ ['category_id', $category_id], ['subcategory_id', $subcategory_id] ])->exists(); } return false; } }