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,44 @@
<?php
namespace App\Exports\AtencaoBasica;
use App\Models\AtencaoBasica\Parametrizacao\Equipe;
use App\Models\Cadastro\Estabelecimento\Infraestrutura;
use App\Models\Cadastro\Estabelecimento\Unidade;
use App\Models\Cadastro\SujeitoAtencao\Usuario;
use App\Services\AtencaoBasica\RelatorioAcessoCuidadoProgramadoService;
use Illuminate\Contracts\View\View;
use Maatwebsite\Excel\Concerns\FromView;
class RelatorioAcessoCuidadoProgramado implements FromView
{
private const TITLE = 'RELATÓRIO C1 - ACESSO AO CUIDADO PROGRAMADO';
private const VIEW = 'exportacoes.atencao-basica.relatorio-acesso-cuidado-programado';
public function view(): View
{
$unidade = Unidade::find(request()->unidade_id);
$infraestrutura = Infraestrutura::find(request()->infraestrutura_id);
$equipe = Equipe::find(request()->equipe_id);
$usuario = Usuario::find(request()->usuario_id);
$data = RelatorioAcessoCuidadoProgramadoService::index();
$data = [
'title' => self::TITLE,
'inicio' => request()->periodo['start'],
'fim' => request()->periodo['end'],
'unidade_id' => request()->unidade_id,
'unidade' => $unidade->nome_fantasia ?? 'Todas',
'infraestrutura' => $infraestrutura->nome ?? 'Todos',
'equipe_id' => request()->equipe_id,
'equipe' => $equipe->nome ?? 'Todas',
'usuario_id' => request()->usuario_id,
'usuario' => $usuario->nome ?? 'Todos',
'itens' => $data['itens'],
'totalizadores' => $data['totalizadores'],
'tipo_visualizacao' => request()->tipo_visualizacao,
];
return view(self::VIEW, $data);
}
}

View File

@@ -0,0 +1,49 @@
<?php
namespace App\Exports\AtencaoBasica;
use App\Models\AtencaoBasica\AtendimentoIndividual\ModalidadeAtencaoDomiciliar;
use App\Models\AtencaoBasica\Parametrizacao\Equipe;
use App\Models\Cadastro\Estabelecimento\Infraestrutura;
use App\Models\Cadastro\Estabelecimento\Unidade;
use App\Models\Cadastro\SujeitoAtencao\Usuario;
use App\Models\Geral\Turno;
use App\Models\Sigtap\Ocupacao;
use App\Services\AtencaoBasica\RelatorioAtendimentoDomiciliarService;
use Illuminate\Contracts\View\View;
use Maatwebsite\Excel\Concerns\FromView;
class RelatorioAtendimentoDomiciliar implements FromView
{
private const TITLE = 'RELATÓRIO DE ATENDIMENTO DOMICILIAR';
private const VIEW = 'exportacoes.atencao-basica.relatorio-atendimento-domiciliar';
public function view(): View
{
$unidade = Unidade::find(request()->unidade_id);
$infraestrutura = Infraestrutura::find(request()->infraestrutura_id);
$usuario = Usuario::find(request()->usuario_id);
$turno = Turno::find(request()->turno_id);
$ocupacao = Ocupacao::find(request()->ocupacao_id);
$equipe = Equipe::find(request()->equipe_id);
$modalidade = ModalidadeAtencaoDomiciliar::find(request()->modalidade_id);
$itens = RelatorioAtendimentoDomiciliarService::index();
$data = [
'title' => self::TITLE,
'inicio' => request()->periodo['start'],
'fim' => request()->periodo['end'],
'unidade' => $unidade->nome_fantasia ?? 'Todas',
'infraestrutura' => $infraestrutura->nome ?? 'Todos',
'usuario' => $usuario->nome ?? 'Todos',
'turno' => $turno->descricao ?? 'Todos',
'ocupacao' => $ocupacao->nome ?? 'Todos',
'equipe' => $equipe ? ('INE: ' . $equipe->area->numero_ine) : 'Todas',
'modalidade' => $modalidade->descricao ?? 'Todas',
'itens' => $itens,
'colunas' => collect(request()->columns),
];
return view(self::VIEW, $data);
}
}

View File

@@ -0,0 +1,37 @@
<?php
namespace App\Exports\AtencaoBasica;
use App\Services\AtencaoBasica\RelatorioAtividadeColetivaService;
use Illuminate\Contracts\View\View;
use Maatwebsite\Excel\Concerns\FromView;
class RelatorioAtividadeColetiva implements FromView
{
private const TITLE = 'RELATÓRIO DE ATIVIDADE COLETIVA';
private const VIEW = 'exportacoes.atencao-basica.relatorio-atividade-coletiva';
public function view(): View
{
$data = RelatorioAtividadeColetivaService::list();
$itens = $data->itens;
if (request()->sort_by) {
$sortBy = request()->sort_by;
$sortDesc = request()->sort_desc === 'true';
$itens = $sortDesc
? $itens->sortByDesc(fn ($item) => $item->{$sortBy})->values()
: $itens->sortBy(fn ($item) => $item->{$sortBy})->values();
}
return view(self::VIEW, [
'title' => self::TITLE,
'itens' => $itens,
'totalizadores' => $data->totalizadores,
'colunas' => request()->get('colunas', []),
'filtros' => request()->get('filtros', []),
]);
}
}

View File

@@ -0,0 +1,71 @@
<?php
namespace App\Exports\AtencaoBasica;
use App\Enums\Cadastro\SujeitoAtencao\Sexo;
use App\Models\AtencaoBasica\Parametrizacao\Equipe;
use App\Models\Cadastro\Estabelecimento\Infraestrutura;
use App\Models\Cadastro\Estabelecimento\Unidade;
use App\Models\Cadastro\SujeitoAtencao\Paciente;
use App\Services\AtencaoBasica\RelatorioCuidadoDesenvolvimentoInfantilService;
use Illuminate\Contracts\View\View;
use Maatwebsite\Excel\Concerns\FromView;
class RelatorioCuidadoDesenvolvimentoInfantil implements FromView
{
private const TITLE = 'RELATÓRIO DE CUIDADO E DESENVOLVIMENTO INFANTIL';
private const VIEW = 'exportacoes.atencao-basica.relatorio-cuidado-desenvolvimento-infantil';
public function view(): View
{
$resultado = RelatorioCuidadoDesenvolvimentoInfantilService::index(request());
$sortByEquipe = request()->input('sort_by_equipe', 'unidadeNomeFantasia');
$sortDescEquipe = (bool) request()->input('sort_desc_equipe', false);
$sortByBuscaAtiva = request()->input('sort_by_busca_ativa', 'unidadeNomeFantasia');
$sortDescBuscaAtiva = (bool) request()->input('sort_desc_busca_ativa', false);
$resultadoPorEquipe = $sortDescEquipe
? collect($resultado['resultadoPorEquipe'])->sortByDesc($sortByEquipe)->values()->toArray()
: collect($resultado['resultadoPorEquipe'])->sortBy($sortByEquipe)->values()->toArray();
$buscaAtivaDados = $sortDescBuscaAtiva
? collect($resultado['buscaAtiva'])->sortByDesc($sortByBuscaAtiva)->values()->toArray()
: collect($resultado['buscaAtiva'])->sortBy($sortByBuscaAtiva)->values()->toArray();
$unidade = Unidade::find(request()->input('unidade_id'));
$infraestrutura = Infraestrutura::find(request()->input('infraestrutura_id'));
$equipe = Equipe::find(request()->input('equipe_id'));
$pacienteId = request()->input('paciente_id');
$paciente = $pacienteId ? Paciente::with('cidadao')->find($pacienteId) : null;
$sexoMap = [
Sexo::MASCULINO => 'Masculino',
Sexo::FEMININO => 'Feminino',
];
$faixaEtaria = request()->input('faixa_etaria', []);
$data = [
'title' => self::TITLE,
'inicio' => request()->input('periodo.start'),
'fim' => request()->input('periodo.end'),
'quadrimestre' => request()->input('quadrimestre'),
'unidade' => $unidade->nome_fantasia ?? 'Todas',
'infraestrutura' => $infraestrutura->nome ?? 'Todos',
'equipe' => $equipe->nome ?? 'Todas',
'sexo' => $sexoMap[request()->input('sexo_id')] ?? 'Todos',
'paciente' => optional(optional(optional($paciente)->first())->cidadao)->nome ?? 'Todos',
'buscaAtiva' => (bool) request()->input('busca_ativa'),
'faixaEtariaInicial' => $faixaEtaria['inicial'] ?? [],
'faixaEtariaFinal' => $faixaEtaria['final'] ?? [],
'totalizadores' => $resultado['totalizadores'],
'resultadoPorEquipe' => $resultadoPorEquipe,
'buscaAtivaDados' => $buscaAtivaDados,
'boasPraticasSelecionadas' => $resultado['boasPraticasSelecionadas'],
'selectedColsBuscaAtiva' => request()->input('selected_cols_busca_ativa', ['pacienteDataNascimento']),
];
return view(self::VIEW, $data);
}
}

View File

@@ -0,0 +1,21 @@
<?php
namespace App\Exports\AtencaoBasica;
use App\Services\AtencaoBasica\RelatorioCuidadoGestacaoPuerperioService;
use Illuminate\Contracts\View\View;
use Maatwebsite\Excel\Concerns\FromView;
class RelatorioCuidadoGestacaoPuerperio implements FromView
{
private const TITLE = 'RELATÓRIO C3 - CUIDADO NA GESTAÇÃO E PUERPÉRIO';
private const VIEW = 'exportacoes.atencao-basica.relatorio-cuidado-gestacao-puerperio';
public function view(): View
{
$data = RelatorioCuidadoGestacaoPuerperioService::getPrintExportData();
$data['title'] = self::TITLE;
return view(self::VIEW, $data);
}
}

View File

@@ -0,0 +1,21 @@
<?php
namespace App\Exports\AtencaoBasica;
use App\Services\AtencaoBasica\RelatorioCuidadoMulherPrevencaoCancerService;
use Illuminate\Contracts\View\View;
use Maatwebsite\Excel\Concerns\FromView;
class RelatorioCuidadoMulherPrevencaoCancer implements FromView
{
private const TITLE = 'RELATÓRIO C7 - CUIDADO DA MULHER NA PREVENÇÃO DO CÂNCER';
private const VIEW = 'exportacoes.atencao-basica.relatorio-cuidado-mulher-prevencao-cancer';
public function view(): View
{
$data = RelatorioCuidadoMulherPrevencaoCancerService::getPrintExportData();
$data['title'] = self::TITLE;
return view(self::VIEW, $data);
}
}

View File

@@ -0,0 +1,61 @@
<?php
namespace App\Exports\AtencaoBasica;
use App\Models\AtencaoBasica\Parametrizacao\Equipe;
use App\Models\Cadastro\Estabelecimento\Unidade;
use App\Models\Cadastro\SujeitoAtencao\Paciente;
use App\Models\Cadastro\SujeitoAtencao\Sexo;
use App\Services\AtencaoBasica\RelatorioCuidadoPessoaComDiabeteService;
use App\Utils\DataUtil;
use Illuminate\Contracts\View\View;
use Maatwebsite\Excel\Concerns\FromView;
class RelatorioCuidadoPessoaComDiabete implements FromView
{
private const TITLE = 'RELATÓRIO C4 - CUIDADO DA PESSOA COM DIABETES';
private const VIEW = 'exportacoes.atencao-basica.relatorio-cuidado-pessoa-com-diabete';
public function view(): View
{
$unidade = Unidade::find(request()->unidade_id);
$equipe = Equipe::find(request()->equipe_id);
$sexo = Sexo::find(request()->sexo_id);
$paciente = Paciente::find(request()->paciente_id);
$itens = RelatorioCuidadoPessoaComDiabeteService::index();
$data = [
'title' => self::TITLE,
'periodo' => [
'inicio' => request()->periodo['start'],
'fim' => request()->periodo['end'],
],
'ano' => request()->ano ?? null,
'quadrimestre' => self::getQuadrimestre(request()->quadrimestre) ?? null,
'unidade' => $unidade->nome_fantasia ?? 'Todas',
'equipe' => $equipe->nome ?? 'Todas',
'boas_praticas' => request()->boas_praticas ?? [],
'sexo' => $sexo->descricao ?? 'Todos',
'idade_anos_minimo' => request()->idade_anos_minimo ?? '-',
'idade_anos_maximo' => request()->idade_anos_maximo ?? '-',
'paciente' => $paciente->nome ?? 'Todos',
'busca_ativa' => DataUtil::getBooleanValueFromStringBoolean(request()->busca_ativa) ?? false,
'fora_area' => DataUtil::getBooleanValueFromStringBoolean(request()->fora_area) ?? false,
'itens' => $itens,
];
return view(self::VIEW, $data);
}
private static function getQuadrimestre($value)
{
switch ($value) {
case 1:
return '1º Janeiro a Abril';
case 2:
return '2º Maio a Agosto';
case 3:
return '3º Setembro a Dezembro';
}
}
}

View File

@@ -0,0 +1,21 @@
<?php
namespace App\Exports\AtencaoBasica;
use App\Services\AtencaoBasica\RelatorioCuidadoPessoaHipertensaoService;
use Illuminate\Contracts\View\View;
use Maatwebsite\Excel\Concerns\FromView;
class RelatorioCuidadoPessoaHipertensao implements FromView
{
private const TITLE = 'RELATÓRIO C5 - CUIDADO DA PESSOA COM HIPERTENSÃO';
private const VIEW = 'exportacoes.atencao-basica.relatorio-cuidado-pessoa-hipertensao';
public function view(): View
{
$data = RelatorioCuidadoPessoaHipertensaoService::getPrintExportData();
$data['title'] = self::TITLE;
return view(self::VIEW, $data);
}
}

View File

@@ -0,0 +1,21 @@
<?php
namespace App\Exports\AtencaoBasica;
use App\Services\AtencaoBasica\RelatorioCuidadoPessoaIdosaService;
use Illuminate\Contracts\View\View;
use Maatwebsite\Excel\Concerns\FromView;
class RelatorioCuidadoPessoaIdosa implements FromView
{
private const TITLE = 'RELATÓRIO C6 - CUIDADO DA PESSOA IDOSA';
private const VIEW = 'exportacoes.atencao-basica.relatorio-cuidado-pessoa-idosa';
public function view(): View
{
$data = RelatorioCuidadoPessoaIdosaService::getPrintExportData();
$data['title'] = self::TITLE;
return view(self::VIEW, $data);
}
}

View File

@@ -0,0 +1,21 @@
<?php
namespace App\Exports\AtencaoBasica;
use App\Services\AtencaoBasica\RelatorioInconsistencia\RelatorioInconsistenciaService;
use Illuminate\Contracts\View\View;
use Maatwebsite\Excel\Concerns\FromView;
class RelatorioInconsistencia implements FromView
{
private const TITLE = 'RELATÓRIO DE INCONSISTÊNCIA';
private const VIEW = 'exportacoes.atencao-basica.relatorio-inconsistencia';
public function view(): View
{
$data = RelatorioInconsistenciaService::getPrintExportData();
$data['title'] = self::TITLE;
return view(self::VIEW, $data);
}
}

View File

@@ -0,0 +1,21 @@
<?php
namespace App\Exports\AtencaoBasica;
use App\Services\AtencaoBasica\RelatorioIndicadorSadService;
use Illuminate\Contracts\View\View;
use Maatwebsite\Excel\Concerns\FromView;
class RelatorioIndicadorSad implements FromView
{
private const TITLE = 'RELATÓRIO DE INDICADORES SAD';
private const VIEW = 'exportacoes.atencao-basica.relatorio-indicador-sad';
public function view(): View
{
$data = RelatorioIndicadorSadService::getPrintExportData();
$data['title'] = self::TITLE;
return view(self::VIEW, $data);
}
}

View File

@@ -0,0 +1,54 @@
<?php
namespace App\Exports\AtencaoBasica;
use App\Models\AtencaoBasica\Parametrizacao\Area;
use App\Models\AtencaoBasica\Parametrizacao\Microarea;
use App\Models\AtencaoBasica\VisitaDomiciliar\Desfecho;
use App\Models\Cadastro\Estabelecimento\Infraestrutura;
use App\Models\Cadastro\Estabelecimento\Unidade;
use App\Models\Cadastro\Localizacao\Domicilio;
use App\Models\Cadastro\SujeitoAtencao\Paciente;
use App\Models\Cadastro\SujeitoAtencao\Usuario;
use App\Services\AtencaoBasica\RelatorioVisitaDomiciliarService;
use Illuminate\Contracts\View\View;
use Maatwebsite\Excel\Concerns\FromView;
class RelatorioVisitaDomiciliar implements FromView
{
private const TITLE = 'RELATÓRIO DE VISITA DOMICILIAR';
private const VIEW = 'exportacoes.atencao-basica.relatorio-visita-domiciliar';
public function view(): View
{
$unidade = Unidade::find(request()->unidade_id);
$infraestrutura = Infraestrutura::find(request()->infraestrutura_id);
$area = Area::find(request()->area_id);
$midroarea = Microarea::find(request()->microarea_id);
$usuario = Usuario::find(request()->usuario_id);
$paciente = Paciente::find(request()->paciente_id);
$domicilio = Domicilio::find(request()->domicilio_id);
$desfecho = Desfecho::find(request()->desfecho_id);
$itens = RelatorioVisitaDomiciliarService::index();
$data = [
'title' => self::TITLE,
'periodo' => [
'inicio' => request()->periodo['start'],
'fim' => request()->periodo['end'],
],
'unidade' => $unidade->nome_fantasia ?? 'Todas',
'infraestrutura' => $infraestrutura->nome ?? 'Todas',
'area' => $area->descricao ?? 'Todas',
'microarea' => $midroarea->descricao ?? 'Todas',
'usuario' => $usuario->cidadao->nome ?? 'Todos',
'paciente' => $paciente->cidadao->nome ?? '-',
'domicilio' => $domicilio->endereco->completo ?? 'Todos',
'endereco_numero' => request()->endereco_numero ?? '-',
'desfecho' => $desfecho->descricao ?? 'Todos',
'data' => $itens,
];
return view(self::VIEW, $data);
}
}

View File

@@ -0,0 +1,21 @@
<?php
namespace App\Exports\AtencaoBasica\Relatorios;
use App\Services\AtencaoBasica\RelatorioAtendimentoOdontologico\RelatorioAtendimentoOdontologicoService;
use Illuminate\Contracts\View\View;
use Maatwebsite\Excel\Concerns\FromView;
class RelatorioAtendimentoOdontologico implements FromView
{
private const TITLE = 'RELATÓRIO DE ATENDIMENTOS ODONTOLÓGICOS';
private const VIEW = 'exportacoes.atencao-basica.relatorios.relatorio-atendimento-odontologico';
public function view(): View
{
$data = RelatorioAtendimentoOdontologicoService::getPrintExportData();
$data['title'] = self::TITLE;
return view(self::VIEW, $data);
}
}

View File

@@ -0,0 +1,21 @@
<?php
namespace App\Exports\AtencaoBasica\Relatorios;
use App\Services\AtencaoBasica\Relatorios\RelatorioCadastroConsistenteService;
use Illuminate\Contracts\View\View;
use Maatwebsite\Excel\Concerns\FromView;
class RelatorioCadastroConsistente implements FromView
{
private const TITLE = 'RELATÓRIO DE CADASTROS CONSISTENTES';
private const VIEW = 'exportacoes.atencao-basica.relatorios.relatorio-cadastro-consistente';
public function view(): View
{
$data = RelatorioCadastroConsistenteService::getPrintExportData();
$data['title'] = self::TITLE;
return view(self::VIEW, $data);
}
}

View File

@@ -0,0 +1,21 @@
<?php
namespace App\Exports\AtencaoBasica\Relatorios;
use App\Services\AtencaoBasica\Relatorios\RelatorioCadastroConsistenteService;
use Illuminate\Contracts\View\View;
use Maatwebsite\Excel\Concerns\FromView;
class RelatorioCadastroConsistentePaciente implements FromView
{
private const TITLE = 'RELATÓRIO DE CADASTROS CONSISTENTES - LISTA DE PACIENTES';
private const VIEW = 'exportacoes.atencao-basica.relatorios.relatorio-cadastro-consistente-paciente';
public function view(): View
{
$data = RelatorioCadastroConsistenteService::getPrintExportDataPacientes();
$data['title'] = self::TITLE;
return view(self::VIEW, $data);
}
}

View File

@@ -0,0 +1,79 @@
<?php
namespace App\Exports\AtencaoBasica\Relatorios;
use App\Services\AtencaoBasica\RelatorioEstatisticoAtendimentoService;
use App\Utils\MesesAnoUtil;
use Illuminate\Contracts\View\View;
use Maatwebsite\Excel\Concerns\FromView;
class RelatorioEstatisticoAtendimento implements FromView
{
private const TITLE = 'RELATÓRIO ESTATISTICO DE ATENDIMENTO';
private const VIEW = 'exportacoes.atencao-basica.relatorios.relatorio-estatistico-atendimento';
public static function getTemplate()
{
$data = RelatorioEstatisticoAtendimentoService::search();
$data['filtros'] = request()->all();
$data['title'] = self::TITLE;
return $data;
}
public function view(): View
{
$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 view(self::VIEW, [
'title' => $data['title'],
'colunas' => $colunas,
'items' => $registros,
'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'],
]);
}
}

View File

@@ -0,0 +1,20 @@
<?php
namespace App\Exports\AtencaoBasica\Relatorios;
use App\Services\AtencaoBasica\RelatorioEstatisticoPacienteCadastradoService;
use Illuminate\Contracts\View\View;
use Maatwebsite\Excel\Concerns\FromView;
class RelatorioEstatisticoPacienteCadastrado implements FromView
{
private const VIEW = 'exportacoes.atencao-basica.relatorios.relatorio-estatistico-paciente-cadastrado';
public function view(): View
{
return view(self::VIEW, [
'relatorio' => RelatorioEstatisticoPacienteCadastradoService::index(),
'params' => request()->all()
]);
}
}