35 lines
727 B
PHP
35 lines
727 B
PHP
<?php
|
|
|
|
namespace App\Rules\Sigtap;
|
|
|
|
use App\Models\Sigtap\Cid;
|
|
use App\Models\Sigtap\Procedimento;
|
|
use Illuminate\Contracts\Validation\Rule;
|
|
|
|
class CidBelongsToProcedimento implements Rule
|
|
{
|
|
private $procedimentoId;
|
|
|
|
public function __construct($procedimentoId)
|
|
{
|
|
$this->procedimentoId = $procedimentoId;
|
|
}
|
|
|
|
public function passes($attribute, $value)
|
|
{
|
|
$procedimento = Procedimento::findOrFail($this->procedimentoId);
|
|
|
|
if ($procedimento->hasCidPrincipal) {
|
|
|
|
return $procedimento->cidsPrincipais->contains($value);
|
|
}
|
|
|
|
return true;
|
|
}
|
|
|
|
public function message()
|
|
{
|
|
return "CID não permitido para o procedimento selecionado.";
|
|
}
|
|
}
|