This commit is contained in:
@@ -0,0 +1,100 @@
|
||||
<?php
|
||||
|
||||
namespace App\Models\ProntoAtendimento\Atendimento;
|
||||
|
||||
use App\Models\Cadastro\UnidadeMedida;
|
||||
use App\Models\Geral\TipoMedidaAltura;
|
||||
use App\Models\Model;
|
||||
use App\Models\ProntoAtendimento\Atendimento\Enfermagem\AtendimentoEnfermagem;
|
||||
use App\Models\ProntoAtendimento\Atendimento\Medico\AtendimentoMedico;
|
||||
use App\Models\ProntoAtendimento\Atendimento\Observacao\PacienteObservacao;
|
||||
use App\Services\Geral\ImcService;
|
||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||
|
||||
class AvaliacaoAntropometrica extends Model
|
||||
{
|
||||
use SoftDeletes;
|
||||
|
||||
protected $table = 'pronto_atendimento_atendimento_avaliacao_antropometrica';
|
||||
|
||||
protected $fillable = [
|
||||
'atendimento_triagem_id',
|
||||
'atendimento_medico_id',
|
||||
'atendimento_enfermagem_id',
|
||||
'paciente_observacao_id',
|
||||
'massa',
|
||||
'massa_unidade_medida_id',
|
||||
'altura_tipo_medida_id',
|
||||
'altura',
|
||||
'altura_unidade_medida_id',
|
||||
];
|
||||
|
||||
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 $appends = [
|
||||
'imc'
|
||||
];
|
||||
|
||||
public function atendimento()
|
||||
{
|
||||
return $this->belongsTo(Atendimento::class);
|
||||
}
|
||||
|
||||
public function atendimentoMedico()
|
||||
{
|
||||
return $this->belongsTo(AtendimentoMedico::class);
|
||||
}
|
||||
|
||||
public function atendimentoEnfermagem()
|
||||
{
|
||||
return $this->belongsTo(AtendimentoEnfermagem::class);
|
||||
}
|
||||
|
||||
public function pacienteObservacao()
|
||||
{
|
||||
return $this->belongsTo(PacienteObservacao::class);
|
||||
}
|
||||
|
||||
public function massaUnidadeMedida()
|
||||
{
|
||||
return $this->belongsTo(UnidadeMedida::class);
|
||||
}
|
||||
|
||||
public function alturaTipoMedida()
|
||||
{
|
||||
return $this->belongsTo(TipoMedidaAltura::class);
|
||||
}
|
||||
|
||||
public function alturaUnidadeMedida()
|
||||
{
|
||||
return $this->belongsTo(UnidadeMedida::class);
|
||||
}
|
||||
|
||||
public function getImcAttribute()
|
||||
{
|
||||
if (!is_null($this->massa) && !is_null($this->altura)) {
|
||||
|
||||
return ImcService::calculate(
|
||||
$this->massa_unidade_medida_id,
|
||||
$this->massa,
|
||||
$this->altura_unidade_medida_id,
|
||||
$this->altura
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
public function getIsAllowedToDeleteAttribute()
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user