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,23 @@
<?php
namespace App\Http\Controllers\Impressao\AtencaoBasica\Relatorios;
use App\Http\Controllers\Controller;
use App\Services\AtencaoBasica\Relatorios\RelatorioCadastroConsistenteService;
use App\Utils\Exports\Pdf1;
class RelatorioCadastroConsistenteController extends Controller
{
private const TITLE = 'RELATÓRIO DE CADASTROS CONSISTENTES';
private const TEMPLATE = 'atencao-basica.relatorios.relatorio-cadastro-consistente';
public static function getTemplate()
{
return RelatorioCadastroConsistenteService::getPrintExportData();
}
public function __invoke()
{
return Pdf1::generate(self::TITLE, self::TEMPLATE, self::getTemplate());
}
}

View File

@@ -0,0 +1,76 @@
<?php
namespace App\Http\Controllers\Impressao\AtencaoBasica\Relatorios;
use App\Http\Controllers\Controller;
use App\Services\AtencaoBasica\RelatorioEstatisticoAtendimentoService;
use App\Utils\Exports\Pdf1;
use App\Utils\MesesAnoUtil;
class RelatorioEstatisticoAtendimentoController extends Controller
{
private const TITLE = 'RELATÓRIO ESTATÍSTICO DE ATENDIMENTOS';
private const TEMPLATE = 'atencao-basica.relatorios.relatorio-estatistico-atendimento';
public static function getTemplate()
{
$data = RelatorioEstatisticoAtendimentoService::search();
$data['filtros'] = request()->all();
return $data;
}
public function __invoke()
{
$data = self::getTemplate();
$filtros = $data['filtros'];
$registros = $data['registros'];
$mesCompetencia = MesesAnoUtil::getNomeMes($filtros['competencia']['mes']);
$competencia = $mesCompetencia . '/' . $filtros['competencia']['ano'];
$unidade = isset($filtros['unidade']) ? $registros[0]->unidade : 'Todas';
$profissional = isset($filtros['profissional']) ? $registros[0]->profissional : 'Todos';
$localAtendimento = isset($filtros['local_atendimento']) ? $registros[0]->local_atendimento : 'Todos';
$prontuario = isset($filtros['prontuario']) ? $registros[0]->prontuario : 'Todos';
$idadeMinima = (isset($filtros['idade_minima']) ? $filtros['idade_minima'] : 0) . ' anos';
$idadeMaxima = isset($filtros['idade_maxima']) ? $filtros['idade_maxima'] . ' anos' : 'Sem limite';
$idade = "$idadeMinima - $idadeMaxima";
$sexo = isset($filtros['sexo']) ? $registros[0]->sexo : 'Ambos';
$hipertenso = isset($filtros['hipertenso']) ? $registros[0]->hipertenso : 'Todos';
$condicaoAvaliada = isset($filtros['condicao_avaliada']) ? $filtros['condicao_avaliada']['descricao'] : 'Todos';
$doencaTransmissivel = isset($filtros['doenca_transmissivel']) ? $filtros['doenca_transmissivel']['descricao'] : 'Todos';
$rastreamento = isset($filtros['rastreamento']) ? $filtros['rastreamento']['descricao'] : 'Todos';
$ciap2 = isset($filtros['ciap2']) ? $filtros['ciap2']['descricao'] : 'Todos';
$cid = isset($filtros['cid']) ? $filtros['cid']['nome'] : 'Todos';
$gestante = isset($filtros['gestante']) ? $registros[0]->gestante : 'Todos';
$diabetico = isset($filtros['diabetico']) ? $registros[0]->diabetico : 'Todos';
$vacinaEmDia = isset($filtros['vacina']) ? $registros[0]->vacina : 'Todos';
$aleitamentoMaterno = isset($filtros['aleitamento_materno']) ? ($registros[0]->aleitamento_materno ?? '-') : 'Todos';
$colunas = collect(request()->selected_columns);
return Pdf1::generate(self::TITLE, self::TEMPLATE, [
'colunas' => $colunas,
'items' => $registros,
'totalizadores' => $data['totalizadores'],
'competencia' => $competencia,
'unidade' => $unidade,
'profissional' => $profissional,
'localAtendimento' => $localAtendimento,
'prontuario' => $prontuario,
'idade' => $idade,
'sexo' => $sexo,
'hipertenso' => $hipertenso,
'condicaoAvaliada' => $condicaoAvaliada,
'doencaTransmissivel' => $doencaTransmissivel,
'rastreamento' => $rastreamento,
'ciap2' => $ciap2,
'cid' => $cid,
'gestante' => $gestante,
'diabetico' => $diabetico,
'vacinaEmDia' => $vacinaEmDia,
'aleitamentoMaterno' => $aleitamentoMaterno,
'totalizadores' => $data['totalizadores']
], 'landscape');
}
}

View File

@@ -0,0 +1,26 @@
<?php
namespace App\Http\Controllers\Impressao\AtencaoBasica\Relatorios;
use App\Http\Controllers\Controller;
use App\Services\AtencaoBasica\RelatorioEstatisticoPacienteCadastradoService;
use App\Utils\Exports\Pdf1;
class RelatorioEstatisticoPacienteCadastradoController extends Controller
{
private const TITLE = 'RELATÓRIO ESTATÍSTICO DE PACIENTES CADASTRADOS';
private const TEMPLATE = 'atencao-basica.relatorio-estatistico-paciente-cadastrado';
public static function getTemplate()
{
return [
'relatorio' => RelatorioEstatisticoPacienteCadastradoService::index(),
'params' => request()->all(),
];
}
public function __invoke()
{
return Pdf1::generate(self::TITLE, self::TEMPLATE, self::getTemplate(), 'landscape');
}
}