248 lines
9.0 KiB
PHP
248 lines
9.0 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers\Impressao\Ambulatorio;
|
|
|
|
use App\Http\Controllers\Controller;
|
|
use App\Http\Controllers\Impressao\Ambulatorio\AtendimentoController;
|
|
use App\Http\Controllers\Impressao\Ambulatorio\DeclaracaoComparecimentoController;
|
|
use App\Http\Controllers\Impressao\Ambulatorio\ReceitaMedicaComumController;
|
|
use App\Http\Controllers\Impressao\Ambulatorio\RequisicaoExameCitopatologicoColoUteroController;
|
|
use App\Http\Controllers\Impressao\Ambulatorio\RequisicaoMamografiaController;
|
|
use App\Http\Controllers\Impressao\Ambulatorio\ServicoAnaliseDiagnosticoTerapiaSolicitacaoExameController;
|
|
use App\Utils\Exports\PhpMerge;
|
|
|
|
class ImpressaoGeralController extends Controller
|
|
{
|
|
|
|
public function __invoke($atendimentoId)
|
|
{
|
|
|
|
$pdfPaths = [];
|
|
|
|
collect(request()->all())->each(function ($impressao) use ($atendimentoId, &$pdfPaths) {
|
|
|
|
$impressao = (array) $impressao;
|
|
$identificador = $impressao[0];
|
|
$dados = $impressao[1] ?? [];
|
|
|
|
if ($identificador === 'posConsulta') {
|
|
|
|
$posConsulta = new PosConsultaController();
|
|
$pdfPaths[] = [
|
|
'data' => $posConsulta($atendimentoId),
|
|
'orientation' => 'P'
|
|
];
|
|
}
|
|
|
|
if ($identificador === 'preAtendimento') {
|
|
|
|
$preAtendimento = new PreAtendimentoController();
|
|
$pdfPaths[] = [
|
|
'data' => $preAtendimento($atendimentoId),
|
|
'orientation' => 'P'
|
|
];
|
|
}
|
|
|
|
if ($identificador === 'atendimento') {
|
|
|
|
$atendimento = new AtendimentoController();
|
|
$pdfPaths[] = [
|
|
'data' => $atendimento($atendimentoId),
|
|
'orientation' => 'P'
|
|
];
|
|
}
|
|
|
|
if ($identificador === 'atestado') {
|
|
|
|
$atestado = new AtestadoController();
|
|
$pdfPaths[] = [
|
|
'data' => $atestado($atendimentoId),
|
|
'orientation' => 'P'
|
|
];
|
|
}
|
|
|
|
if ($identificador === 'cartaMedica') {
|
|
|
|
$cartaMedica = new CartaMedicaController();
|
|
$pdfPaths[] = [
|
|
'data' => $cartaMedica($atendimentoId),
|
|
'orientation' => 'P'
|
|
];
|
|
}
|
|
|
|
if ($identificador === 'declaracaoComparecimento') {
|
|
|
|
$declaracaoComparecimento = new DeclaracaoComparecimentoController();
|
|
$pdfPaths[] = [
|
|
'data' => $declaracaoComparecimento($atendimentoId),
|
|
'orientation' => 'P'
|
|
];
|
|
}
|
|
|
|
if ($identificador === 'encaminhamento') {
|
|
|
|
$encaminhamento = new EncaminhamentoController();
|
|
$pdfPaths[] = [
|
|
'data' => $encaminhamento($atendimentoId),
|
|
'orientation' => 'P'
|
|
];
|
|
}
|
|
|
|
if ($identificador === 'encaminhamentoHospitalar') {
|
|
|
|
$encaminhamento = new EncaminhamentoHospitalarController();
|
|
$pdfPaths[] = [
|
|
'data' => $encaminhamento($atendimentoId),
|
|
'orientation' => 'P'
|
|
];
|
|
}
|
|
|
|
if ($identificador === 'orientacao') {
|
|
|
|
$orientacao = new OrientacaoController();
|
|
$pdfPaths[] = [
|
|
'data' => $orientacao($atendimentoId),
|
|
'orientation' => 'P'
|
|
];
|
|
}
|
|
|
|
if ($identificador === 'receitaMedicaComum') {
|
|
|
|
$receitaMedicaComum = new ReceitaMedicaComumController();
|
|
$pdfPaths[] = [
|
|
'data' => $receitaMedicaComum($atendimentoId, true, $dados),
|
|
'orientation' => 'L'
|
|
];
|
|
}
|
|
|
|
if ($identificador === 'receitaMedicaEspecial') {
|
|
|
|
$receitaMedicaEspecial = new ReceitaMedicaEspecialController();
|
|
$pdfPaths[] = [
|
|
'data' => $receitaMedicaEspecial($atendimentoId, true, $dados),
|
|
'orientation' => 'L'
|
|
];
|
|
}
|
|
|
|
if ($identificador === 'receitaMedicaEspecialAmarela') {
|
|
|
|
$receitaMedicaEspecialAmarela = new ReceitaMedicaEspecialAmarelaController();
|
|
$pdfPaths[] = [
|
|
'data' => $receitaMedicaEspecialAmarela($atendimentoId, true, $dados),
|
|
'orientation' => 'L'
|
|
];
|
|
}
|
|
|
|
if ($identificador === 'receitaMedicaEspecialAzul') {
|
|
|
|
$receitaMedicaEspecialAzul = new ReceitaMedicaEspecialAzulController();
|
|
$pdfPaths[] = [
|
|
'data' => $receitaMedicaEspecialAzul($atendimentoId, true, $dados),
|
|
'orientation' => 'L'
|
|
];
|
|
}
|
|
|
|
if ($identificador === 'receitaMedicaNaoPadronizadaComum') {
|
|
|
|
$receitaMedicaNaoPadronizadaComum = new ReceitaMedicaNaoPadronizadaComumController();
|
|
$pdfPaths[] = [
|
|
'data' => $receitaMedicaNaoPadronizadaComum($atendimentoId, true, $dados),
|
|
'orientation' => 'L'
|
|
];
|
|
}
|
|
|
|
if ($identificador === 'receitaMedicaNaoPadronizadaEspecial') {
|
|
|
|
$receitaMedicaNaoPadronizadaEspecial = new ReceitaMedicaNaoPadronizadaEspecialController();
|
|
$pdfPaths[] = [
|
|
'data' => $receitaMedicaNaoPadronizadaEspecial($atendimentoId, true, $dados),
|
|
'orientation' => 'L'
|
|
];
|
|
}
|
|
|
|
if ($identificador === 'servicoAnaliseDiagnosticoTerapiaSolicitacaoExame') {
|
|
|
|
$servicoAnaliseDiagnosticoTerapiaSolicitacaoExame = new ServicoAnaliseDiagnosticoTerapiaSolicitacaoExameController();
|
|
$pdfPaths[] = [
|
|
'data' => $servicoAnaliseDiagnosticoTerapiaSolicitacaoExame($atendimentoId, $dados),
|
|
'orientation' => 'P'
|
|
];
|
|
}
|
|
|
|
if ($identificador === 'laudoMedicamentos') {
|
|
|
|
$laudoMedicamentos = new LaudoMedicamentosController();
|
|
$pdfPaths[] = [
|
|
'data' => $laudoMedicamentos($atendimentoId, true, $dados),
|
|
'orientation' => 'P'
|
|
];
|
|
}
|
|
|
|
if ($identificador === 'requisicaoExameCitopatologicoColoUtero') {
|
|
|
|
$requisicaoExameCitopatologicoColoUtero = new RequisicaoExameCitopatologicoColoUteroController();
|
|
$pdfPaths[] = [
|
|
'data' => $requisicaoExameCitopatologicoColoUtero($atendimentoId),
|
|
'orientation' => 'P'
|
|
];
|
|
}
|
|
|
|
if ($identificador === 'requisicaoExameCitopatologicoMama') {
|
|
|
|
$requisicaoExameCitopatologicoMama = new RequisicaoExameCitopatologicoMamaController();
|
|
$pdfPaths[] = [
|
|
'data' => $requisicaoExameCitopatologicoMama($atendimentoId),
|
|
'orientation' => 'P'
|
|
];
|
|
}
|
|
|
|
if ($identificador === 'requisicaoExameHistopatologicoMamografia') {
|
|
|
|
$requisicaoExameHistopatologicoMamografia = new RequisicaoExameHistopatologicoMamografiaController();
|
|
$pdfPaths[] = [
|
|
'data' => $requisicaoExameHistopatologicoMamografia($atendimentoId),
|
|
'orientation' => 'P'
|
|
];
|
|
}
|
|
|
|
if ($identificador === 'requisicaoMamografia') {
|
|
|
|
$requisicaoMamografia = new RequisicaoMamografiaController();
|
|
$pdfPaths[] = [
|
|
'data' => $requisicaoMamografia($atendimentoId),
|
|
'orientation' => 'P'
|
|
];
|
|
}
|
|
|
|
if ($identificador === 'fichaRequisicaoServicoAuxiliarDiagnoseTerapia') {
|
|
|
|
$fichaRequisicaoServicoAuxiliarDiagnoseTerapia = new FichaRequisicaoServicoAuxiliarDiagnoseTerapiaController();
|
|
$pdfPaths[] = [
|
|
'data' => $fichaRequisicaoServicoAuxiliarDiagnoseTerapia($atendimentoId, $dados),
|
|
'orientation' => 'P'
|
|
];
|
|
}
|
|
|
|
if ($identificador === 'laudoSolicitacaoAutorizacaoProcedimentoAmbulatorial') {
|
|
|
|
$laudoSolicitacaoAutorizacaoProcedimentoAmbulatorial = new LaudoSolicitacaoAutorizacaoProcedimentoAmbulatorialController();
|
|
$pdfPaths[] = [
|
|
'data' => $laudoSolicitacaoAutorizacaoProcedimentoAmbulatorial($atendimentoId, $dados),
|
|
'orientation' => 'P'
|
|
];
|
|
}
|
|
|
|
if ($identificador === 'laudoMChatR') {
|
|
|
|
$laudoMChatR = new LaudoMChatRController();
|
|
$pdfPaths[] = [
|
|
'data' => $laudoMChatR($atendimentoId),
|
|
'orientation' => 'P'
|
|
];
|
|
}
|
|
});
|
|
|
|
return PhpMerge::mergePdfDocuments('Impressões', $pdfPaths);
|
|
}
|
|
}
|