method()) { case 'POST': { return $this->getPostRules(); } case 'PUT': { return $this->getPutRules(); } default: { return []; } } } private function getPostRules() { return [ 'procedimento_codigo' => [ 'required', 'string', 'size:10', 'unique:\App\Models\Parametrizacao\Procedimento,procedimento_codigo,NULL,id,deleted_at,NULL' ], 'apelido' => [ 'required', 'string', 'max:100', 'unique:\App\Models\Parametrizacao\Procedimento,apelido,NULL,id,deleted_at,NULL' ], ]; } private function getPutRules() { return [ 'apelido' => [ 'required', 'string', 'max:100', "unique:\App\Models\Parametrizacao\Procedimento,apelido,{$this->procedimento},id,deleted_at,NULL" ], ]; } public function messages() { return [ 'procedimento_codigo.unique' => 'O Procedimento já foi configurado anteriormente.', 'apelido.unique' => 'O apelido do Procedimento já foi inserido anteriormente.', ]; } }