This commit is contained in:
@@ -0,0 +1,154 @@
|
||||
<?php
|
||||
|
||||
namespace App\Models\AtencaoBasica\Procedimento;
|
||||
|
||||
use App\Models\Ambulatorio\GlicemiaCapilarMomentoColeta;
|
||||
use App\Models\AtencaoBasica\AtendimentoDomiciliar\AtendimentoDomiciliarAtendimento;
|
||||
use App\Models\AtencaoBasica\AtividadeColetiva\Turno;
|
||||
use App\Models\AtencaoBasica\MarcadorConsumoAlimentar\LocalAtendimento;
|
||||
use App\Models\AtencaoBasica\Parametrizacao\Microarea;
|
||||
use App\Models\AtencaoBasica\Procedimento\PequenaCirurgia;
|
||||
use App\Models\AtencaoBasica\Procedimento\Procedimento;
|
||||
use App\Models\AtencaoBasica\Procedimento\ProcedimentoAtendimentoPequenaCirurgia;
|
||||
use App\Models\AtencaoBasica\Procedimento\ProcedimentoAtendimentoProcedimento;
|
||||
use App\Models\AtencaoBasica\Procedimento\ProcedimentoViaAdministracao;
|
||||
use App\Models\AtencaoBasica\Procedimento\ViaAdministracao;
|
||||
use App\Models\Cadastro\SujeitoAtencao\Paciente;
|
||||
use App\Models\Model;
|
||||
|
||||
class ProcedimentoAtendimento extends Model
|
||||
{
|
||||
protected $table = 'atencao_basica_procedimento_atendimento';
|
||||
|
||||
protected $casts = [
|
||||
'escuta_inicial' => 'boolean',
|
||||
'exame_laboratorial' => 'boolean',
|
||||
];
|
||||
|
||||
protected $fillable = [
|
||||
'id',
|
||||
'atendimento_individual_id',
|
||||
'pre_atendimento_id',
|
||||
'soap_id',
|
||||
'pos_consulta_id',
|
||||
'paciente_id',
|
||||
'procedimento_id',
|
||||
'turno_id',
|
||||
'local_atendimento_id',
|
||||
'microarea_id',
|
||||
'escuta_inicial',
|
||||
'exame_laboratorial',
|
||||
'peso',
|
||||
'altura',
|
||||
'temperatura',
|
||||
'afericao_pa',
|
||||
'glicemia_capilar',
|
||||
'atendimento_domiciliar_id',
|
||||
'latitude',
|
||||
'longitude',
|
||||
];
|
||||
|
||||
protected $hidden = [
|
||||
'created_at',
|
||||
'created_lotacao_id',
|
||||
'created_centro_custo_id',
|
||||
'updated_at',
|
||||
'updated_lotacao_id',
|
||||
'updated_centro_custo_id',
|
||||
];
|
||||
|
||||
public function paciente()
|
||||
{
|
||||
return $this->belongsTo(Paciente::class);
|
||||
}
|
||||
|
||||
public function procedimento()
|
||||
{
|
||||
return $this->belongsTo(Procedimento::class);
|
||||
}
|
||||
|
||||
public function turno()
|
||||
{
|
||||
return $this->belongsTo(Turno::class);
|
||||
}
|
||||
|
||||
public function localAtendimento()
|
||||
{
|
||||
return $this->belongsTo(LocalAtendimento::class);
|
||||
}
|
||||
|
||||
public function microarea()
|
||||
{
|
||||
return $this->belongsTo(Microarea::class);
|
||||
}
|
||||
|
||||
public function atendimentoProcedimento()
|
||||
{
|
||||
return $this->hasMany(ProcedimentoAtendimentoProcedimento::class);
|
||||
}
|
||||
|
||||
public function atendimentoDomiciliar()
|
||||
{
|
||||
return $this->belongsTo(AtendimentoDomiciliarAtendimento::class);
|
||||
}
|
||||
|
||||
public function momentoColeta()
|
||||
{
|
||||
return $this->belongsTo(GlicemiaCapilarMomentoColeta::class);
|
||||
}
|
||||
|
||||
public function administracaoMedicamentos()
|
||||
{
|
||||
return $this->belongsToMany(ViaAdministracao::class, 'atencao_basica_procedimento_via_administracao')
|
||||
->using(ProcedimentoViaAdministracao::class)
|
||||
->as('ProcedimentoViaAdministracao')
|
||||
->withPivot(
|
||||
'created_lotacao_id',
|
||||
'created_centro_custo_id',
|
||||
'procedimento_atendimento_id',
|
||||
'via_administracao_id',
|
||||
)
|
||||
->select('atencao_basica_cadastro_via_administracao.id')
|
||||
->withTimestamps();
|
||||
}
|
||||
|
||||
public function pequenasCirurgias()
|
||||
{
|
||||
return $this->belongsToMany(PequenaCirurgia::class, 'atencao_basica_procedimento_atendimento_pequena_cirurgia')
|
||||
->using(ProcedimentoAtendimentoPequenaCirurgia::class)
|
||||
->as('ProcedimentoAtendimentoPequenaCirurgia')
|
||||
->withPivot(
|
||||
'created_lotacao_id',
|
||||
'created_centro_custo_id',
|
||||
'procedimento_atendimento_id',
|
||||
'pequena_cirurgia_id',
|
||||
)
|
||||
->select('atencao_basica_cadastro_procedimento_pequena_cirurgia.id')
|
||||
->withTimestamps();
|
||||
}
|
||||
|
||||
public function testesRapidos()
|
||||
{
|
||||
return $this->belongsToMany(TesteRapido::class, 'atencao_basica_procedimento_atendimento_teste_rapido')
|
||||
->using(ProcedimentoAtendimentoTesteRapido::class)
|
||||
->as('ProcedimentoAtendimentoTesteRapido')
|
||||
->withPivot(
|
||||
'created_lotacao_id',
|
||||
'created_centro_custo_id',
|
||||
'procedimento_atendimento_id',
|
||||
'teste_rapido_id',
|
||||
)
|
||||
->select('atencao_basica_cadastro_teste_rapido.id')
|
||||
->withTimestamps();
|
||||
}
|
||||
|
||||
public function procedimentos()
|
||||
{
|
||||
return $this->hasMany(ProcedimentoAtendimentoProcedimento::class);
|
||||
}
|
||||
|
||||
public function ivcf()
|
||||
{
|
||||
return $this->hasOne(ProcedimentoAtendimentoIvcf::class);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user