input = $input; } /** * @param string $attribute * @param mixed $value * @return bool */ public function passes($attribute, $value) { return $this->checkIfExpenseNumberUnique(); //if it exists, return false! } /** * @return string */ public function message() { return ctrans('texts.expense_number_taken'); } /** * @return bool */ private function checkIfExpenseNumberUnique() : bool { if (empty($this->input['number'])) { return true; } $expense = Expense::query() ->where('number', $this->input['number']) ->withTrashed(); return $expense->exists(); } }