Files
rkm-conectasus-ci-sandbox/api/app/Http/Controllers/Impressao/Ambulatorio/RelatorioEstatisticoPacienteController.php
Antonio Lopes dos Santos afec302c3e
All checks were successful
build-api-image / build (push) Successful in 51s
init commit
2026-08-04 16:52:02 -03:00

47 lines
1.8 KiB
PHP

<?php
namespace App\Http\Controllers\Impressao\Ambulatorio;
use App\Http\Controllers\Controller;
use App\Models\Ambulatorio\AgendamentoStatus;
use App\Models\Cadastro\Especialidade;
use App\Models\Cadastro\Estabelecimento\Infraestrutura;
use App\Models\Cadastro\Estabelecimento\Unidade;
use App\Models\Cadastro\SujeitoAtencao\Usuario;
use App\Services\Ambulatorio\RelatorioEstatisticoPacienteService;
use App\Utils\Exports\Pdf1;
class RelatorioEstatisticoPacienteController extends Controller
{
private const TITLE = 'RELATÓRIO ESTATÍSTICO DE PACIENTES';
private const TEMPLATE = 'ambulatorio.relatorio-estatistico-paciente';
public function __invoke()
{
$itens = RelatorioEstatisticoPacienteService::index();
$unidade = Unidade::find(request()->unidade_id);
$infraestrutura = Infraestrutura::find(request()->infraestrutura_id);
$especialidade = Especialidade::find(request()->especialidade_id);
$usuario = Usuario::find(request()->usuario_id);
$status = AgendamentoStatus::find(request()->status_id);
$usuario = Usuario::find(request()->usuario_id);
$data = [
'periodo' => [
'inicio' => request()->periodo['start'],
'fim' => request()->periodo['end'],
],
'unidade' => $unidade->nome_fantasia ?? 'Todas',
'infraestrutura' => $infraestrutura->nome ?? 'Todos',
'especialidade' => $especialidade->nome ?? 'Todas',
'usuario' => $usuario->nome ?? 'Todos',
'status' => $status->nome ?? 'Todos',
'idade_de' => request()->idade_de ?? '-',
'idade_ate' => request()->idade_ate ?? '-',
'data' => $itens,
];
return Pdf1::generate(self::TITLE, self::TEMPLATE, $data);
}
}