Files
rkm-conectasus-ci-sandbox/api/app/Http/Controllers/Impressao/Farmacia/Livro/TermoFechamentoController.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

45 lines
1.8 KiB
PHP

<?php
namespace App\Http\Controllers\Impressao\Farmacia\Livro;
use App\Enums\Cadastro\Material\LivroRegistro;
use App\Http\Controllers\Controller;
use App\Models\Cadastro\Estabelecimento\CentroCusto;
use App\Models\Farmacia\Livro;
use App\Models\Intranet\Cliente;
use App\Utils\Exports\Pdf1;
class TermoFechamentoController extends Controller
{
private const TITLE = 'TERMO DE FECHAMENTO';
private const TEMPLATE = 'farmacia.livro.termo-fechamento';
public static function getTemplate($livroId)
{
$livro = Livro::findOrFail($livroId);
$municipio = Cliente::where('link', app('config')->get('database.default'))->first()->municipio->nome;
$infraestruturaLogada = CentroCusto::findOrFail(auth()->payload()->get('centro_custo_id'))->infraestrutura;
return [
'isLivroTalidomida' => $livro->livro_registro_id == LivroRegistro::TALIDOMIDA,
'numero' => $livro->numero,
'fechadoEm' => $livro->fechado_em->format('d/m/Y'),
'livroRegistro' => $livro->livroRegistro->nome,
'livroRegistroTipo' => $livro->livroRegistroTipo->nome ?? null,
'quantidadePaginas' => $livro->quantidade_paginas,
'registro' => $livro->registro,
'firma' => "PREFEITURA MUNICIPAL DE {$municipio}",
'farmacia' => $infraestruturaLogada->nome,
'usuarioFarmaceutico' => $livro->usuarioFarmaceutico->cidadao->nome,
'endereco' => $infraestruturaLogada->endereco->completo,
'inscricaoEstadual' => $livro->inscricao_estadual,
'autoridadeSanitaria' => $livro->autoridade_sanitaria,
];
}
public function __invoke($livroId)
{
return Pdf1::generate(self::TITLE, self::TEMPLATE, self::getTemplate($livroId));
}
}