method()) { case 'POST': case 'PUT': { return $this->getPostPutRules(); } default: { return []; } } } private function getPostPutRules() { return [ 'nome' => [ 'required', 'string', 'between:3,30', Rule::unique('\App\Models\Cadastro\Estabelecimento\Sala', 'nome') ->where(function ($query) { return $query ->where('centro_custo_id', $this->centro_custo_id) ->whereNull('deleted_at'); }) ->ignore($this->sala) ], 'centro_custo_id' => [ 'required', 'integer', ] ]; } public function messages() { return [ 'nome.unique' => 'O nome da Sala já foi inserido anteriormente.' ]; } }