This commit is contained in:
@@ -0,0 +1,327 @@
|
||||
<?php
|
||||
|
||||
namespace App\Models\AtencaoBasica\AtendimentoIndividual;
|
||||
|
||||
use App\Models\Ambulatorio\GlicemiaCapilarMomentoColeta;
|
||||
use App\Models\AtencaoBasica\AtendimentoIndividual\AleitamentoMaterno;
|
||||
use App\Models\AtencaoBasica\AtendimentoIndividual\AtendimentoIndividualCondicaoAvaliada;
|
||||
use App\Models\AtencaoBasica\AtendimentoIndividual\AtendimentoIndividualConduta;
|
||||
use App\Models\AtencaoBasica\AtendimentoIndividual\AtendimentoIndividualDoencaTransmissivel;
|
||||
use App\Models\AtencaoBasica\AtendimentoIndividual\AtendimentoIndividualEncaminhamento;
|
||||
use App\Models\AtencaoBasica\AtendimentoIndividual\AtendimentoIndividualExameSolicitadoAvaliado;
|
||||
use App\Models\AtencaoBasica\AtendimentoIndividual\AtendimentoIndividualNasf;
|
||||
use App\Models\AtencaoBasica\AtendimentoIndividual\AtendimentoIndividualOutroExame;
|
||||
use App\Models\AtencaoBasica\AtendimentoIndividual\AtendimentoIndividualRastreamento;
|
||||
use App\Models\AtencaoBasica\AtendimentoIndividual\CondicaoAvaliada;
|
||||
use App\Models\AtencaoBasica\AtendimentoIndividual\Conduta;
|
||||
use App\Models\AtencaoBasica\AtendimentoIndividual\DoencaTransmissivel;
|
||||
use App\Models\AtencaoBasica\AtendimentoIndividual\Encaminhamento;
|
||||
use App\Models\AtencaoBasica\AtendimentoIndividual\ModalidadeAtencaoDomiciliar;
|
||||
use App\Models\AtencaoBasica\AtendimentoIndividual\Nasf;
|
||||
use App\Models\AtencaoBasica\AtendimentoIndividual\RacionalidadeSaude;
|
||||
use App\Models\AtencaoBasica\AtendimentoIndividual\Rastreamento;
|
||||
use App\Models\AtencaoBasica\AtendimentoIndividual\TipoAtendimento;
|
||||
use App\Models\AtencaoBasica\MarcadorConsumoAlimentar\LocalAtendimento;
|
||||
use App\Models\AtencaoBasica\Parametrizacao\Equipe;
|
||||
use App\Models\AtencaoBasica\Procedimento\Procedimento as ProcedimentoProcedimento;
|
||||
use App\Models\AtencaoBasica\Procedimento\ProcedimentoAtendimento;
|
||||
use App\Models\Cadastro\SujeitoAtencao\Paciente;
|
||||
use App\Models\Cadastro\SujeitoAtencao\Usuario;
|
||||
use App\Models\Geral\Ciap;
|
||||
use App\Models\Geral\Turno;
|
||||
use App\Models\Model;
|
||||
use App\Models\Sigtap\Cid;
|
||||
use App\Models\Sigtap\Ocupacao;
|
||||
use App\Models\Sigtap\Procedimento;
|
||||
|
||||
class AtendimentoIndividual extends Model
|
||||
{
|
||||
protected $table = 'atencao_basica_atendimento_individual';
|
||||
|
||||
protected $casts = [
|
||||
'vacinacao' => 'boolean',
|
||||
'observacao' => 'boolean',
|
||||
'gravidez_planejada' => 'boolean',
|
||||
];
|
||||
|
||||
protected $fillable = [
|
||||
'id',
|
||||
'soap_id',
|
||||
'uuid_ficha',
|
||||
'usuario_exportacao_id',
|
||||
'data_hora_exportacao',
|
||||
'paciente_id',
|
||||
'usuario_id',
|
||||
'equipe_id',
|
||||
'usuario_ocupacao_id',
|
||||
'data_usuario_responsavel',
|
||||
'usuario_auxiliar_id',
|
||||
'usuario_auxiliar_equipe_id',
|
||||
'usuario_auxiliar_ocupacao_id',
|
||||
'turno_id',
|
||||
'local_atendimento_id',
|
||||
'tipo_atendimento_id',
|
||||
'perimetro_cefalico',
|
||||
'peso',
|
||||
'altura',
|
||||
'temperatura',
|
||||
'pressao_arterial',
|
||||
'frequencia_respiratoria',
|
||||
'frequencia_cardiaca',
|
||||
'saturacao_o2',
|
||||
'circunferencia_abdominal',
|
||||
'perimetro_panturrilha',
|
||||
'glicemia',
|
||||
'momento_coleta_id',
|
||||
'vacinacao',
|
||||
'modalidade_atencao_domiciliar_id',
|
||||
'aleitamento_materno_id',
|
||||
'racionalidade_saude_id',
|
||||
'data_ultima_menstruacao',
|
||||
'idade_gestacional_semanas',
|
||||
'idade_gestacional_dias',
|
||||
'gravidez_planejada',
|
||||
'gestacao_previa',
|
||||
'parto',
|
||||
'ciap_primario_id',
|
||||
'ciap_secundario_id',
|
||||
'cid_primario_id',
|
||||
'cid_secundario_id',
|
||||
'observacao',
|
||||
'complemento',
|
||||
'latitude',
|
||||
'longitude',
|
||||
];
|
||||
|
||||
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',
|
||||
];
|
||||
|
||||
public function paciente()
|
||||
{
|
||||
return $this->belongsTo(Paciente::class);
|
||||
}
|
||||
|
||||
public function usuario()
|
||||
{
|
||||
return $this->belongsTo(Usuario::class);
|
||||
}
|
||||
|
||||
public function equipe()
|
||||
{
|
||||
return $this->belongsTo(Equipe::class);
|
||||
}
|
||||
|
||||
public function ocupacao()
|
||||
{
|
||||
return $this->belongsTo(Ocupacao::class, 'usuario_ocupacao_id');
|
||||
}
|
||||
|
||||
public function usuarioOcupacao()
|
||||
{
|
||||
return $this->belongsTo(Ocupacao::class);
|
||||
}
|
||||
|
||||
public function usuarioAuxiliar()
|
||||
{
|
||||
return $this->belongsTo(Usuario::class);
|
||||
}
|
||||
|
||||
public function usuarioExportacao()
|
||||
{
|
||||
return $this->belongsTo(Usuario::class);
|
||||
}
|
||||
|
||||
public function usuarioAuxiliarEquipe()
|
||||
{
|
||||
return $this->belongsTo(Equipe::class);
|
||||
}
|
||||
|
||||
public function usuarioAuxiliarOcupacao()
|
||||
{
|
||||
return $this->belongsTo(Ocupacao::class);
|
||||
}
|
||||
|
||||
public function turno()
|
||||
{
|
||||
return $this->belongsTo(Turno::class);
|
||||
}
|
||||
|
||||
public function localAtendimento()
|
||||
{
|
||||
return $this->belongsTo(LocalAtendimento::class);
|
||||
}
|
||||
|
||||
public function tipoAtendimento()
|
||||
{
|
||||
return $this->belongsTo(TipoAtendimento::class);
|
||||
}
|
||||
|
||||
public function modalidadeAtencaoDomiciliar()
|
||||
{
|
||||
return $this->belongsTo(ModalidadeAtencaoDomiciliar::class);
|
||||
}
|
||||
|
||||
public function aleitamentoMaterno()
|
||||
{
|
||||
return $this->belongsTo(AleitamentoMaterno::class);
|
||||
}
|
||||
|
||||
public function racionalidadeSaude()
|
||||
{
|
||||
return $this->belongsTo(RacionalidadeSaude::class);
|
||||
}
|
||||
|
||||
public function cidPrimario()
|
||||
{
|
||||
return $this->belongsTo(Cid::class);
|
||||
}
|
||||
|
||||
public function cidSecundario()
|
||||
{
|
||||
return $this->belongsTo(Cid::class);
|
||||
}
|
||||
|
||||
public function ciapPrimario()
|
||||
{
|
||||
return $this->belongsTo(Ciap::class);
|
||||
}
|
||||
|
||||
public function ciapSecundario()
|
||||
{
|
||||
return $this->belongsTo(Ciap::class);
|
||||
}
|
||||
|
||||
public function AtendimentoIndividualExameSolicitadoAvaliado()
|
||||
{
|
||||
return $this->belongsTo(AtendimentoIndividualExameSolicitadoAvaliado::class);
|
||||
}
|
||||
|
||||
public function AtendimentoIndividualTriagemNeoNatal()
|
||||
{
|
||||
return $this->belongsTo(AtendimentoIndividualTriagemNeoNatal::class);
|
||||
}
|
||||
|
||||
public function outrosExames()
|
||||
{
|
||||
return $this->belongsTo(AtendimentoIndividualOutroExame::class);
|
||||
}
|
||||
|
||||
public function procedimento()
|
||||
{
|
||||
return $this->belongsTo(AtendimentoIndividualProcedimento::class);
|
||||
}
|
||||
|
||||
public function momentoColeta()
|
||||
{
|
||||
return $this->belongsTo(GlicemiaCapilarMomentoColeta::class);
|
||||
}
|
||||
|
||||
public function condicaoAvaliada()
|
||||
{
|
||||
return $this->belongsToMany(CondicaoAvaliada::class, 'atencao_basica_atendimento_individual_condicao_avaliada')
|
||||
->using(AtendimentoIndividualCondicaoAvaliada::class)
|
||||
->as('AtendimentoIndividualCondicaoAvaliada')
|
||||
->withPivot(
|
||||
'created_lotacao_id',
|
||||
'created_centro_custo_id',
|
||||
'atendimento_individual_id',
|
||||
'condicao_avaliada_id',
|
||||
)
|
||||
->select('atencao_basica_cadastro_condicao_avaliada.id')
|
||||
->withTimestamps();
|
||||
}
|
||||
|
||||
public function doencaTransmissivel()
|
||||
{
|
||||
return $this->belongsToMany(DoencaTransmissivel::class, 'atencao_basica_atendimento_individual_doenca_transmissivel')
|
||||
->using(AtendimentoIndividualDoencaTransmissivel::class)
|
||||
->as('AtendimentoIndividualDoencaTransmissivel')
|
||||
->withPivot(
|
||||
'created_lotacao_id',
|
||||
'created_centro_custo_id',
|
||||
'atendimento_individual_id',
|
||||
'doenca_transmissivel_id',
|
||||
)
|
||||
->select('atencao_basica_cadastro_doenca_transmissivel.id')
|
||||
->withTimestamps();
|
||||
}
|
||||
|
||||
public function rastreamento()
|
||||
{
|
||||
return $this->belongsToMany(Rastreamento::class, 'atencao_basica_atendimento_individual_rastreamento')
|
||||
->using(AtendimentoIndividualRastreamento::class)
|
||||
->as('AtendimentoIndividualRastreamento')
|
||||
->withPivot(
|
||||
'created_lotacao_id',
|
||||
'created_centro_custo_id',
|
||||
'atendimento_individual_id',
|
||||
'rastreamento_id',
|
||||
)
|
||||
->select('atencao_basica_cadastro_rastreamento.id')
|
||||
->withTimestamps();
|
||||
}
|
||||
|
||||
public function nasf()
|
||||
{
|
||||
return $this->belongsToMany(Nasf::class, 'atencao_basica_atendimento_individual_nasf')
|
||||
->using(AtendimentoIndividualNasf::class)
|
||||
->as('AtendimentoIndividualNasf')
|
||||
->withPivot(
|
||||
'created_lotacao_id',
|
||||
'created_centro_custo_id',
|
||||
'atendimento_individual_id',
|
||||
'nasf_id',
|
||||
)
|
||||
->select('atencao_basica_cadastro_nasf.id')
|
||||
->withTimestamps();
|
||||
}
|
||||
|
||||
public function conduta()
|
||||
{
|
||||
return $this->belongsToMany(Conduta::class, 'atencao_basica_atendimento_individual_conduta')
|
||||
->using(AtendimentoIndividualConduta::class)
|
||||
->as('AtendimentoIndividualConduta')
|
||||
->withPivot(
|
||||
'created_lotacao_id',
|
||||
'created_centro_custo_id',
|
||||
'atendimento_individual_id',
|
||||
'conduta_id',
|
||||
)
|
||||
->select('atencao_basica_cadastro_conduta.id')
|
||||
->withTimestamps();
|
||||
}
|
||||
|
||||
public function encaminhamento()
|
||||
{
|
||||
return $this->belongsToMany(Encaminhamento::class, 'atencao_basica_atendimento_individual_encaminhamento')
|
||||
->using(AtendimentoIndividualEncaminhamento::class)
|
||||
->as('AtendimentoIndividualEncaminhamento')
|
||||
->withPivot(
|
||||
'created_lotacao_id',
|
||||
'created_centro_custo_id',
|
||||
'atendimento_individual_id',
|
||||
'encaminhamento_id',
|
||||
)
|
||||
->select('atencao_basica_cadastro_encaminhamento.id')
|
||||
->withTimestamps();
|
||||
}
|
||||
|
||||
public function ivcf()
|
||||
{
|
||||
return $this->hasOne(AtendimentoIndividualIvcf::class);
|
||||
}
|
||||
|
||||
public function problemasCondicoes()
|
||||
{
|
||||
return $this->hasMany(AtendimentoIndividualProblemaCondicao::class);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user