This commit is contained in:
44
api/app/Exports/Ambulatorio/RelatorioConsultaFinalizada.php
Normal file
44
api/app/Exports/Ambulatorio/RelatorioConsultaFinalizada.php
Normal file
@@ -0,0 +1,44 @@
|
||||
<?php
|
||||
|
||||
namespace App\Exports\Ambulatorio;
|
||||
|
||||
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\RelatorioConsultaFinalizadaService;
|
||||
use Illuminate\Contracts\View\View;
|
||||
use Maatwebsite\Excel\Concerns\FromView;
|
||||
|
||||
class RelatorioConsultaFinalizada implements FromView
|
||||
{
|
||||
private const TITLE = 'RELATÓRIO DE CONSULTAS FINALIZADAS';
|
||||
private const VIEW = 'exportacoes.ambulatorio.relatorio-consulta-finalizada';
|
||||
|
||||
public function view(): View
|
||||
{
|
||||
$itens = RelatorioConsultaFinalizadaService::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);
|
||||
|
||||
$data = [
|
||||
'title' => self::TITLE,
|
||||
'periodo' => [
|
||||
'inicio' => request()->periodo['start'],
|
||||
'fim' => request()->periodo['end'],
|
||||
],
|
||||
'unidade' => $unidade->nome_fantasia ?? 'Todas',
|
||||
'infraestrutura' => $infraestrutura->nome ?? 'Todas',
|
||||
'especialidade' => $especialidade->nome ?? 'Todas',
|
||||
'usuario' => $usuario->nome ?? 'Todos',
|
||||
'status' => $status->nome ?? 'Todos',
|
||||
'itens' => $itens,
|
||||
];
|
||||
|
||||
return view(self::VIEW, $data);
|
||||
}
|
||||
}
|
||||
53
api/app/Exports/Ambulatorio/RelatorioEstatisticoConsulta.php
Normal file
53
api/app/Exports/Ambulatorio/RelatorioEstatisticoConsulta.php
Normal file
@@ -0,0 +1,53 @@
|
||||
<?php
|
||||
|
||||
namespace App\Exports\Ambulatorio;
|
||||
|
||||
use App\Enums\Ambulatorio\AgendamentoTipo as AmbulatorioAgendamentoTipo;
|
||||
use App\Models\Ambulatorio\AgendamentoStatus;
|
||||
use App\Models\Ambulatorio\AgendamentoTipo;
|
||||
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\Models\Intranet\Municipio;
|
||||
use App\Services\Ambulatorio\RelatorioEstatisticoConsultaService;
|
||||
use Illuminate\Contracts\View\View;
|
||||
use Maatwebsite\Excel\Concerns\FromView;
|
||||
|
||||
class RelatorioEstatisticoConsulta implements FromView
|
||||
{
|
||||
private const TITLE = 'RELATÓRIO ESTATÍSTICO DE CONSULTA';
|
||||
private const VIEW = 'exportacoes.ambulatorio.relatorio-estatistico-consulta';
|
||||
|
||||
public function view(): View
|
||||
{
|
||||
$itens = RelatorioEstatisticoConsultaService::index();
|
||||
$demandaTipo = request()->demanda_tipo === 'agendada' ? 'AGENDADA' : 'ESPONTÂNEA';
|
||||
$agendamentoTipo = AgendamentoTipo::find(request()->agendamento_tipo_id) ?? AgendamentoTipo::find(AmbulatorioAgendamentoTipo::CONSULTA);
|
||||
$municipio = Municipio::find(request()->municipio_id) ?? 'Todos';
|
||||
$unidade = Unidade::find(request()->unidade_id) ?? 'Todas';
|
||||
$infraestrutura = Infraestrutura::find(request()->infraestrutura_id) ?? 'Todos';
|
||||
$especialidade = Especialidade::find(request()->especialidade_id) ?? 'Todas';
|
||||
$usuario = Usuario::find(request()->usuario_id) ?? 'Todos';
|
||||
$status = request()->demanda_tipo === 'agendada' ? AgendamentoStatus::find(request()->agendamento_status_id) : 'Todos';
|
||||
|
||||
$data = [
|
||||
'title' => self::TITLE,
|
||||
'periodo' => [
|
||||
'inicio' => request()->periodo['start'],
|
||||
'fim' => request()->periodo['end'],
|
||||
],
|
||||
'demanda_tipo' => $demandaTipo,
|
||||
'agendamento_tipo' => $agendamentoTipo->nome ?? 'Todos',
|
||||
'municipio' => $municipio->nome ?? 'Todos',
|
||||
'unidade' => $unidade->nome_fantasia ?? 'Todas',
|
||||
'infraestrutura' => $infraestrutura->nome ?? 'Todas',
|
||||
'especialidade' => $especialidade->nome ?? 'Todas',
|
||||
'usuario' => $usuario->nome ?? 'Todos',
|
||||
'data' => $itens,
|
||||
'status' => $status,
|
||||
];
|
||||
|
||||
return view(self::VIEW, $data);
|
||||
}
|
||||
}
|
||||
17
api/app/Exports/Ambulatorio/RelatorioProcedimento.php
Normal file
17
api/app/Exports/Ambulatorio/RelatorioProcedimento.php
Normal file
@@ -0,0 +1,17 @@
|
||||
<?php
|
||||
|
||||
namespace App\Exports\Ambulatorio;
|
||||
|
||||
use App\Http\Controllers\Impressao\Ambulatorio\RelatorioProcedimentoController;
|
||||
use Illuminate\Contracts\View\View;
|
||||
use Maatwebsite\Excel\Concerns\FromView;
|
||||
|
||||
class RelatorioProcedimento implements FromView
|
||||
{
|
||||
public function view(): View
|
||||
{
|
||||
$data = RelatorioProcedimentoController::getTemplate();
|
||||
|
||||
return view('exportacoes.ambulatorio.relatorio-procedimento', $data);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,48 @@
|
||||
<?php
|
||||
|
||||
namespace App\Exports\Ambulatorio;
|
||||
|
||||
use App\Models\Cadastro\Especialidade;
|
||||
use App\Models\Cadastro\Estabelecimento\Infraestrutura;
|
||||
use App\Models\Cadastro\Estabelecimento\Unidade;
|
||||
use App\Models\Sigtap\Ocupacao;
|
||||
use App\Services\Ambulatorio\RelatorioQuantitativoAtendimentoService;
|
||||
use Illuminate\Contracts\View\View;
|
||||
use Maatwebsite\Excel\Concerns\FromView;
|
||||
|
||||
class RelatorioQuantitativoAtendimento implements FromView
|
||||
{
|
||||
private const TITLE = 'RELATÓRIO QUANTITATIVO DE ATENDIMENTO';
|
||||
private const VIEW = 'exportacoes.ambulatorio.relatorio-quantitativo-atendimento';
|
||||
|
||||
public function view(): View
|
||||
{
|
||||
$resultado = RelatorioQuantitativoAtendimentoService::index();
|
||||
$itens = $resultado['infraestruturas'];
|
||||
|
||||
$unidade = Unidade::find(request()->unidade_id);
|
||||
$infraestrutura = Infraestrutura::find(request()->infraestrutura_id);
|
||||
$ocupacao = Ocupacao::find(request()->ocupacao_id);
|
||||
$especialidade = Especialidade::find(request()->especialidade_id);
|
||||
|
||||
$data = [
|
||||
'title' => self::TITLE,
|
||||
'ano' => request()->periodo['ano'],
|
||||
'mes' => RelatorioQuantitativoAtendimentoService::getMeses()
|
||||
->where('value', request()->periodo['mes'])
|
||||
->first()['text'],
|
||||
'unidade' => $unidade->nome_fantasia ?? 'Todas',
|
||||
'infraestrutura' => $infraestrutura->nome ?? 'Todos',
|
||||
'ocupacao' => $ocupacao ? "{$ocupacao->codigo} - {$ocupacao->nome}" : 'Todas',
|
||||
'especialidade' => $especialidade->nome ?? 'Todas',
|
||||
'colunas' => collect(request()->columns),
|
||||
'colunasTotalizadores' => collect(request()->columns)
|
||||
->reject(fn ($c) => $c['key'] === 'usuario_nome')
|
||||
->values(),
|
||||
'itens' => $itens,
|
||||
'totalizadores' => $resultado['totalizadores'],
|
||||
];
|
||||
|
||||
return view(self::VIEW, $data);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
<?php
|
||||
|
||||
namespace App\Exports\Ambulatorio;
|
||||
|
||||
use App\Services\Ambulatorio\RelatorioQuantitativoProducaoService;
|
||||
use Illuminate\Contracts\View\View;
|
||||
use Maatwebsite\Excel\Concerns\FromView;
|
||||
|
||||
class RelatorioQuantitativoProducao implements FromView
|
||||
{
|
||||
private const TITLE = 'RELATÓRIO QUANTITATIVO DE PRODUÇÃO';
|
||||
private const VIEW = 'exportacoes.ambulatorio.relatorio-quantitativo-producao';
|
||||
|
||||
public function view(): View
|
||||
{
|
||||
$data = RelatorioQuantitativoProducaoService::getPrintExportData();
|
||||
$data['title'] = self::TITLE;
|
||||
|
||||
return view(self::VIEW, $data);
|
||||
}
|
||||
}
|
||||
22
api/app/Exports/Ambulatorio/RelatorioRastreioFerida.php
Normal file
22
api/app/Exports/Ambulatorio/RelatorioRastreioFerida.php
Normal file
@@ -0,0 +1,22 @@
|
||||
<?php
|
||||
|
||||
namespace App\Exports\Ambulatorio;
|
||||
|
||||
use App\Services\Ambulatorio\RelatorioRastreioFeridaService;
|
||||
use Illuminate\Contracts\View\View;
|
||||
use Maatwebsite\Excel\Concerns\FromView;
|
||||
|
||||
class RelatorioRastreioFerida implements FromView
|
||||
{
|
||||
private const TITLE = 'RELATÓRIO RASTREIO DE FERIDA';
|
||||
private const VIEW = 'exportacoes.ambulatorio.relatorio-rastreio-ferida';
|
||||
|
||||
public function view(): View
|
||||
{
|
||||
|
||||
$data = RelatorioRastreioFeridaService::getPrintExportData();
|
||||
$data['title'] = self::TITLE;
|
||||
|
||||
return view(self::VIEW, $data);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user