'boolean', ]; protected $fillable = [ 'atendimento_medico_id', 'agente_id', 'parte_corpo_atingida_outras', 'causa_acidente_outras', 'diagnostico_outros', 'observacao', 'classificacao_inicial_id', 'afastado', ]; protected $hidden = [ 'created_at', 'created_lotacao_id', 'created_centro_custo_id', 'updated_at', 'updated_lotacao_id', 'updated_centro_custo_id', 'deleted_at', 'deleted_lotacao_id', 'deleted_centro_custo_id', 'pivot' ]; public function raat() { return $this->belongsTo(Raat::class); } public function atendimentoMedico() { return $this->belongsTo(AtendimentoMedico::class); } public function agente() { return $this->belongsTo(Agente::class); } public function partesCorpoAtingidas() { return $this->belongsToMany( ParteCorpoAtingida::class, 'pronto_atendimento_raat_parecer_medico_parte_corpo_atingida', 'parecer_medico_id', 'parte_corpo_atingida_id' )->using(RaatParecerMedicoParteCorpoAtingida::class)->withTimestamps(); } public function causasAcidente() { return $this->belongsToMany( CausaAcidente::class, 'pronto_atendimento_raat_parecer_medico_causa_acidente', 'parecer_medico_id', 'causa_acidente_id' )->using(RaatParecerMedicoParteCorpoAtingida::class)->withTimestamps(); } public function diagnosticos() { return $this->belongsToMany( Diagnostico::class, 'pronto_atendimento_raat_parecer_medico_diagnostico', 'parecer_medico_id', 'diagnostico_id' )->using(RaatParecerMedicoParteCorpoAtingida::class)->withTimestamps(); } public function classificacaoInicial() { return $this->belongsTo(ClassificacaoInicial::class); } public function getIsAllowedToDeleteAttribute() { return $this->hasNoOne([ 'partesCorpoAtingidas', 'causasAcidente', 'diagnosticos', ]); } }