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,134 @@
<?php
namespace App\Models\Cadastro\SujeitoAtencao;
use App\Models\AtencaoBasica\CadastroIndividual\AcompanhamentoInfantil;
use App\Models\AtencaoBasica\CadastroIndividual\ComunidadeTradicional;
use App\Models\AtencaoBasica\CadastroIndividual\Curso;
use App\Models\AtencaoBasica\CadastroIndividual\SaidaCidadao;
use App\Models\AtencaoBasica\CadastroIndividual\SituacaoMercadoTrabalho;
use App\Models\Cadastro\SujeitoAtencao\DeficienciaBase;
use App\Models\Cadastro\SujeitoAtencao\PacienteInformacaoSocialAcompanhamentoInfantil;
use App\Models\Cadastro\SujeitoAtencao\PacienteInformacaoSocialDeficiencia;
use App\Models\Model;
class PacienteInformacaoSocial extends Model
{
protected $table = 'cadastro_paciente_informacao_social';
protected $casts = [
'responsavel' => 'boolean',
'frequenta_escola_creche' => 'boolean',
'frequenta_cuidador_tradicional' => 'boolean',
'participa_grupo_comunitario' => 'boolean',
'plano_saude' => 'boolean',
'comunidade_tradicional' => 'boolean',
'recusa_cadastro' => 'boolean',
'deficiente' => 'boolean',
'orientacao_sexual' => 'boolean',
'alimentos_acabaram' => 'boolean',
'comeu_alguns_alimentos' => 'boolean',
'data_atualizacao_tria' => 'date',
];
protected $fillable = [
'id',
'paciente_id',
'responsavel',
'responsavel_cidadao_id',
'parentesco_responsavel_id',
'curso_id',
'orientacao_sexual',
'orientacao_sexual_id',
'deficiente',
'frequenta_escola_creche',
'situacao_mercado_trabalho_id',
'frequenta_cuidador_tradicional',
'participa_grupo_comunitario',
'plano_saude',
'comunidade_tradicional',
'comunidade_tradicional_id',
'saida_cidadao_id',
'motivo_saida_data',
'recusa_cadastro',
'alimentos_acabaram',
'comeu_alguns_alimentos',
'data_atualizacao_tria',
];
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 curso()
{
return $this->belongsTo(Curso::class);
}
public function saidaCidadao()
{
return $this->belongsTo(SaidaCidadao::class);
}
public function responsavelCidadao()
{
return $this->belongsTo(Cidadao::class);
}
public function situacaoMercadoTrabalho()
{
return $this->belongsTo(SituacaoMercadoTrabalho::class);
}
public function comunidadeTradicionalQual()
{
return $this->belongsTo(ComunidadeTradicional::class, 'comunidade_tradicional_id');
}
public function acompanhamentoInfantil()
{
return $this->belongsToMany(AcompanhamentoInfantil::class, 'cadastro_paciente_informacao_social_acompanhamento_infantil')
->using(PacienteInformacaoSocialAcompanhamentoInfantil::class)
->as('PacienteInformacaoSocialAcompanhamentoInfantil')
->withPivot(
'created_lotacao_id',
'created_centro_custo_id',
'paciente_informacao_social_id',
'acompanhamento_infantil_id',
)
->select(
'atencao_basica_cadastro_acompanhamento_infantil.id',
'atencao_basica_cadastro_acompanhamento_infantil.descricao'
)
->withTimestamps();
}
public function deficiencia()
{
return $this->belongsToMany(DeficienciaBase::class, 'cadastro_paciente_informacao_social_deficiencia_base')
->using(PacienteInformacaoSocialDeficiencia::class)
->as('PacienteInformacaoSocialDeficiencia')
->withPivot(
'created_lotacao_id',
'created_centro_custo_id',
'paciente_informacao_social_id',
'deficiencia_base_id',
)
->select('cadastro_deficiencia_base.id')
->withTimestamps();
}
}