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,101 @@
<table>
<tr>
<td style="text-align: center">
<strong>{{ $title }}</strong>
</td>
</tr>
<tr>
<td>
<strong>Data inicial:</strong>
</td>
<td>
<strong>Data final:</strong>
</td>
</tr>
<tr>
<td>
{{ $data_inicial }}
</td>
<td>
{{ $data_final }}
</td>
</tr>
<tr>
<td>
<strong>Unidade:</strong>
</td>
<td>
<strong>Equipe:</strong>
</td>
</tr>
<tr>
<td>
{{ $unidade }}
</td>
<td>
{{ $equipe }}
</td>
</tr>
</table>
<table>
<thead>
<tr>
<th>
<b>1ª Consulta Odontológica Programática</b>
</th>
<th>
<b>Escovação Dental Supervisionada</b>
</th>
<th>
<b>Tratamento Concluído</b>
</th>
<th>
<b>Urgência</b>
</th>
<th>
<b>Gestante</b>
</th>
<th>
<b>Instalação de Próteses Dentárias</b>
</th>
</tr>
</thead>
<tbody>
<tr>
<td>{{ $primeira_consulta_odontologica }}</td>
<td>{{ $escovacao_dental_supervisionada }}</td>
<td>{{ $tratamento_concluido }}</td>
<td>{{ $urgencia }}</td>
<td>{{ $gestante }}</td>
<td>{{ $instalacao_proteses_dentarias }}</td>
</tr>
</tbody>
</table>
<table>
<thead>
<tr>
<th>
<strong>Total</strong>
</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<b>{{ $total_atendimentos_odontologicos }}</b>
</td>
</tr>
</tbody>
</table>

View File

@@ -0,0 +1,98 @@
<style>
.table-relatorio>thead>tr>th,
.table-relatorio>tfoot>tr>th {
text-align: center;
}
.col-min {
width: 1%;
}
.text-center {
text-align: center;
}
.linha-filtro {
margin-bottom: 10px;
}
fieldset {
margin-top: 20px;
}
</style>
<table>
<tr>
<td style="text-align: center" colspan="6">
<strong>{{ $title }}</strong>
</td>
</tr>
<tr>
<td>
<strong>Unidade</strong>
</td>
<td>
<strong>Domicílio</strong>
</td>
<td>
<strong>Área / INE</strong>
</td>
<td>
<strong>Microárea</strong>
</td>
</tr>
<tr>
<td>
{{ $unidade }}
</td>
<td>
{{ $domicilio }}
</td>
<td>
{{ $area }}
</td>
<td>
{{ $microarea }}
</td>
</tr>
</table>
<table>
<thead>
<tr>
@foreach ($colunas as $coluna)
<th>
<strong>{{ $coluna['label'] }}</strong>
</th>
@endforeach
</tr>
</thead>
<tbody>
@foreach ($items as $item)
<tr>
@foreach ($colunas as $coluna)
<td>
@if ($coluna['key'] == 'data_nascimento')
{{ date('d/m/Y', strtotime($item->{$coluna['key']})) }}
@else
{{ $item->{$coluna['key']} ?? '-' }}
@endif
</td>
@endforeach
</tr>
@endforeach
</tbody>
</table>
<table>
<tr>
<td><strong>Total de pacientes</strong></td>
<td>{{ count($items) }}</td>
</tr>
</table>

View File

@@ -0,0 +1,201 @@
<style>
.table-relatorio>thead>tr>th,
.table-relatorio>tfoot>tr>th {
font-weight: bold;
text-align: center;
}
.col-min {
width: 1%;
}
.text-center {
text-align: center;
}
.linha-filtro {
margin-bottom: 10px;
}
fieldset {
margin-top: 20px;
}
</style>
<table>
<tr>
<td style="text-align: center" colspan="6">
<strong>{{ $title }}</strong>
</td>
</tr>
<tr>
<td>
<strong>Unidade</strong>
</td>
<td>
<strong>Domicílio</strong>
</td>
<td>
<strong>Área / INE</strong>
</td>
<td>
<strong>Microárea</strong>
</td>
</tr>
<tr>
<td>
{{ $unidade }}
</td>
<td>
{{ $domicilio }}
</td>
<td>
{{ $area }}
</td>
<td>
{{ $microarea }}
</td>
</tr>
</table>
<table class="table table-relatorio">
<thead>
@if ($domicilio != 'Fora de área')
@php
$colspanMicroareas = count($colunas) - count(['unidade_nome', 'areas', 'pacientes_fora_area']);
if ($domicilio == 'Dentro de área') {
$colspanMicroareas++;
}
@endphp
<tr>
<th></th>
<th></th>
<th style="text-align: center" colspan="{{ $colspanMicroareas }}"><strong>Microáreas</strong></th>
@if ($domicilio == 'Todos' && $microarea == 'Todos')
<th></th>
@endif
</tr>
@endif
<tr>
@foreach ($colunas as $coluna)
<th class="{{ $coluna['class'] }}"><strong>{{ $coluna['label'] }}</strong> </th>
@endforeach
</tr>
</thead>
<tbody>
@foreach ($items['consulta'] as $item)
<tr>
@foreach ($colunas as $coluna)
{{-- Coluna de pacientes fora de área --}}
@if ($coluna['key'] == 'pacientes_fora_area')
<td> {{ $item[$coluna['key']]['total_fora_area'] ?? '0' }}</td>
{{-- Coluna de areas --}}
@elseif ($coluna['key'] == 'areas')
<td>
@foreach ($item['areas'] as $index => $itemArea)
@if ($index > 0 && $microarea == 'Todos')
<br />
@endif
{{-- Coluna de área quando tem area filtrada --}}
@if ($area == $itemArea['area_descricao'] && $microarea == 'Todos')
{{ $itemArea['area_descricao'] }}
@endif
{{-- Coluna de area quando tem microarea filtrada --}}
@if ($microarea != 'Todos')
@if (count($itemArea['microareas']) > 0)
@if ($index > 0)
<br />
@endif
@if ($area == $itemArea['area_descricao'])
{{ $itemArea['area_descricao'] }}
@elseif($area == 'Todos')
{{ $itemArea['area_descricao'] }}
@endif
@endif
@endif
{{-- Coluna de área por padrão --}}
@if ($area == 'Todos' && $microarea == 'Todos')
{{ $itemArea['area_descricao'] }}
@endif
@endforeach
</td>
{{-- Coluna de microareas --}}
@elseif ($coluna['key'] != 'unidade_nome')
<td>
@foreach ($item['areas'] as $index => $itemArea)
@if ($index > 0)
<br />
@endif
@if (
$coluna['key'] != 'total' &&
!$itemArea['microareas']->contains('microarea_descricao', $coluna['key']) &&
$microarea == 'Todos')
@if ($area == $itemArea['area_descricao'])
0
@elseif($area == 'Todos')
0
@endif
@endif
@foreach ($itemArea['microareas'] as $itemMicroarea)
@if ($area == $itemArea['area_descricao'] && $itemMicroarea['microarea_descricao'] == $coluna['key'])
{{ $itemMicroarea['microarea_total_pacientes'] }}
@elseif ($area === 'Todos' && $itemMicroarea['microarea_descricao'] == $coluna['key'] && $coluna['key'] !== 'total')
{{ $itemMicroarea['microarea_total_pacientes'] }}
@endif
@endforeach
{{-- Coluna de total --}}
@if ($coluna['key'] == 'total')
@if ($itemArea['area_descricao'] === $area)
{{ $itemArea['area_total_pacientes'] }}
@elseif ($area == 'Todos')
{{ $itemArea['area_total_pacientes'] }}
@endif
@endif
@endforeach
</td>
{{-- Demais colunas --}}
@else
<td>
{{ $item[$coluna['key']] ?? '-' }}
</td>
@endif
@endforeach
</tr>
@endforeach
</tbody>
</table>
<table>
<tr>
<td><strong>Unidade(s)</strong></td>
<td>{{ $totalizadores['unidades'] }}</td>
</tr>
<tr>
<td><strong>Dentro de área</strong></td>
<td>{{ $totalizadores['dentro_area'] }}</td>
</tr>
<tr>
<td><strong>Fora de área</strong></td>
<td>{{ $totalizadores['fora_area'] }}</td>
</tr>
<tr>
<td><strong>Dentro + Fora de área</strong></td>
<td>{{ $totalizadores['dentro_area'] + $totalizadores['fora_area'] }}</td>
</tr>
</table>

View File

@@ -0,0 +1,222 @@
<style>
.table-relatorio>thead>tr>th,
.table-relatorio>tfoot>tr>th {
text-align: center;
}
.col-min {
width: 1%;
}
.text-center {
text-align: center;
}
.linha-filtro {
margin-bottom: 10px;
}
fieldset {
margin-top: 20px;
}
</style>
<table>
<tr>
<td style="text-align: center" colspan="{{ $colunas->count() }}">
{{ $title }}
</td>
</tr>
<tr>
<td></td>
</tr>
<tr>
<td>
<strong>Competência:</strong>
</td>
<td>
{{ $competencia }}
</td>
</tr>
<tr>
<td>
<strong>Unidade:</strong>
</td>
<td>
{{ $unidade }}
</td>
</tr>
<tr>
<td>
<strong>Profissional:</strong>
</td>
<td>
{{ $profissional }}
</td>
</tr>
<tr>
<td>
<strong>Local de atendimento:</strong>
</td>
<td>
{{ $localAtendimento }}
</td>
</tr>
<tr>
<td>
<strong>Prontuario:</strong>
</td>
<td>
{{ $prontuario }}
</td>
</tr>
<tr>
<td>
<strong>Idade:</strong>
</td>
<td>
{{ $idade }}
</td>
</tr>
<tr>
<td>
<strong>Sexo:</strong>
</td>
<td>
{{ $sexo }}
</td>
</tr>
<tr>
<td>
<strong>Hipertenso:</strong>
</td>
<td>
{{ $hipertenso }}
</td>
</tr>
<tr>
<td>
<strong>Condição avaliada:</strong>
</td>
<td>
{{ $condicaoAvaliada }}
</td>
</tr>
<tr>
<td>
<strong>Doença transmissível:</strong>
</td>
<td>
{{ $doencaTransmissivel }}
</td>
</tr>
<tr>
<td>
<strong>Rastreamento:</strong>
</td>
<td>
{{ $rastreamento }}
</td>
</tr>
<tr>
<td>
<strong>CIAP2:</strong>
</td>
<td>
{{ $ciap2 }}
</td>
</tr>
<tr>
<td>
<strong>CID10:</strong>
</td>
<td>
{{ $cid }}
</td>
</tr>
<tr>
<td>
<strong>Gestante:</strong>
</td>
<td>
{{ $gestante }}
</td>
</tr>
<tr>
<td>
<strong>Diabético:</strong>
</td>
<td>
{{ $diabetico }}
</td>
</tr>
<tr>
<td>
<strong>Vacina em dia:</strong>
</td>
<td>
{{ $vacinaEmDia }}
</td>
</tr>
<tr>
<td>
<strong>Aleitamento materno:</strong>
</td>
<td>
{{ $aleitamentoMaterno }}
</td>
</tr>
</table>
<table>
<thead>
<tr>
<td style="text-align: center" colspan="6">
TOTAIS
</td>
</tr>
<tr>
<th><strong>Registro(s)</strong></th>
<th><strong>Unidade(s)</strong></th>
<th><strong>Profissional(s)</strong></th>
<th><strong>Local(s) de atendimento</strong></th>
</tr>
</thead>
<tbody>
<tr>
<td>{{ $totalizadores['registros'] }}</td>
<td>{{ $totalizadores['unidades'] }}</td>
<td>{{ $totalizadores['profissionais'] }}</td>
<td>{{ $totalizadores['locaisAtendimento'] }}</td>
</tr>
</tbody>
</table>
<table>
<thead>
<tr>
@foreach ($colunas as $coluna)
<th>
<strong>{{ $coluna['label'] }}</strong>
</th>
@endforeach
</tr>
</thead>
<tbody>
@foreach ($items as $item)
<tr>
@foreach ($colunas as $coluna)
<td>
@if ($coluna['key'] == 'condicao_avaliada')
{{ $item->condicaoAvaliada ?? '-' }}
@else
{{ $item->{$coluna['key']} ?? '-' }}
@endif
</td>
@endforeach
</tr>
@endforeach
</tbody>
</table>

View File

@@ -0,0 +1,385 @@
<table>
<tr>
<td style="text-align: center" colspan="{{ count($params['selected_columns']) }}">
RELATÓRIO ESTATÍSTICO DE PACIENTES CADASTRADOS
</td>
</tr>
<tr>
<td colspan="{{ count($params['selected_columns']) }}">
Os paciente com saída do cadastro por motivo de óbito ou mudança de território não serão exibidos.
</td>
</tr>
<tr>
<td style="text-align: left" colspan="{{ count($params['selected_columns']) }}">
<strong>EQUIPE</strong>
</td>
</tr>
<tr>
<td>
<strong>Unidade:</strong>
</td>
<td>
<strong>Local de atendimento:</strong>
</td>
<td>
<strong>Local do domicílio:</strong>
</td>
</tr>
<tr>
<td>
{{ $params['unidade_label'] }}
</td>
<td>
{{ $params['local_atendimento_label'] }}
</td>
<td>
{{ $params['local_domicilio_label'] }}
</td>
</tr>
<tr>
<td>
<strong>Área da equipe</strong>
</td>
<td>
<strong>Micro área</strong>
</td>
<td>
<strong>Profissional</strong>
</td>
</tr>
<tr>
<td>
{{ $params['area_equipe_label'] }}
</td>
<td>
{{ $params['micro_area_label'] }}
</td>
<td class="col-4">
{{ $params['profissional_label'] }}
</td>
</tr>
<tr>
<td style="text-align: left" colspan="{{ count($params['selected_columns']) }}">
<strong>PACIENTE</strong>
</td>
</tr>
<tr>
<td>
<strong>Classificação:</strong>
</td>
<td>
<strong>Anos de:</strong>
</td>
<td>
<strong>Meses de:</strong>
</td>
<td>
<strong>Dias de:</strong>
</td>
<td>
<strong>Anos até:</strong>
</td>
<td>
<strong>Meses até:</strong>
</td>
<td>
<strong>Dias até:</strong>
</td>
<td>
<strong>Paciente:</strong>
</td>
</tr>
<tr>
<td>
{{ $params['classificacao_paciente_label'] }}
</td>
<td>
{{ $params['anos_de_label'] }}
</td>
<td>
{{ $params['meses_de_label'] }}
</td>
<td>
{{ $params['dias_de_label'] }}
</td>
<td>
{{ $params['anos_ate_label'] }}
</td>
<td>
{{ $params['meses_ate_label'] }}
</td>
<td>
{{ $params['dias_ate_label'] }}
</td>
<td>
{{ $params['paciente_label'] }}
</td>
</tr>
<tr>
<td style="text-align: left" colspan="{{ count($params['selected_columns']) }}">
<strong>CONDICIONALIDADES</strong>
</td>
</tr>
<tr>
<td>
<strong>Sexo:</strong>
</td>
<td>
<strong>Peso:</strong>
</td>
<td>
<strong>Gestante:</strong>
</td>
<td>
<strong>Hipertenso:</strong>
</td>
<td>
<strong>Diabético:</strong>
</td>
<td>
<strong>Hanseniase:</strong>
</td>
<td>
<strong>Tuberculose:</strong>
</td>
<td>
<strong>Fumante:</strong>
</td>
<td>
<strong>Alcool:</strong>
</td>
<td>
<strong>Drogas:</strong>
</td>
<td>
<strong>Tea:</strong>
</td>
</tr>
<tr>
<td>
{{ $params['condicionalidades_label']['sexo_label'] }}
</td>
<td>
{{ $params['condicionalidades_label']['peso_label'] }}
</td>
<td>
{{ $params['condicionalidades_label']['gestante_label'] }}
</td>
<td>
{{ $params['condicionalidades_label']['hipertenso_label'] }}
</td>
<td>
{{ $params['condicionalidades_label']['diabetico_label'] }}
</td>
<td>
{{ $params['condicionalidades_label']['hanseniase_label'] }}
</td>
<td>
{{ $params['condicionalidades_label']['tuberculose_label'] }}
</td>
<td>
{{ $params['condicionalidades_label']['fumante_label'] }}
</td>
<td class="col-1">
{{ $params['condicionalidades_label']['alcool_label'] }}
</td>
<td>
{{ $params['condicionalidades_label']['drogas_label'] }}
</td>
<td>
{{ $params['condicionalidades_label']['tea_label'] }}
</td>
</tr>
<tr>
<td style="text-align: left" colspan="{{ count($params['selected_columns']) }}">
<strong>OUTRAS DOENÇAS/TRATAMENTOS</strong>
</td>
</tr>
<tr>
<td>
<strong>Avc/Derrame:</strong>
</td>
<td>
<strong>Infarto:</strong>
</td>
<td>
<strong>Cancer:</strong>
</td>
<td>
<strong>Fibromialgia:</strong>
</td>
<td>
<strong>Internação:</strong>
</td>
<td class="col-1">
<strong>Doença cardíaca:</strong>
</td>
</tr>
<tr>
<td>
{{ $params['outras_doencas_label']['avc_label'] }}
</td>
<td>
{{ $params['outras_doencas_label']['infarto_label'] }}
</td>
<td>
{{ $params['outras_doencas_label']['cancer_label'] }}
</td>
<td class="col-1">
{{ $params['outras_doencas_label']['fibromialgia_label'] }}
</td>
<td>
{{ $params['outras_doencas_label']['internacao_label'] }}
</td>
<td class="col-1">
{{ $params['outras_doencas_label']['doenca_cardiaca_label'] }}
</td>
</tr>
<tr>
<td>
<strong>Doença renal:</strong>
</td>
<td>
<strong>Doença respiratória:</strong>
</td>
<td>
<strong>Tratamento psiquiátrico:</strong>
</td>
<td>
<strong>Plantas medicinais:</strong>
</td>
<td>
<strong>Práticas integrativas:</strong>
</td>
</tr>
<tr>
<td>
{{ $params['outras_doencas_label']['doenca_renal_label'] }}
</td>
<td>
{{ $params['outras_doencas_label']['doenca_respiratoria_label'] }}
</td>
<td>
{{ $params['outras_doencas_label']['tratamento_psicologico_label'] }}
</td>
<td>
{{ $params['outras_doencas_label']['plantas_medicinais_label'] }}
</td>
<td>
{{ $params['outras_doencas_label']['plantas_medicinais_label'] }}
</td>
<td>
{{ $params['outras_doencas_label']['praticas_integrativas_label'] }}
</td>
</tr>
<tr>
<td style="text-align: left" colspan="{{ count($params['selected_columns']) }}">
<strong>ATENÇÃO DOMICILIAR</strong>
</td>
</tr>
<tr>
<td>
<strong>Acamado:</strong>
</td>
<td>
<strong>Domiciliado:</strong>
</td>
</tr>
<tr>
<td>
{{ $params['atencao_domiciliar_label']['acamado_label'] }}
</td>
<td>
{{ $params['atencao_domiciliar_label']['domiciliado_label'] }}
</td>
</tr>
</table>
<table class="table">
<thead>
<tr>
@foreach($params['selected_columns'] as $coluna)
@if ($coluna['key'] !== 'todas')
<th>{{ $coluna['label'] }}</th>
@endif
@endforeach
</tr>
</thead>
<tbody>
@foreach ($relatorio['relatorio'] as $registros)
<tr>
@foreach($params['selected_columns'] as $coluna)
@if ($coluna['key'] !== 'todas')
<td>{{ $registros->{$coluna['key']} ?? '' }}</td>
@endif
@endforeach
</tr>
@endforeach
</tbody>
<br>
<tr>
<td>
<strong>
TOTALIZADORES:
</strong>
</td>
</tr>
<br>
<tr>
<td>
<strong>Total de pacientes:</strong> {{ $relatorio['total_pacientes'] }}<br>
</td>
</tr>
<tr>
<td>
<strong>Total de famílias:</strong> {{ $relatorio['total_familias'] }}<br>
</td>
</tr>
<tr>
<td>
<strong>Total por sexo:</strong>
</td>
@foreach ($relatorio['total_pacientes_por_sexo'] as $sexo => $total)
<td class="me-3">{{ ucfirst($sexo) }}: {{ $total }}</td>
@endforeach
</tr>
<tr>
<td>
<strong>Total por área:</strong>
</td>
@foreach ($relatorio['total_pacientes_por_area'] as $area => $total)
<td class="me-3">{{ ucfirst($area) }}: {{ $total }}</td>
@endforeach
</tr>
<tr>
<td>
<strong>Total por micro área:</strong>
</td>
@foreach ($relatorio['total_pacientes_por_micro_area'] as $micro => $total)
<td class="me-3">{{ ucfirst($micro) }}: {{ $total }}</td>
@endforeach
</tr>
</table>