init commit
All checks were successful
build-api-image / build (push) Successful in 51s

This commit is contained in:
Antonio Lopes dos Santos
2026-08-04 16:52:02 -03:00
commit afec302c3e
11594 changed files with 1636728 additions and 0 deletions

View File

@@ -0,0 +1,221 @@
<?php
namespace App\Models\AtencaoBasica\AtendimentoOdontologico;
use App\Models\Ambulatorio\GlicemiaCapilarMomentoColeta;
use App\Models\AtencaoBasica\AtendimentoIndividual\CondicaoAvaliada;
use App\Models\AtencaoBasica\AtendimentoIndividual\DoencaTransmissivel;
use App\Models\AtencaoBasica\AtendimentoIndividual\Rastreamento;
use App\Models\AtencaoBasica\AtendimentoIndividual\TipoAtendimento;
use App\Models\AtencaoBasica\AtendimentoOdontologico\AtendimentoOdontologicoDoencaTransmissivel;
use App\Models\AtencaoBasica\AtendimentoOdontologico\AtendimentoOdontologicoProblemaCondicao;
use App\Models\AtencaoBasica\AtendimentoOdontologico\AtendimentoOdontologicoRastreamento;
use App\Models\AtencaoBasica\AtendimentoOdontologico\Procedimento;
use App\Models\AtencaoBasica\Exportacao\Exportacao;
use App\Models\AtencaoBasica\MarcadorConsumoAlimentar\LocalAtendimento;
use App\Models\AtencaoBasica\Parametrizacao\Equipe;
use App\Models\Cadastro\SujeitoAtencao\Paciente;
use App\Models\Cadastro\SujeitoAtencao\Usuario;
use App\Models\Geral\Turno;
use App\Models\Sigtap\Ocupacao;
use Illuminate\Database\Eloquent\Model;
class AtendimentoOdontologico extends Model
{
protected $table = 'atencao_basica_atendimento_odontologico';
protected $casts = [
'necessidades_especiais' => 'boolean',
'gestante' => 'boolean',
'exportacao' => 'boolean',
];
protected $fillable = [
'soap_id',
'exportacao_id',
'paciente_id',
'usuario_id',
'ocupacao_id',
'usuario_auxiliar_id',
'ocupacao_auxiliar_id',
'data_atendimento',
'turno_id',
'local_atendimento_id',
'tipo_atendimento_id',
'tipo_consulta_id',
'necessidades_especiais',
'gestante',
'perimetro_cefalico',
'peso',
'altura',
'temperatura',
'pressao_arterial',
'frequencia_respiratoria',
'frequencia_cardiaca',
'saturacao_o2',
'circunferencia_abdominal',
'perimetro_panturrilha',
'glicemia',
'momento_coleta_id',
'exportacao',
'data_exportacao',
'usuario_exportacao_id',
'uuid_ficha',
'equipe_id',
'equipe_auxiliar_id',
'observacao_perfil_epidemiologico',
];
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 usuario()
{
return $this->belongsTo(Usuario::class);
}
public function usuarioAuxiliar()
{
return $this->belongsTo(Usuario::class);
}
public function usuarioAuxiliarOcupacao()
{
return $this->belongsTo(Ocupacao::class, 'ocupacao_auxiliar_id');
}
public function usuarioAuxiliarEquipe()
{
return $this->belongsTo(Equipe::class, 'equipe_auxiliar_id');
}
public function usuarioExportacao()
{
return $this->belongsTo(Usuario::class);
}
public function exportado()
{
return $this->belongsTo(Exportacao::class, 'exportacao_id');
}
public function paciente()
{
return $this->belongsTo(Paciente::class);
}
public function ocupacao()
{
return $this->belongsTo(Ocupacao::class);
}
public function equipe()
{
return $this->belongsTo(Equipe::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 tipoConsulta()
{
return $this->belongsTo(TipoConsulta::class);
}
public function vigilancia()
{
return $this->hasMany(VigilanciaBucal::class);
}
public function procedimento()
{
return $this->hasMany(Procedimento::class);
}
public function fornecimento()
{
return $this->hasMany(Fornecimento::class);
}
public function condutaEncaminhamento()
{
return $this->hasMany(CondutaEncaminhamento::class);
}
public function momentoColeta()
{
return $this->belongsTo(GlicemiaCapilarMomentoColeta::class);
}
public function problemasCondicoes()
{
return $this->hasMany(AtendimentoOdontologicoProblemaCondicao::class);
}
public function condicaoAvaliada()
{
return $this->belongsToMany(CondicaoAvaliada::class, 'atencao_basica_atendimento_odontologico_condicao_avaliada')
->using(AtendimentoOdontologicoCondicaoAvaliada::class)
->as('AtendimentoOdontologicoCondicaoAvaliada')
->withPivot(
'created_lotacao_id',
'created_centro_custo_id',
'atendimento_odontologico_id',
'condicao_avaliada_id',
)
->select('atencao_basica_cadastro_condicao_avaliada.id')
->withTimestamps();
}
public function doencaTransmissivel()
{
return $this->belongsToMany(DoencaTransmissivel::class, 'atencao_basica_atendimento_odontologico_doenca_transmissivel')
->using(AtendimentoOdontologicoDoencaTransmissivel::class)
->as('AtendimentoOdontologicoDoencaTransmissivel')
->withPivot(
'created_lotacao_id',
'created_centro_custo_id',
'atendimento_odontologico_id',
'doenca_transmissivel_id',
)
->select('atencao_basica_cadastro_doenca_transmissivel.id')
->withTimestamps();
}
public function rastreamento()
{
return $this->belongsToMany(Rastreamento::class, 'atencao_basica_atendimento_odontologico_rastreamento')
->using(AtendimentoOdontologicoRastreamento::class)
->as('AtendimentoOdontologicoRastreamento')
->withPivot(
'created_lotacao_id',
'created_centro_custo_id',
'atendimento_odontologico_id',
'rastreamento_id',
)
->select('atencao_basica_cadastro_rastreamento.id')
->withTimestamps();
}
}

View File

@@ -0,0 +1,19 @@
<?php
namespace App\Models\AtencaoBasica\AtendimentoOdontologico;
use App\Models\Pivot;
class AtendimentoOdontologicoCondicaoAvaliada extends Pivot
{
protected $hidden = [
'created_at',
'created_lotacao_id',
'created_centro_custo_id',
'updated_at',
'updated_lotacao_id',
'updated_centro_custo_id',
'condicao_avaliada_id',
'atendimento_odontologico_id',
];
}

View File

@@ -0,0 +1,19 @@
<?php
namespace App\Models\AtencaoBasica\AtendimentoOdontologico;
use App\Models\Pivot;
class AtendimentoOdontologicoDoencaTransmissivel extends Pivot
{
protected $hidden = [
'created_at',
'created_lotacao_id',
'created_centro_custo_id',
'updated_at',
'updated_lotacao_id',
'updated_centro_custo_id',
'doenca_transmissivel_id',
'atendimento_odontologico_id',
];
}

View File

@@ -0,0 +1,43 @@
<?php
namespace App\Models\AtencaoBasica\AtendimentoOdontologico;
use App\Models\AtencaoBasica\AtendimentoIndividual\ExameSolicitadoAvaliado;
use App\Models\AtencaoBasica\AtendimentoOdontologico\AtendimentoOdontologico;
use App\Models\Model;
class AtendimentoOdontologicoExame extends Model
{
protected $table = 'atencao_basica_atendimento_odontologico_exame';
protected $fillable = [
'atendimento_odontologico_id',
'exame_id',
'solicitado',
'avaliado',
];
protected $hidden = [
'created_at',
'created_lotacao_id',
'created_centro_custo_id',
'updated_at',
'updated_lotacao_id',
'updated_centro_custo_id',
];
protected $casts = [
'solicitado' => 'boolean',
'avaliado' => 'boolean',
];
public function atendimentoOdontologico()
{
return $this->belongsTo(AtendimentoOdontologico::class);
}
public function exame()
{
return $this->belongsTo(ExameSolicitadoAvaliado::class);
}
}

View File

@@ -0,0 +1,78 @@
<?php
namespace App\Models\AtencaoBasica\AtendimentoOdontologico;
use App\Models\Model;
class AtendimentoOdontologicoIvcf extends Model
{
protected $table = 'atencao_basica_atendimento_odontologico_ivcf';
protected $fillable = [
'atendimento_odontologico_id',
'estado_saude_geral',
'limitacao_compras',
'limitacao_gestao_financeira',
'limitacao_tarefas_domesticas',
'banho_independencia',
'relato_esquecimento_por_terceiros',
'esquecimento_piorando',
'esquecimento_impacta_atividades',
'humor_tristeza_desanimo',
'perda_interesse_atividades',
'limitacao_elevar_bracos',
'limitacao_motricidade_fina',
'perda_peso_nao_intencional',
'imc_abaixo_22',
'panturrilha_abaixo_31',
'marcha_lenta_4m_maior_5s',
'dificuldade_caminhar_impacto_atividades',
'quedas_recorrentes',
'incontinencia',
'problema_visao_impacto_atividades',
'problema_audicao_impacto_atividades',
'doencas_cronicas_multiplas',
'polifarmacia_5_ou_mais_medicamentos',
'internacao_ultimos_6_meses',
];
protected $casts = [
'limitacao_compras' => 'boolean',
'limitacao_gestao_financeira' => 'boolean',
'limitacao_tarefas_domesticas' => 'boolean',
'banho_independencia' => 'boolean',
'relato_esquecimento_por_terceiros' => 'boolean',
'esquecimento_piorando' => 'boolean',
'esquecimento_impacta_atividades' => 'boolean',
'humor_tristeza_desanimo' => 'boolean',
'perda_interesse_atividades' => 'boolean',
'limitacao_elevar_bracos' => 'boolean',
'limitacao_motricidade_fina' => 'boolean',
'perda_peso_nao_intencional' => 'boolean',
'imc_abaixo_22' => 'boolean',
'panturrilha_abaixo_31' => 'boolean',
'marcha_lenta_4m_maior_5s' => 'boolean',
'dificuldade_caminhar_impacto_atividades' => 'boolean',
'quedas_recorrentes' => 'boolean',
'incontinencia' => 'boolean',
'problema_visao_impacto_atividades' => 'boolean',
'problema_audicao_impacto_atividades' => 'boolean',
'doencas_cronicas_multiplas' => 'boolean',
'polifarmacia_5_ou_mais_medicamentos' => 'boolean',
'internacao_ultimos_6_meses' => 'boolean',
];
protected $hidden = [
'created_at',
'created_lotacao_id',
'created_centro_custo_id',
'updated_at',
'updated_lotacao_id',
'updated_centro_custo_id',
];
public function atendimentoOdontologico()
{
return $this->belongsTo(AtendimentoOdontologico::class, 'atendimento_odontologico_id');
}
}

View File

@@ -0,0 +1,43 @@
<?php
namespace App\Models\AtencaoBasica\AtendimentoOdontologico;
use App\Models\AtencaoBasica\AtendimentoOdontologico\AtendimentoOdontologico;
use App\Models\Geral\Ciap;
use App\Models\Model;
use App\Models\Sigtap\Cid;
class AtendimentoOdontologicoProblemaCondicao extends Model
{
protected $table = 'atencao_basica_atendimento_odontologico_problema_condicao';
protected $fillable = [
'atendimento_odontologico_id',
'ciap_id',
'cid_id',
];
protected $hidden = [
'created_at',
'created_lotacao_id',
'created_centro_custo_id',
'updated_at',
'updated_lotacao_id',
'updated_centro_custo_id',
];
public function atendimentoOdontologico()
{
return $this->belongsTo(AtendimentoOdontologico::class);
}
public function ciap()
{
return $this->belongsTo(Ciap::class);
}
public function cid()
{
return $this->belongsTo(Cid::class);
}
}

View File

@@ -0,0 +1,19 @@
<?php
namespace App\Models\AtencaoBasica\AtendimentoOdontologico;
use App\Models\Pivot;
class AtendimentoOdontologicoRastreamento extends Pivot
{
protected $hidden = [
'created_at',
'created_lotacao_id',
'created_centro_custo_id',
'updated_at',
'updated_lotacao_id',
'updated_centro_custo_id',
'rastreamento_id',
'atendimento_odontologico_id',
];
}

View File

@@ -0,0 +1,21 @@
<?php
namespace App\Models\AtencaoBasica\AtendimentoOdontologico;
use Illuminate\Database\Eloquent\Model;
class CondutaEncaminhamento extends Model
{
protected $table = 'atencao_basica_atendimento_odontologico_conduta_encaminhamento';
protected $fillable = [
'id',
'atendimento_odontologico_id',
'conduta_encaminhamento_id'
];
protected $hidden = [
'created_at',
'updated_at'
];
}

View File

@@ -0,0 +1,21 @@
<?php
namespace App\Models\AtencaoBasica\AtendimentoOdontologico;
use Illuminate\Database\Eloquent\Model;
class Fornecimento extends Model
{
protected $table = 'atencao_basica_atendimento_odontologico_fornecimento';
protected $fillable = [
'id',
'atendimento_odontologico_id',
'fornecimento_id'
];
protected $hidden = [
'created_at',
'updated_at'
];
}

View File

@@ -0,0 +1,23 @@
<?php
namespace App\Models\AtencaoBasica\AtendimentoOdontologico;
use Illuminate\Database\Eloquent\Model;
class Procedimento extends Model
{
protected $table = 'atencao_basica_atendimento_odontologico_procedimento';
protected $fillable = [
'id',
'atendimento_odontologico_id',
'codigo_procedimento',
'quantidade'
];
protected $hidden = [
'created_at',
'updated_at'
];
}

View File

@@ -0,0 +1,21 @@
<?php
namespace App\Models\AtencaoBasica\AtendimentoOdontologico;
use Illuminate\Database\Eloquent\Model;
class TipoConsulta extends Model
{
protected $table = 'atencao_basica_atendimento_odontologico_tipo_consulta';
protected $fillable = [
'id',
'descricao',
'codigo_esus',
];
protected $hidden = [
'created_at',
'updated_at'
];
}

View File

@@ -0,0 +1,21 @@
<?php
namespace App\Models\AtencaoBasica\AtendimentoOdontologico;
use Illuminate\Database\Eloquent\Model;
class VigilanciaBucal extends Model
{
protected $table = 'atencao_basica_atendimento_odontologico_vigilancia_bucal';
protected $fillable = [
'id',
'atendimento_odontologico_id',
'vigilancia_bucal_id'
];
protected $hidden = [
'created_at',
'updated_at'
];
}