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,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';
}
}
}