method()) { case 'POST': return $this->getPostRules(); break; case 'PUT': return $this->getPutRules(); break; default: return []; } } private function getPostRules() { return [ 'tipo_id' => ['required', 'integer'], 'nome' => [ 'required', 'string', 'max:100', Rule::unique('\App\Models\Parametrizacao\KitExame\Kit')->where(function ($query) { return $query ->where('nome', $this->nome) ->whereNull('deleted_at'); }), ] ]; } private function getPutRules() { return [ 'nome' => [ 'required', 'string', 'max:100', "unique:\App\Models\Parametrizacao\KitExame\Kit,nome,{$this->nome},id,deleted_at,NULL" ] ]; } }