'boolean', 'is_observacao' => 'boolean', 'data_hora_proxima_reavaliacao' => 'datetime:d/m/Y H:i', 'is_faa_assinada' => 'boolean', ]; protected $fillable = [ 'plantao_id', 'simples', 'evolucao', 'queixa_principal_duracao', 'historia', 'exame_fisico', 'diagnostico', 'conduta', 'observacoes_enfermagem', 'data_hora_proxima_reavaliacao', 'atendimento_geral', 'orientacoes', 'desfecho_id', 'is_observacao', 'is_faa_assinada', ]; 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', ]; protected $append = [ 'solicitou_reavaliacao', ]; public function plantao() { return $this->belongsTo(Plantao::class); } public function desfecho() { return $this->belongsTo(Desfecho::class); } public function pedidosExames() { return $this->hasMany(PedidoExame::class); } public function servicosEnfermagem() { return $this->hasMany(ServicoEnfermagem::class); } public function atendimento() { return $this->belongsTo(Atendimento::class); } public function raatParecerMedico() { return $this->hasOne(RaatParecerMedico::class); } public function atestado() { return $this->hasOne(Atestado::class); } public function declaracoesComparecimento() { return $this->hasMany(DeclaracaoComparecimento::class); } public function encaminhamentos() { return $this->hasMany(Encaminhamento::class); } public function receita() { return $this->hasOne(Receita::class); } public function prescricoesInternas() { return $this->hasMany(PrescricaoInterna::class); } public function avaliacaoAntropometrica() { return $this->hasOne(AvaliacaoAntropometrica::class); } public function cid() { return $this->hasOne(Cid::class); } public function classificacaoRisco() { return $this->hasOne(ClassificacaoRisco::class); } public function gestacao() { return $this->hasOne(Gestacao::class); } public function encaminhamentoHospitalar() { return $this->hasOne(EncaminhamentoHospitalar::class); } public function medicamentosUso() { return $this->hasMany(MedicamentoUso::class); } public function observacao() { return $this->hasOne(Observacao::class); } public function procedimentos() { return $this->hasMany(Procedimento::class); } public function sinaisVitais() { return $this->hasMany(SinalVital::class); } public function getSolicitouReavaliacaoAttribute() { return $this->desfecho_id === null; } public function escalasComaGlasgow() { return $this->hasMany(EscalaComaGlasgow::class); } public function getIsAllowedToDeleteAttribute() { return $this->hasNoOne([ 'pedidosExames', 'atestado', 'avaliacaoAntropometrica', 'cid', 'classificacaoRisco', 'declaracoesComparecimento', 'encaminhamentos', 'gestacao', 'medicamentosUso', 'observacao', 'procedimentos', 'raatParecerMedico', 'receitas', 'sinaisVitais', ]); } }