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,21 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\Model;
class Apresentacao extends Model
{
protected $table = 'imunizacao_apresentacao';
protected $fillable = [
'id',
'codigo',
'nome',
];
protected $hidden = [
'created_at',
'updated_at',
];
}

View File

@@ -0,0 +1,44 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\Cadastro\Vacina;
use App\Models\Model;
class Campanha extends Model
{
protected $table = 'imunizacao_campanha';
protected $fillable = [
'id',
'vacina_id',
'nome',
'periodo_de',
'periodo_ate',
'meta',
];
protected $hidden = [
'created_at',
'created_lotacao_id',
'created_centro_custo_id',
'updated_at',
'updated_lotacao_id',
'updated_centro_custo_id',
];
public function vacina()
{
return $this->belongsTo(Vacina::class);
}
public function populacoes()
{
return $this->hasMany(CampanhaPopulacao::class);
}
public function aplicacoes()
{
return $this->hasMany(RegistroAplicacao::class);
}
}

View File

@@ -0,0 +1,46 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\Cadastro\SujeitoAtencao\Sexo;
use App\Models\Geral\MedidaTempo;
use App\Models\Model;
class CampanhaPopulacao extends Model
{
protected $table = 'imunizacao_campanha_populacao';
protected $fillable = [
'id',
'campanha_id',
'idade_inicial_medida_tempo_id',
'idade_final_medida_tempo_id',
'sexo_id',
'idade_inicial',
'idade_final',
];
protected $hidden = [
'created_at',
'created_lotacao_id',
'created_centro_custo_id',
'updated_at',
'updated_lotacao_id',
'updated_centro_custo_id',
];
public function idadeInicialMedidaTempo()
{
return $this->belongsTo(MedidaTempo::class, 'idade_inicial_medida_tempo_id');
}
public function idadeFinalMedidaTempo()
{
return $this->belongsTo(MedidaTempo::class, 'idade_final_medida_tempo_id');
}
public function sexo()
{
return $this->belongsTo(Sexo::class);
}
}

View File

@@ -0,0 +1,22 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\Model;
class Dose extends Model
{
protected $table = 'imunizacao_dose';
protected $fillable = [
'id',
'nome',
'sigla',
'codigo_esus'
];
protected $hidden = [
'created_at',
'updated_at',
];
}

View File

@@ -0,0 +1,37 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\Model;
class Entrada extends Model
{
protected $table = 'imunizacao_entrada';
protected $fillable = [
'id',
'tipo_id',
'sala_vacinacao_id',
'data_entrada',
'origem',
];
protected $hidden = [
'created_at',
'created_lotacao_id',
'created_centro_custo_id',
'updated_at',
'updated_lotacao_id',
'updated_centro_custo_id',
];
public function salaVacinacao()
{
return $this->belongsTo(SalaVacinacao::class);
}
public function vacinas()
{
return $this->hasMany(EntradaVacina::class);
}
}

View File

@@ -0,0 +1,20 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\Model;
class EntradaTipo extends Model
{
protected $table = 'imunizacao_entrada_tipo';
protected $fillable = [
'id',
'nome',
];
protected $hidden = [
'created_at',
'updated_at',
];
}

View File

@@ -0,0 +1,61 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\Cadastro\Vacina;
use App\Models\Model;
class EntradaVacina extends Model
{
protected $table = 'imunizacao_entrada_vacina';
protected $fillable = [
'id',
'entrada_id',
'saida_vacina_id',
'vacina_id',
'produtor_id',
'apresentacao_id',
'quantidade',
'lote',
'data_validade_lote',
];
protected $hidden = [
'created_at',
'created_lotacao_id',
'created_centro_custo_id',
'updated_at',
'updated_lotacao_id',
'updated_centro_custo_id',
];
protected $casts = [
'data_validade_lote' => 'date',
];
public function entrada()
{
return $this->belongsTo(Entrada::class);
}
public function saidaVacina()
{
return $this->belongsTo(SaidaVacina::class);
}
public function vacina()
{
return $this->belongsTo(Vacina::class);
}
public function saidasVacina()
{
return $this->hasMany(SaidaVacina::class);
}
public function produtor()
{
return $this->belongsTo(Produtor::class);
}
}

View File

@@ -0,0 +1,24 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\Model;
class EsquemaVacinalFaixaEtaria extends Model
{
protected $table = 'imunizacao_esquema_vacinal_faixa_etaria';
protected $fillable = [
'inicio_ano',
'inicio_mes',
'inicio_dia',
'fim_ano',
'fim_mes',
'fim_dia',
];
protected $hidden = [
'created_at',
'updated_at',
];
}

View File

@@ -0,0 +1,26 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\Model;
class EsquemaVacinalRegra extends Model
{
protected $table = 'imunizacao_esquema_vacinal_regra';
protected $fillable = [
'vacina_id',
'estrategia_id',
'dose_id',
'faixa_etaria_id',
'dias_aprazamento',
'via_administracao_id',
'local_aplicacao_id',
'proxima_regra_id',
];
protected $hidden = [
'created_at',
'updated_at',
];
}

View File

@@ -0,0 +1,22 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\Model;
class Estrategia extends Model
{
protected $table = 'imunizacao_estrategia';
protected $fillable = [
'id',
'nome',
'codigo_esus',
'codigo_ria'
];
protected $hidden = [
'created_at',
'updated_at',
];
}

View File

@@ -0,0 +1,27 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\Model;
class Exportacao extends Model
{
protected $table = 'imunizacao_exportacao';
protected $fillable = [
'id',
'usuario_id',
'mes',
'ano',
'arquivo',
];
protected $hidden = [
'created_at',
'created_lotacao_id',
'created_centro_custo_id',
'updated_at',
'updated_lotacao_id',
'updated_centro_custo_id',
];
}

View File

@@ -0,0 +1,21 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\Model;
class GrupoAtendimento extends Model
{
protected $table = 'imunizacao_grupo_atendimento';
protected $fillable = [
'id',
'nome',
'codigo_esus',
];
protected $hidden = [
'created_at',
'updated_at',
];
}

View File

@@ -0,0 +1,33 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\Model;
class LocalAplicacao extends Model
{
protected $table = 'imunizacao_local_aplicacao';
protected $fillable = [
'id',
'nome',
'codigo_ria',
];
protected $hidden = [
'created_at',
'updated_at',
];
public function viasAdministracao()
{
return $this->belongsToMany(
ViaAdministracao::class,
'imunizacao_via_administracao_local_aplicacao',
'local_aplicacao_id',
'via_administracao_id'
)
->using(ViaAdministracaoLocalAplicacao::class)
->withTimestamps();
}
}

View File

@@ -0,0 +1,47 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\Model;
class Parametrizacao extends Model
{
protected $table = 'imunizacao_parametrizacao';
protected $fillable = [
'id',
'parametrizacao_descricao_vacina_id',
'perfil_campanha',
'usa_ultimo_frasco',
'cns_cpf_obrigatorio',
'aprazamento_dias_antes',
'aprazamento_dias_depois',
'aprazamento_ativo',
'aplicacao_data_retroativa',
'cadastro_outro_municipio',
'cadastro_provisorio',
'cadastro_bloqueado',
'cadastro_desatualizado',
];
protected $casts = [
'perfil_campanha' => 'boolean',
'usa_ultimo_frasco' => 'boolean',
'cns_cpf_obrigatorio' => 'boolean',
'aprazamento_ativo' => 'boolean',
'aplicacao_data_retroativa' => 'boolean',
'cadastro_outro_municipio' => 'boolean',
'cadastro_provisorio' => 'boolean',
'cadastro_bloqueado' => 'boolean',
'cadastro_desatualizado' => 'boolean',
];
protected $hidden = [
'created_at',
'created_lotacao_id',
'created_centro_custo_id',
'updated_at',
'updated_lotacao_id',
'updated_centro_custo_id',
];
}

View File

@@ -0,0 +1,20 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\Model;
class ParametrizacaoDescricaoVacina extends Model
{
protected $table = 'imunizacao_parametrizacao_descricao_vacina';
protected $fillable = [
'id',
'nome',
];
protected $hidden = [
'created_at',
'updated_at',
];
}

View File

@@ -0,0 +1,22 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\Model;
class ParametrizacaoExportacao extends Model
{
protected $table = 'imunizacao_parametrizacao_exportacao';
protected $fillable = [
'id',
'codigo_sistema',
'sigla_sistema',
'senha_arquivo',
];
protected $hidden = [
'created_at',
'updated_at',
];
}

View File

@@ -0,0 +1,24 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\Model;
class ParametrizacaoOcupacao extends Model
{
protected $table = 'imunizacao_parametrizacao_ocupacao';
protected $fillable = [
'id',
'ocupacao_id',
];
protected $hidden = [
'created_at',
'created_lotacao_id',
'created_centro_custo_id',
'updated_at',
'updated_lotacao_id',
'updated_centro_custo_id',
];
}

View File

@@ -0,0 +1,25 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\Model;
class ParametrizacaoSupervisor extends Model
{
protected $table = 'imunizacao_parametrizacao_supervisor';
protected $fillable = [
'id',
'usuario_id',
'sala_vacinacao_id',
];
protected $hidden = [
'created_at',
'created_lotacao_id',
'created_centro_custo_id',
'updated_at',
'updated_lotacao_id',
'updated_centro_custo_id',
];
}

View File

@@ -0,0 +1,22 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\Model;
class Produtor extends Model
{
protected $table = 'imunizacao_produtor';
protected $fillable = [
'id',
'codigo',
'nome',
'abreviacao',
];
protected $hidden = [
'created_at',
'updated_at',
];
}

View File

@@ -0,0 +1,120 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\AtencaoBasica\FichaVacinacao\FichaVacinacao;
use App\Models\Cadastro\SujeitoAtencao\Paciente;
use App\Models\Cadastro\SujeitoAtencao\Usuario;
use App\Models\Model;
use App\Models\Sigtap\Ocupacao;
class RegistroAplicacao extends Model
{
protected $table = 'imunizacao_registro_aplicacao';
protected $fillable = [
'id',
'pre_atendimento_id',
'paciente_id',
'saida_vacina_id',
'entrada_vacina_id',
'aplicador_id',
'grupo_atendimento_id',
'dose_id',
'estrategia_id',
'via_administracao_id',
'local_aplicacao_id',
'cid_id',
'campanha_id',
'exportacao_id',
'data_aplicacao',
'comunicante_hanseniase',
'gestante',
'puerpera',
'imunizacao_advertida',
'viajante',
'ultimo_frasco',
'observacao',
'ficha_id',
'ocupacao_id'
];
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 saidaVacina()
{
return $this->belongsTo(SaidaVacina::class);
}
public function entradaVacina()
{
return $this->belongsTo(EntradaVacina::class);
}
public function aplicador()
{
return $this->belongsTo(Usuario::class);
}
public function grupoAtendimento()
{
return $this->belongsTo(GrupoAtendimento::class);
}
public function dose()
{
return $this->belongsTo(Dose::class);
}
public function estrategia()
{
return $this->belongsTo(Estrategia::class);
}
public function viaAdministracao()
{
return $this->belongsTo(ViaAdministracao::class);
}
public function localAplicacao()
{
return $this->belongsTo(LocalAplicacao::class);
}
public function campanha()
{
return $this->belongsTo(Campanha::class);
}
public function exportacao()
{
return $this->belongsTo(Exportacao::class);
}
public function ficha()
{
return $this->belongsTo(FichaVacinacao::class);
}
public function ocupacao()
{
return $this->belongsTo(Ocupacao::class);
}
public function registroAprazamento()
{
return $this->hasOne(RegistroAprazamento::class);
}
}

View File

@@ -0,0 +1,51 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\Cadastro\SujeitoAtencao\Paciente;
use App\Models\Cadastro\Vacina;
use App\Models\Model;
class RegistroAprazamento extends Model
{
protected $table = 'imunizacao_registro_aprazamento';
protected $fillable = [
'id',
'registro_aplicacao_id',
'paciente_id',
'vacina_id',
'dose_id',
'data_aprazamento',
'observacao',
];
protected $hidden = [
'created_at',
'created_lotacao_id',
'created_centro_custo_id',
'updated_at',
'updated_lotacao_id',
'updated_centro_custo_id',
];
public function registroAplicacao()
{
return $this->belongsTo(RegistroAplicacao::class);
}
public function paciente()
{
return $this->belongsTo(Paciente::class);
}
public function vacina()
{
return $this->belongsTo(Vacina::class);
}
public function dose()
{
return $this->belongsTo(Dose::class);
}
}

View File

@@ -0,0 +1,87 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\AtencaoBasica\FichaVacinacao\PacienteItem;
use App\Models\Cadastro\SujeitoAtencao\Paciente;
use App\Models\Cadastro\SujeitoAtencao\Usuario;
use App\Models\Cadastro\Vacina;
use App\Models\Model;
use App\Models\Sigtap\Ocupacao;
class RegistroAtualizacao extends Model
{
protected $table = 'imunizacao_registro_atualizacao';
protected $fillable = [
'id',
'pre_atendimento_id',
'paciente_id',
'sala_vacinacao_id',
'aplicador_id',
'vacina_id',
'grupo_atendimento_id',
'dose_id',
'estrategia_id',
'cid_id',
'data_atualizacao',
'lote',
'observacao',
'ficha_id',
'ocupacao_id'
];
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 salaVacinacao()
{
return $this->belongsTo(SalaVacinacao::class);
}
public function aplicador()
{
return $this->belongsTo(Usuario::class);
}
public function vacina()
{
return $this->belongsTo(Vacina::class);
}
public function grupoAtendimento()
{
return $this->belongsTo(GrupoAtendimento::class);
}
public function dose()
{
return $this->belongsTo(Dose::class);
}
public function estrategia()
{
return $this->belongsTo(Estrategia::class);
}
public function ficha()
{
return $this->belongsTo(PacienteItem::class);
}
public function ocupacao()
{
return $this->belongsTo(Ocupacao::class);
}
}

View File

@@ -0,0 +1,55 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\Cadastro\SujeitoAtencao\Usuario;
use App\Models\Model;
class Requisicao extends Model
{
protected $table = 'imunizacao_requisicao';
protected $fillable = [
'id',
'status_id',
'sala_vacinacao_id_de',
'sala_vacinacao_id_para',
'usuario_id',
'data_requisicao',
'codigo',
];
protected $hidden = [
'created_at',
'created_lotacao_id',
'created_centro_custo_id',
'updated_at',
'updated_lotacao_id',
'updated_centro_custo_id',
];
public function salaVacinacaoDe()
{
return $this->belongsTo(SalaVacinacao::class, 'sala_vacinacao_id_de');
}
public function salaVacinacaoPara()
{
return $this->belongsTo(SalaVacinacao::class, 'sala_vacinacao_id_para');
}
public function usuario()
{
return $this->belongsTo(Usuario::class);
}
public function vacinas()
{
return $this->hasMany(RequisicaoVacina::class);
}
public function status()
{
return $this->belongsTo(RequisicaoStatus::class);
}
}

View File

@@ -0,0 +1,20 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\Model;
class RequisicaoStatus extends Model
{
protected $table = 'imunizacao_requisicao_status';
protected $fillable = [
'id',
'nome',
];
protected $hidden = [
'created_at',
'updated_at',
];
}

View File

@@ -0,0 +1,49 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\Cadastro\Vacina;
use App\Models\Model;
class RequisicaoVacina extends Model
{
protected $table = 'imunizacao_requisicao_vacina';
protected $fillable = [
'id',
'requisicao_id',
'motivo_id',
'vacina_id',
'quantidade',
'observacao',
];
protected $hidden = [
'created_at',
'created_lotacao_id',
'created_centro_custo_id',
'updated_at',
'updated_lotacao_id',
'updated_centro_custo_id',
];
public function requisicao()
{
return $this->belongsTo(Requisicao::class);
}
public function vacina()
{
return $this->belongsTo(Vacina::class);
}
public function saidasVacina()
{
return $this->hasMany(SaidaVacina::class);
}
public function motivo()
{
return $this->belongsTo(RequisicaoVacinaMotivo::class, 'motivo_id');
}
}

View File

@@ -0,0 +1,20 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\Model;
class RequisicaoVacinaMotivo extends Model
{
protected $table = 'imunizacao_requisicao_vacina_motivo';
protected $fillable = [
'id',
'nome',
];
protected $hidden = [
'created_at',
'updated_at',
];
}

View File

@@ -0,0 +1,39 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\Model;
class Saida extends Model
{
protected $table = 'imunizacao_saida';
protected $fillable = [
'id',
'tipo_id',
'sala_vacinacao_id',
'motivo_id',
'motivo_indisponibilidade',
'observacao',
'data_saida',
];
protected $hidden = [
'created_at',
'created_lotacao_id',
'created_centro_custo_id',
'updated_at',
'updated_lotacao_id',
'updated_centro_custo_id',
];
public function salaVacinacao()
{
return $this->belongsTo(SalaVacinacao::class);
}
public function vacinas()
{
return $this->hasMany(SaidaVacina::class);
}
}

View File

@@ -0,0 +1,20 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\Model;
class SaidaMotivo extends Model
{
protected $table = 'imunizacao_saida_motivo';
protected $fillable = [
'id',
'nome',
];
protected $hidden = [
'created_at',
'updated_at',
];
}

View File

@@ -0,0 +1,20 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\Model;
class SaidaTipo extends Model
{
protected $table = 'imunizacao_saida_tipo';
protected $fillable = [
'id',
'nome',
];
protected $hidden = [
'created_at',
'updated_at',
];
}

View File

@@ -0,0 +1,53 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\Cadastro\SujeitoAtencao\Lotacao;
use App\Models\Cadastro\Vacina;
use App\Models\Model;
class SaidaVacina extends Model
{
protected $table = 'imunizacao_saida_vacina';
protected $fillable = [
'id',
'saida_id',
'entrada_vacina_id',
'requisicao_vacina_id',
'vacina_id',
'quantidade',
];
protected $hidden = [
'created_at',
'created_lotacao_id',
'created_centro_custo_id',
'updated_at',
'updated_centro_custo_id',
];
public function saida()
{
return $this->belongsTo(Saida::class);
}
public function entradaVacinaOrigem()
{
return $this->belongsTo(EntradaVacina::class, 'entrada_vacina_id');
}
public function entradaVacinaDestino()
{
return $this->hasOne(EntradaVacina::class);
}
public function vacina()
{
return $this->belongsTo(Vacina::class, 'vacina_id');
}
public function lotacao() {
return $this->belongsTo(Lotacao::class, 'updated_lotacao_id');
}
}

View File

@@ -0,0 +1,42 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\Cadastro\Estabelecimento\Infraestrutura;
use App\Models\Model;
class SalaVacinacao extends Model
{
protected $table = 'imunizacao_sala_vacinacao';
protected $fillable = [
'id',
'infraestrutura_id',
'responsavel',
'permite_aplicacao',
'permite_requisicao',
'cria_ficha_ab',
'ativo',
];
protected $casts = [
'responsavel' => 'boolean',
'permite_aplicacao' => 'boolean',
'permite_requisicao' => 'boolean',
'cria_ficha_ab' => 'boolean',
];
protected $hidden = [
'created_at',
'created_lotacao_id',
'created_centro_custo_id',
'updated_at',
'updated_lotacao_id',
'updated_centro_custo_id',
];
public function infraestrutura()
{
return $this->belongsTo(Infraestrutura::class);
}
}

View File

@@ -0,0 +1,22 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\Model;
class VacinaProdutorApresentacao extends Model
{
protected $table = 'imunizacao_vacina_produtor_apresentacao';
protected $fillable = [
'id',
'vacina_id',
'produtor_id',
'apresentacao_id',
];
protected $hidden = [
'created_at',
'updated_at',
];
}

View File

@@ -0,0 +1,33 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\Model;
class ViaAdministracao extends Model
{
protected $table = 'imunizacao_via_administracao';
protected $fillable = [
'id',
'nome',
'codigo_ria',
];
protected $hidden = [
'created_at',
'updated_at',
];
public function locaisAplicacao()
{
return $this->belongsToMany(
LocalAplicacao::class,
'imunizacao_via_administracao_local_aplicacao',
'via_administracao_id',
'local_aplicacao_id'
)
->using(ViaAdministracaoLocalAplicacao::class)
->withTimestamps();
}
}

View File

@@ -0,0 +1,17 @@
<?php
namespace App\Models\Imunizacao;
use App\Models\Pivot;
class ViaAdministracaoLocalAplicacao extends Pivot
{
protected $hidden = [
'created_at',
'created_lotacao_id',
'created_centro_custo_id',
'updated_at',
'updated_lotacao_id',
'updated_centro_custo_id',
];
}